For those who wish to separate MERN Boilerplate into the client and server, this repo is for the client. This project is meant to be used alongside MERN Server TS.
npm install
Start the client
npm start
npm run build
npm test
npm run lint
npm run lint:fix
npm run test:coverage
npm run test:verbose
npm run test:watch
npm run typescript
Note: This is now a github template project. This makes copying the contents of the project into a new repo very simple.
To setup your own project, you will need to copy the contents of this project into a new repo. You will need to update the content in these files to names of your project and yourself:
- package.json: name, version, description, repository, author, bugs, homepage
- LICENSE: (update to your preferred license)
- client/index.html: description and title
- this README.md
This is also a good time to go through the included libraries to add or remove features that you want.
After this you can commit the files into a new repository and push up to your github. You can now start updating files in your client to begin working on your own project!
- Webpack conveniently bundles your code for you.
- Babel lets you use ES6/7 features.
- CSS pre-processor setup for LESS and SASS lets you keep your styles clean and organized.
- ESLint helps you maintain a high level of code quality.
- Jest gives you a robust testing framework to make sure your code works.
- client
- api
- assets
- images
- icons
- components
- pages
- environment
- hooks
- store
- actions
- reducers
- thunks
- tests
- styles
- utils
- types
- config
- scripts
Typescript - Typed JavaScript
React - View Library
Redux - State Manager
Webpack - Module Bundler
React Notifications Component - Notification System
Material-UI - React Component Library
Bulma - CSS Framework
React Bulma Companion - Bulma Component Library
FontAwesome - Icons
Ramda - Functional Library
date-fns - Date Functions Library
SuperAgent - HTTP Request Library
ESLint - Code Linter
Jest - Testing Framework