{"id":20255122,"url":"https://github.com/hjfitz/pwa-boilerplate","last_synced_at":"2026-05-09T07:03:12.056Z","repository":{"id":75400826,"uuid":"105746794","full_name":"hjfitz/PWA-Boilerplate","owner":"hjfitz","description":"React boilerplate code to get you up and running for a hackathon!","archived":false,"fork":false,"pushed_at":"2018-02-25T16:54:34.000Z","size":148,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-01-14T03:37:45.569Z","etag":null,"topics":["api","babel","boilerplate","client-side-routing","express","hackathon","react"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hjfitz.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-10-04T08:33:12.000Z","updated_at":"2018-05-30T15:28:25.000Z","dependencies_parsed_at":"2023-06-06T09:31:08.146Z","dependency_job_id":null,"html_url":"https://github.com/hjfitz/PWA-Boilerplate","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hjfitz%2FPWA-Boilerplate","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hjfitz%2FPWA-Boilerplate/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hjfitz%2FPWA-Boilerplate/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hjfitz%2FPWA-Boilerplate/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hjfitz","download_url":"https://codeload.github.com/hjfitz/PWA-Boilerplate/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241707393,"owners_count":20006692,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","babel","boilerplate","client-side-routing","express","hackathon","react"],"created_at":"2024-11-14T10:36:32.226Z","updated_at":"2026-05-09T07:03:07.021Z","avatar_url":"https://github.com/hjfitz.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# PWA Boilerplate\n\n[![License: GPL v3](https://img.shields.io/badge/License-GPL%20v3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0) [![David](https://img.shields.io/david/hjfitz/boilerplate-react.svg)]()\n\nAn express.js server with additional tooling set up for react.js. Ideal for starting off a personal project, or a hackathon just right\n\n\n## Setup\nInstall the dependencies. This is done with `yarn` (recommended), or plain ol' `npm install` (also pretty good).\n\nTo streamline the entire setup, a `yarn setup` script is present. It does the following:\n- Installs dependencies\n- Removes the link to my git repo\n- Generates some self-signed SSL certificates for local HTTPS\n\n### React\nReact is set up under `src/client` with `react-router-4` for client-side routing. \n\n- An example router is setup under `src/client/router.jsx`\n- A default layout is setup under `src/client/components/layout.jsx`\n- Pages can be found under `src/client/components/pages`\n- Webpack is setup to resolve files with the following extensions:\n  - `.jsx`\n  - `.js`\n  - `.css`\n  - `.json`\n  - Files with these extensions can be imported as `import { x } from './myFile'` and webpack will worry about the extension.\n\n## Scripts\n\n### Running the server\nThis is an express server, with the HTTP server exposed (under `bin/www`). You can easily swap this out for a HTTPS server and include your certificates. Running the app is simple:\n\n- `npm start`\n\n#### Heroku\n\nIf you're deploying to Heroku - a Procfile is setup for you. Use `heroku local`. The package [`local-env-var`](https://www.npmjs.com/package/local-env-var) is included to load from your `.env`.\n\n### Building\nBecause we're using React with JSX, the JSX has to be built. A polyfill (set up to ie \u003e= 11) is provided.\n\n- `npm build`\n\nIf you want to keep building after a file's saved:\n\n- `npm run watch`\n\n\n**Note:** This boilerplate includes a service worker, setup to cache the bundle and index file. \n\nTo ensure that you can view your changes, in the developer console, go to application, click 'service workers' and select 'bypass for network'.\n\nThe code for the worker is under `public/javascripts/worker.js`. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhjfitz%2Fpwa-boilerplate","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhjfitz%2Fpwa-boilerplate","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhjfitz%2Fpwa-boilerplate/lists"}