Boilerplate and tooling for authoring modern web applications with Hyperapp and Node.js.
- Best practices — The project is based on HTML5 Boilerplate which is the product of years of iterative development and community knowledge.
- No build configuration — Hassle-free updates for the whole toolchain with a single dependency.
- Isomorphic — Write code once and run it on both client and server-side.
This project was bootstrapped with Hyperapp Starter (support).
- MacOS, Windows, or Linux
- Node.js v8.9.0 or newer
- Text editor or IDE (e.g. VS Code + EditorConfig plugin)
To create a new app, run a single command:
npm init hyperapp-starter
It will generate the initial project structure inside the current directory and install the dependencies.
Also you can directly specify the project directory if you want to:
npm init hyperapp-starter <project-directory>
.
├── build/ # Compiled output
├── coverage/ # Test coverage reports
├── node_modules/ # 3rd-party libraries and utilities
├── public/ # Static files such as favicon.ico etc.
├── src/ # Application source code
│ ├── app.js # Universal (Isomorphic) application entry point
│ ├── index.js # Client-side rendering, e.g. app(state, actions, view, container)
│ └── server.js # Server-side rendering, e.g. renderToString(view, state, actions)
├── .env # Environment variables (optional)
├── package.json # The list of project dependencies + NPM scripts
└── README.md # Getting started guide
In the project directory, you can run:
Runs the app in the development mode with "live reload".
Uses src/index.js
and src/server.js
files as entry points
for client-side and server-side apps.
Launches the test runner. It will look for test files with .test.js
or .spec.js
suffix.
Also you can use any cli options
which Jest supports.
Finds problematic patterns in code using ESLint
and stylelint.
Using --fix
option you can automatically fix some of them
and also format files using Prettier.
Builds the app for production to the build folder.
It correctly bundles, optimizes and minifys the build for the best performance
and the filenames include the hashes for a long term caching.
Using --render
option you can generate html files for a static site hosting.
See Hyperapp Tools for more.
Hyperapp Starter is MIT licensed. See LICENSE.