Giter VIP home page Giter VIP logo

next-gh-page-example's Introduction

Next.js gh-pages Hello World example

This repository is a gh-pages example built with Next.js

https://thierryc.github.io/Next-gh-page-example/

Install it and run:

npm install
npm run dev

Deploy it to github

Edit env-config.js and replace 'Next-gh-page-example' by your project name.

Edit next.config.js and replace 'Next-gh-page-example' by your project name.

  1. Create repository.
  2. Link it to your github account.
  3. Publish your master branch.
npm run deploy

Test it:

Replace 'github-user-name' and 'github-project-name'

https://github-user-name.github.io/github-project-name/

Custom domain setting

You can add on to the deploy command to create the CNAME file for you. GitHub detects this file and automatically updates the custom domain setting. Edit the package.json deploy script and replace example.com with your custom domain. (Thank you to @jabacchetta)

rm -rf node_modules/.cache 
&& rimraf out 
&& next build 
&& next export 
&& touch out/.nojekyll 
&& touch out/CNAME
&& echo \"example.com\" >> out/CNAME
&& gh-pages -d out

Example:

https://github.com/thierryc/Next-gh-page-example/

https://thierryc.github.io/Next-gh-page-example/

The idea behind the example

This example shows the most basic idea behind Next. We have 2 pages: pages/index.js and pages/about.js. The former responds to / requests and the latter to /about. Using next/link you can add hyperlinks between them with universal routing capabilities.

next-gh-page-example's People

Contributors

jamesplease avatar mdp avatar thierryc avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

next-gh-page-example's Issues

Can't use this configuration with Jest

I've been trying to use this Nextjs config to create the github page for my library and also I'm using Jest as a test runner but I have found that if I change my .babelrc file to use it as a JavaScript file instead of JSON it seems Jest doesn't recognize the file and can't use Babel for my tests.

The Jest config I need is as simple as this:

{
  "presets": [
    "env",
    "react"
  ]
}

And the config I mage to use with this Nextjs example is this:

const env = require('./env-config')

module.exports = {
  presets: ['env', 'react', 'next/babel'],
  plugins: [['transform-define', env]],
}

Any idea how can I keep the JSON .babelrc and use your example at the same time or is it possible to use a babelrc.js file with Jest? I haven't found a way to do it ๐Ÿ˜”

Add a .nojekyll file in gh-pages branch

I found the example repo got the same issue as I just faced. Github pages is powered by Jekyll, and Jekyll do not serve any folder start with _ , as the result we got 404 when loading any resource in _next folder. Maybe you can resolve the error by adding a .nojekyll file in gh-pages branch.

image

GitHub push error

! [rejected] ec1354b33bdfa6a2571ce271d589dd9080d14a94 -> gh-pages (fetch first)
error: failed to push some refs to 'https://github.com/alexbran8/webservices.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

Did you encounter this error as well? First deploy works fine, than it works only if I delete de branch which is not a sustainable solution...

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.