A basic example of using react-website
.
npm install
npm start
Then go to http://localhost:1234.
See the dist
directory for the output files. The output files can be uploaded to the cloud (e.g. Amazon S3) and hosted for a very low price as a "static" website by mapping any URL to index.html
.
This sample project illustrates the use of react-website
library for building a React/Redux application.
Parceljs is used for bundling the app because it's much simpler for beginners than Webpack.
The "Basic" page shows the "conventional" (old-fashioned) way of writing React/Redux applications.
The "Advanced" page shows the more convenient way of writing React/Redux applications.
The counters on both pages operate identically the only difference being that the counter on the "Basic" page is implemented the "conventional" (old-fashioned) way and the counter on the "Advanced" page is implemented using the "redux module" utility from react-website
library.
react-website
library packs a lot of utilities not showcased here for sake of simplicity, such as @preload()
ing pages, making http
requests, setting <meta/>
tags, programmatic navigation, and more...
npm start
freezes on Windows on Building ...
when you try to run it. If you're persistent with Ctrl + C
and running it again and again then it can suddenly start working after, say, 50 tries. It still can break and stop watching, etc. A workaround for this freezing bug is to open ./node_modules/parcel-bundler/src/WorkerFarm.js
file and add a maxConcurrentCallsPerWorker
option to it:
class WorkerFarm extends Farm {
constructor(options) {
let opts = {
maxConcurrentWorkers: getNumWorkers(),
maxConcurrentCallsPerWorker: 5
};
It might output a warning Cannot statically evaluate fs argument
but it can be ignored.