Skip to content
/ pwa-template Public template

A lightweight create-react-app alternative for typical React project (React.js, Redux, Redux Sagas, Reselect, Ramda.js and etc.)

License

Notifications You must be signed in to change notification settings

AdeonMaster/pwa-template

Repository files navigation

Description

A lightweight create-react-app alternative for typical React project (React.js, Redux, Redux Sagas, Reselect, Ramda.js and etc.)

Installation

  • Clone repo to your working directory
  • Install required packages with npm i
  • Build app with npm run build, npm run build:dev or npm run build:watch
  • Run app locally with npm run server or npm run server:ssl
  • Install ca.ssl.indexnl.com.crt certificate from server/certificate folder in order to use SSL on your localhost (See the detailed installation guide for Windows users)
  • (Optional) Install ca.ssl.indexnl.com.crt certificate on your Android device in order to access localhost with no errors (See the detailed installation guide for Android device)

ChromeDriver for Linux

wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb sudo apt install ./google-chrome-stable_current_amd64.deb

Phone device debugging

Chrome remote devices port forwarding settings

Port forwarding settings could be found at chrome://inspect/#devices

Port IP Address and port
8080 localhost:8080

SSL certificate installation detailed guide for Windows

  • Navigate to server/certificate folder inside app working directory
  • Double click on ca.ssl.indexnl.com.crt certificate file
  • Press Install Certificate button
  • Select certificate store location and press Next (can be skipped by default)
  • Select Place all certificates in the following store and press Browse button
  • In the opened window select Trusted Root Certification Authorities and press Ok
  • Make sure Trusted Root Certification Authorities appeared in certificate store input field and press Next
  • In the newly opened window press Finish button
  • After successful installation close all browser instances in order new settings to take effect

SSL certificate installation detailed guide for Android device

  • Navigate to server/certificate folder inside app working directory
  • Move ca.ssl.indexnl.com.crt to your Android device
  • Install ca.ssl.indexnl.com.crt file by clicking on it
  • Enter Localhost root ca into the certificate name field and press Ok

List of useful debuging tools

Production Deployment Note

DO NOT UPLOAD SOURCEMAPS (*.js.map) FILES!

Recommendations

  • Keep project dependencies "up to date" (ncu -u)
  • Optimize newly added dependencies with babel-plugin-transform-imports (See examples)

Issues

  • (Highest) Chrome Google Translate isn't compatible with React (facebook/react#11538 (comment))
  • (Low) husky was removed due it's unknown error. Please take a look at it and bring back if possible
  • (Low) WorkboxPlugin doesn't support webpack sourcemap options (GoogleChrome/workbox#2559)

To Do

  • (Hightest) Inline Sentry.io code in order to make it independent of the main app bundle
  • (Low) Add react-window in order to increase dropdown-select list performance

About

A lightweight create-react-app alternative for typical React project (React.js, Redux, Redux Sagas, Reselect, Ramda.js and etc.)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published