Fighting for democracy during lockdown.
Something bad is happening in Israel, and we cannot afford to stand still. We've got to React.
- A solid knowledge of (and a desire to) React is recommended before dwelling into the code.
- Firebase is here to keep our the data and host our assets.
- We color our protest signs with
styled-components
. - Map is generated with Leaflet using
react-leaflet
.
- Fork the repository.
- Install dependencies using
yarn install
- Go to the firebase console and create a new project. Call it whatever you want.
- Add a new web app from the dashboard, by clicking the </> icon.
- Give it whatever name you want. No need for hosting.
- Set up the enviorment to work with your project:
Inside the project directory,cp .env .env.local
and fill theREACT_APP_FIREBASE_*
variables with the firebase configuration being shown. - Go back to firebase dashboard and select Cloud Firestore from the sidebar. Click Create Database, start in test mode, and press enable.
We are using Google's Places Autocomplete & Geolocation APIs on the PlacesAutocomplete
component. You need to get a Maps API Key for them to work.
After getting one, add it to REACT_APP_GOOGLE_MAPS_API_KEY
inside .env.local
file.
Note: Please help us find an alternative API provider for those services.
Adding protests for development is be a bit cumbersome currently. We'll improve the flow as we go.
- First, remove all things related to Recaptcha. It's in the API file and in the
ProtestForm
component (in the form component search for all references torecaptcha
and make sure they don't get along in the flow). - Change
pending_protests
collection toprotests
in the createProtest function. - Add a protest from
/add-admin
๐ค
Got an installation issue, want to bring up your ideas or just up for a chat? Join our discord channel.