2.4 KiB
Development
A guide for adding code to this project.
Installation
Follow the installation guide.
Tests
To run the test suite simply run npm test
(after installing dependencies with npm install
)
A sample unit test could be found here: Nav.test.jsx.
Design
- Style Guide/Design System on Figma
- Latest Design on Figma. Note that the current design on the website has diverged, are parts of this design will not be implemented, but it is still helpful to have around for reference.
- Mobile Designs, Responsive Designs
Technologies Used
MERN stack - MongoDB, Express, React/Redux, and Node.
-
For a reference to the file structure format this project is using, please look at the Mern Starter.
-
This project does not use CSS Modules, styled-components, or other CSS-in-JS libraries, but uses Sass. BEM guidelines and naming conventions are followed.
-
For common and reusable styles, write OOSCSS (Object-Oriented SCSS) with placeholders and mixins. For organizing styles, follow the 7-1 Pattern for Sass.
-
For reference to the JavaScript style guide, see the Airbnb Style Guide, React ESLint Plugin.
-
The ESLint configuration is based on a few popular React/Redux boilerplates. Open to suggestions on this. If in development, you're getting annoyed with ESLint, you can temporarily remove the
eslint-loader
it fromwebpack/config.dev.js
in the JavaScript loader, or disable any line from eslint by commenting at the end of the line// eslint-disable-line
. -
Jest for unit tests and snapshot testing along with Enzyme for testing React.