Skip to content

Latest commit

 

History

History
176 lines (120 loc) · 4.23 KB

commands.md

File metadata and controls

176 lines (120 loc) · 4.23 KB

Command Line Commands

Initialization

npm run setup

Initializes a new project with this boilerplate. Deletes the react-boilerplate git history, installs the dependencies and initializes a new repository.

Note: This command is self-destructive, once you've run it the init script is gone forever. This is for your own safety, so you can't delete your project's history irreversibly by accident.

Development

npm run start

Starts the development server running on http://localhost:3000

Cleaning

npm run clean

Deletes the example app, replacing it with the smallest amount of boilerplate code necessary to start writing your app!

Note: This command is self-destructive, once you've run it you cannot run it again. This is for your own safety, so you can't delete portions of your project irreversibly by accident.

Generators

npm run generate

Allows you to auto-generate boilerplate code for common parts of your application, specifically components, and containers. You can also run npm run generate <part> to skip the first selection. (e.g. npm run generate container)

Server

Development

npm start

Starts the development server and makes your application accessible at localhost:3000. Tunnels that server with ngrok, which means the website accessible anywhere! Changes in the application code will be hot-reloaded.

Production

npm run start:production
  • Runs tests (see npm test)
  • Builds your app (see npm run build)
  • Starts the production server (see npm run start:prod)

The app is built for optimal performance: assets are minified and served gzipped.

Host and Port

To change the host and/or port the app is accessible at, pass the --host and/or --port option to the command with --. E.g. to make the app visible at my-local-hostname:5000, run the following: npm start -- --host my-local-hostname --port 5000

Building

npm run build

Preps your app for deployment (does not run tests). Optimizes and minifies all files, piping them to the build folder.

Upload the contents of build to your web server to see your work live!

Testing

See the testing documentation for detailed information about our testing setup!

Unit testing

npm test

Tests your application with the unit tests specified in the **/tests/*.js files throughout the application.
All the test commands allow an optional -- [string] argument to filter the tests run by Jest. Useful if you need to run a specific test only.

# Run only the Button component tests
npm test -- Button

Watching

npm run test:watch

Watches changes to your application and re-runs tests whenever a file changes.

Remote testing

npm run start:tunnel

Starts the development server and tunnels it with ngrok, making the website available worldwide. Useful for testing on different devices in different locations!

Dependency size test

npm run analyze

This command will generate a stats.json file from your production build, which you can upload to the webpack analyzer or Webpack Visualizer. This analyzer will visualize your dependencies and chunks with detailed statistics about the bundle size.

Linting

npm run lint

Lints your JavaScript and your CSS.

npm run lint:eslint:fix -- .

Lints your code and tries to fix any errors it finds.

Using Docker in development

To use Docker for development, make sure you're within the root directory of the project.

To build the development container, run:

docker-compose up localdev

In order to update dependencies, run:

docker-compose exec localdev yarn add <package>

Note: Because this command attaches to a running container, it must be run while an instance of the development container is up.

In order to receive new dependencies from other contributors, you must clear your mounted Docker volumes, by running:

docker-compose build localdev
docker-compose up localdev