Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tahnik/react-expressjs
Simple and compact boilerplate for ReactJS project with expressJS
https://github.com/tahnik/react-expressjs
babel boilerplate react react-router-v4 redux webpack
Last synced: 10 days ago
JSON representation
Simple and compact boilerplate for ReactJS project with expressJS
- Host: GitHub
- URL: https://github.com/tahnik/react-expressjs
- Owner: tahnik
- License: mit
- Created: 2016-07-12T19:44:52.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2023-03-01T10:02:28.000Z (over 1 year ago)
- Last Synced: 2024-10-16T19:39:41.933Z (20 days ago)
- Topics: babel, boilerplate, react, react-router-v4, redux, webpack
- Language: JavaScript
- Homepage:
- Size: 2.69 MB
- Stars: 213
- Watchers: 14
- Forks: 73
- Open Issues: 16
-
Metadata Files:
- Readme: README.MD
- License: LICENSE
Awesome Lists containing this project
README
# Behold the ReactJS + ExpressJS Boilerplate
I wrote an [article] about this repo which explains the structure.
This is a boilerplate to use ReactJS, ExpressJS, Redux and React Router v4 in a project.
- [ReactJS] - The state based framework for your Views
- [React Router v4] - For routing to different paths
- [Redux] - Redux manages your state
- [Babel] - The compiler to compile your JS files with es6, es7, JSX syntax to regular javascript
- [Webpack] - The module binder which takes all your JS files from different directories and compiles them into a single app.bundle.js (you can change the filename of course) so you can include it in a HTML page
- [ExpressJS] - The node framework to serve your views to the world when they hit the server at example.com or example.com/awesome.html# Installation
Node Version: v9.0.0^
Just clone this repo or download the zip file. `cd` into the directory and run
npm install
## Developing App with [Hot Reload]
To develop your own react application, you can take advantage of React Hot Loader and Webpack Dev Server. To develop app with hot reload:npm run dev
Now you can access your react application on http://localhost:8080
## Production build and Deploy
To make a production build of your project, run the following commandsnpm run build
This will create create two files: `index.js` in `server/public/js` and `server.js` in `server/bin`.`server.js` will be used for serving the application on port 3000 and `index.js` is the actual react app itself.
Finally run
npm start
The you will be able to access this app from http://localhost:3000.
To get a distributable tarball of your application, run this command
npm pack
Remember that you have to run `npm run build` before doing this. This will create a tar.gz file in your root folder. The contents in this file is deployable. All you need to do is copy the contents inside package folder inside this tar.gz file to your server and run the app with something like [pm2].
[ReactJS]:
[Babel]:
[Webpack]:
[React Router v4]:
[Hot Reload]:
[ExpressJS]:
[Redux]:
[pm2]:
[article]: