hapi-socket-react-boilerplate
v1.9.0
Published
Boilerplate app to get you up and running with Hapi, HTTPS, HTTP/2, Web Socket and React/Redux.
Downloads
7
Maintainers
Readme
hapi-socket-react-boilerplate
Boilerplate app to get you up and running with Hapi, HTTP2, Web Socket and React.
Demo can be found here
Project Overview 🤓
I've written a blog article detailing the steps I've gone through to create. Also the good 😇, the bad 👿 and the ugly ☠️.
Get it running locally 🏌️
Assuming you are on Mac OS 🍏 and Node 8.9.3 or higher installed. Not tested on any other OS.
In the terminal run the following: -
git clone [email protected]:blairg/hapi-socket-react-boilerplate.git
cd hapi-socket-react-boilerplate
- Create certificate for HTTPS
npm run createCertificate
. Fill in the questions when asked. Can be fictitious values. npm i
npm run dev
- In your browser go to
https://localhost:3000/index
(add security exception rule for local cert) - 👏
With docker 🐳
Ensure you have created the cert and key as per the previous step.
Assuming you have cloned the repo and installed the packages. Also, that you have Docker and Docker Compose installed too. In the terminal do the following, in the root of the directory you cloned the repo too: -
- Create certificate for HTTPS
npm run createCertificate
. Details are all optional. - Create an
.env
file, this can be blank as the Dockerfile has default values set. docker-compose up
- In your browser go to
https://localhost:3000/index
(add security exception rule for local cert)
Running tests 👩🔬👨🔬
Following options: -
- To just run the unit tests ->
npm run test
- To run tests with coverage (Istanbul) ->
npm run test:coverage
. This will output tocoverage
folder. Locate theindex.html
in here and open in your browser. - To watch tests for changes ->
npm run test:watch
- In VS Code you have 2 debug options avaiable for tests.
Unit Tests
will execute tests.Tests with Coverage
, will run tests with coverage.
Storybook 📚
- In the terminal run ->
npm run storybook
- Build Storybook as a static site ->
npm run storybook:build
Linting 🔍
- In the terminal run ESLint with ->
npm run lint
Prettier 🙏
- In the terminal run Prettier with ->
npm run pretty
Issues 🤒
If you find anything wrong with this repo post them here please.
Contributing
Refer to CONTRIBUTING.md
in the root of this repo.
Todo ✍️
I've left myself some work to do. Look in todo.md
.