covidheroes.net
covidheroes.net copied to clipboard
✋ COVID-19 communication platform to support medical workers.
Note: COVID Heroes is no longer actively maintained or used.
COVID Heroes
Website | Code of Conduct | Contributing | License
COVID Heroes is a NodeJS webapp which provides centralized communication between medical institutions and PPE volunteers.
What can I do?
Most things you can do in email can be done in COVID Heroes
- Creating card-based offers/requests for resources
- User account management and tracking
- Reputation system for active contributors
- Location mapping and distance calculation
- Simple NodeJS backend with MongoDB adapters
- Email integration
Give it a spin: https://covidheroes.net/
Getting Started
Installation
git clone https://github.com/camasscioly/covidheroes.net.git
cd covidheroes.net
Note: You will need at least NodeJS 10.18.1+, VSCode 1.44+, Yarn 1.17.3+ and MongoDB 3+. You will also need to configure .env variables before launching.
Configuring Environment Variables
# Environment Config
# Store your secrets and config variables in here
# reference these in code with process.env.ENV_VARIABLE
PORT=3000
DB_URL=mongodb://mongodb.example.com:27017
SENDGRID_API_KEY=example-sendgrid-token
DISCORD_WEBHOOK_URL=https://discordapp.com/api/webhooks/ID/TOKEN
HYVOR_PRIVATE_KEY=example-hyvor-private-key
# Note: MongoDB URI must be in the mongodb:// protocol, the mongodb+srv:// is not supported
Copy and rename .env.example
to .env
to be able to interact with process.env
in NodeJS.
Usage
COVID Heroes follows the latest maintenance LTS version of Node.
yarn
yarn dev
# production: yarn start
Visit localhost:3000 to view the application.
FAQ
Q: Who maintains COVID Heroes?
The Camas Science Olympiad team maintains the webapp, but we'd love your help and expertise on the project! See Contributing.
Q: What are COVID Heroes’ goals and principles?
The goals of the project are:
- Provide a slim, canonical webapp that centralizes communication between medical institutions and PPE volunteers.
- Provide a reference implementation for similar webapps for crises in the future.
- Grow the adoption of web platforms for managing requests/offers.
- Help support the PPE and maker volunteer movement.
- Learn more about creating a CRUD webapp and learn about creating a service.
We adapt Chromium principles to help us drive product decisions:
- Speed: COVID Heroes core has almost zero performance overhead and is compressed with deflate and gzip.
- Security: COVID Heroes is secured with 128-bit SSL and passwords are hashed with bcrypt with 10 rounds of salt.
- Stability: COVID Heroes should not be flaky and should not leak memory.
- Simplicity: COVID Heroes provides a high-level interface that’s easy to use, understand, and debug.
Q: I'm recieving ReferenceError: yarn is not defined
whenever I try to use Yarn
You need to install yarn first. Go to their website and follow instructions.
Q: What's the difference between yarn start
and yarn dev
?
Our project has two environments: Production and Development. The production environment is used when it is actually hosted, an example is https://covidheroes.net. The development environment shows more "developer" metrics, helping you to debug, but is not suitible for production.
yarn start # production
yarn dev # development
Q: I'm recieving Error: Cannot find module 'example'
whenever I start the project
You need to install the packages with the command below.
yarn
Q: I'm recieving ERR_SOCKET_BAD_PORT
whenever I start the project
You need to configure your environment variables. First, copy and rename .env.example
to .env
.
PORT=3000
Q: I'm recieving Error: Only absolute URLs are supported
whenever I start the project
You need to configure your environment variables. First, copy and .env.example
to .env
.
DISCORD_WEBHOOK_URL=https://discordapp.com/api/webhooks/ID/TOKEN
Q: Database queries arent working.
You need to configure your environment variables. First, copy and .env.example
to .env
.
DB_URL=mongodb://mongodb.example.com:27017
Useful Links
- The website hosts the production version of the website.
- Our Github Repository contains the most updated code.
- Our GoFundMe Page is where you can donate and support us.
- Our Instagram Page contains the latest announcements.
- Our Producthunt Page shows the latest feedback from indie makers.
Contribution
Please make sure to read the Contributing Guide before making a pull request.
Thank you to all the people who already contributed to COVID Heroes!
Sponsors
Made by Camas Science Olympiad
Camas High School SciOly is like an academic track meet, consisting of 23 events for both middle and high school divisions. While exploring disciplines such as chemistry, biology, earth science, physics, and engineering, students are able to develop valuable teamwork and study skills in a fun and challenging environment.
Find out more about Camas Scioly.
\_ヘ(◕‿◕ ✰)