Duration: 2 Week Sprint
We’ve designed a mobile application - the Donation Day Hub - that allows this communication to happen in one centralized place, instead of through multiple text messages amongst the group of volunteers, as well as a massive influx of photos airdropped to Andrea.
To see the fully function site, please visit: DONATION DAY HUB
.env File
- Create a file named .env - this file is important because it will be used to store all of the keys/passwords you need for this application.
AWS S3
- Create an account at AWS S3 by clicking the link here.
- After creating the account, follow the directions in this article to create an AWSAccessKeyId and AWSSecretKey.
- Go to the .env file in the apllication and add the keys to their respective name like below.
accessKeyId=AWSAccessKeyID
secretAccessKey=AWSSecretKey
- In your AWS dashboard, click on your Services at the top left of the screen and select S3 under the Storage section.
- Here you'll need to create a bucket where you'll store the media. Keep a note of the name of the bucket and the region you selected (ex: ca-central-1). That information will also need to be added into the .env file as below:
BUCKET_REGION=
BUCKET_NAME=
Database
- Create a database named
intersection
, - The queries in the
database.sql
file are set up to create all the necessary tables and populate the needed data to allow the application to run correctly. The project is built on Postgres, so you will need to make sure to have that installed. We recommend using Postico to run those queries as that was used to create the queries, - Open up your editor of choice and run an
npm install
- Run
npm run server
in your terminal - Run
npm run client
in your terminal - The
npm run client
command will open up a new browser tab for you!
- Log in as an administrator
- You'll be brought to the admin page where you can filter through Volunteers, Clients, and Teams.
- Volunteers Page
- You can search for a volunteer by their name. This view lets you see the date that they joined, their name, and their team status. Team status tells the admin if a volunteer is on a team and if they're a captain or not.
- Clicking on a volunteer will give the admin the ability to see contact information. You can also view the current team the admin is in.
- Clients Page
- You can search for a client by their name. This view lets you see when they were added into the system.
- Clicking on the client, you can see their bio, shopping list, media button, and any comments the team has left.
- Clicking on the camera icon, you can see the media gallery for that specific client.
- Teams Page
- You can search a team by captain name. This view lets you see the date of the Donation Day, name of the team, and the status of the team.
- Teams can be closed if the donation day is over, this allows the volunteers to be able to join new teams in the future.
- Clicking on a specific team will give you information on the members of the team along with clients served.
- You can click on specific clients to view more information about them.
- Upon logging in, a volunteer will see their information and have the ability to edit it. On the top left, the volunteer can navigate to their team.
- The volunteer can see their team name, client list, and the ability to add a new client.
- After a client is added, clicking on the client in the list will take you to that client's information page and shopping list.
- Here, items can be added for the shopping team as well as media.
- HTML
- CSS
- Javascript
- React.js
- Node.js
- Express
- PostgreSQL
- Moment.js
- Material-UI
- AWS S3
- Redux
- Passport.js
Thanks to Prime Digital Academy who equipped and helped us to make this application a reality.
Thank you Andrea Bert from The Intersection for giving our team the opportunity to work with such a wonderful and empowering organization.
A big thank you for the wonderful team that worked on the application together:
If you have suggestions or issues, please click the names above and send any of the team members a message