CNA (create next.js app)
Create next.js web app based on next.js.
- Getting started
- User guide - How to get start with next.js
- Examples of next.js - Check out small examples of next.js
Quick overview
npx cna new my-app
cd my-app
npm start
Then open http://localhost:8080/ to see your app.
Creating an App
You’ll need to have Node >= 6 on your machine. You can use nvm to easily switch Node versions between different projects.
To create a new app, you may choose one of the following methods:
npx
npx cna new my-app
npm
npm i -g cna
cna new my-app
Structure:
my-app
├── app/
└── assests/
└── components/
└── containers/
└── hoc/
└── middlewares/
└── pages/
└── static/
└── utils/
└── config.js
└── next.config.js
└── routes.js
└── store.js
└── reducer.js
└── saga.js
├── .babelrc
├── .dockerignore
├── .editorconfig
├── .eslintignore
├── .eslintrc
├── .gitignore
├── .prettierrc
├── Dockerfile
├── index.js
├── package.json
├── README.md
├── server.js
Generators
Provide commands to create new: page, container, component and HOC.
Note: You should stay at root directory of project and run commands.
cna new my-app
To create new web application with name my-app
cna page
To create new page. New page is located at pages
directory.
cna container
To create new container. New page is located at containers
directory.
cna component
To create new component. New page is located at components
directory.
cna hoc
To create new HOC. New page is located at hocs
directory.
Commands
npm start
or yarn start
Runs app in development mode.
Open http://localhost:3000 to view it in the browser.
The app will automatically reload when code changes.
npm run build
or yarn run build
Builds app in production mode.
It correctly bundles React in production mode and optimizes the build for the best performance.
npm run production
or yarn run production
Builds and runs app in production mode.
Now your app is ready to deploy.
Demo
Screenshot
iOS full screen
What’s inside?
Technologies
Data source
- Unofficial Hacker News API by cheeaun
Alternatives
If you don’t agree with the choices made in this project, you might want to explore alternatives with different tradeoffs. Some of the more popular and actively maintained ones are: