Skip to content

sdjamaat/admin

Repository files navigation

SD Jamaat Website Admin Panel

Current tooling:

  • GatsbyJS & React
  • Ant Design UI and Bootstrap
  • Firebase Cloudstore as DB
  • Firebase Cloud Functions

Local Development

Step 1: Clone the repository with Git

git clone https://github.com/sdjamaat/admin.git sdjadmin
cd sdjadmin

Step 2: Download npm modules (NodeJS and Yarninstallation required).

yarn install

Warning: DO NOT use npm to do this - it will screw up the entire project. If you do accidently install using npm instead of yarn, delete your node_modules folder and also delete your package-lock.json file. Then follow the step listed above again.

Step 3: Run locally on live server

npm run dev
# then navigate to localhost:4000

Install new npm modules

Always use yarn to install new npm modules - otherwise, follow the warning message below if you accidently install with npm.

yarn add [some npm module]

Working with Firebase Functions

In this repository, there is a folder called functions which contains code related to Firebase cloud functions.

Step 1: Install the firebase-tools npm package globally

npm install -g firebase-tools

Step 2: Go into the functions directory. You will need to install dependencies here as well, however with npm this time instead of yarn

cd functions
npm install

Step 3: Configure .env file

Create a file and name it .env inside the functions folder You can set the SendGrid API key here

SENDGRID_API_KEY=value

You can find the SENDGRID_API_KEY in the .env.development file in the important-files repository

To deploy new functions:

Helpful link: https://firebase.googleblog.com/2016/07/deploy-to-multiple-environments-with.html

Step 1: You need to first be log into the webmaster@sandiegojamaat.net Google account. You only need to do this once (unless you're switching between other Firebase accounts)

# this will open up a browser window where you'll need to login
firebase login

Step 2: Use this shell command to deploy the functions:

firebase deploy --only functions

Cohere Monitoring

Cohere is a monitoring platform that allows us to see in real-time how people are using the jamaat website and also allows us to control their screen if we need to. It is especially useful for helping out folks out who need assistance in navigating the jamaat website.

Cohere Dashboard: https://app.cohere.so/dashboard

In order to access the dashboard you must login with the webmaster@sandiegojamaat.net Google account. If you need access to this account, ask Ibrahim.

Trello Board

Access the Trello board to suggest new tasks and centralize the collection of support tickets:

SD Jamaat Website Trello Board

It is currently public, should be accessible to all but you might need an account to make changes.

This Trello board is linked to our email webmaster@sandiegojamaat.net

Demo credentials

When you develop the site locally, it will automatically connect to the dev instance of the DB. This means that we also need different login credentials that are linked to the dev firebase instance (instead of prod).

Demo ADMIN

Ask Ibrahim about admin credentials

This gives you access to all admin panel functions. There is another FMB demo account but it didn't make sense to put those creds here. Using this login should give you dev ability to access all tools in the admin panel.

About

Admin Panel for managing the San Diego Jamaat website

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published