PRs welcome; seeking all roles
See our contributing guide for more information.
The Resistance Calendar aims to empower progressive activists by providing a massive central listing of upcoming events. Crowdsourced event submissions are curated by a team of volunteers, while events from allied organizations will be included automatically. Event filters make it easy for people to find events near them. Filtered notifications help people discover new events immediately.
This is a rebuild of the live website currently found here.
- About the Resistance Calendar
- Contributing Guide
- About the stack
- Getting Started
- Setup
- Install
- Test
- Lint
- Run
- Build
- Project hierarchy
- Features
- CSS
- Project License
This repository covers the ReactJS front-end. The API can be found here.
- Fork the repository
- Clone the project:
git clone [email protected]:ResistanceCalendar/resistance-calendar-frontend.git
- Change into the directory:
cd resistance-calendar-frontend
yarn
Note: Can also use npm
instead of yarn
for these commands. Here's an article comparing the two package managers.
yarn run test
yarn run test:watch
Uses Airbnb's eslint rules with some modifications
yarn run lint
yarn run lint:watch
yarn run lint:watch-npm
yarn run dev
This project will run on http://localhost:5050/
yarn run build
- Webpack v2
- Babel to compile ES2016+
Component-level styling uses Sass, SCSS, or CSS with CSS Modules. Global styles are placed in src/style
's subdirectories, and component-level styles are placed in the component's folder.
Note: the CSS Module property camelCase
is enabled, meaning styling classes defined as, say, .test-name
will be referenced inside of a component file as stylesObj.testName
. This allows us to follow CSS naming conventions while avoiding bracket notation in Javascript.