Backend

www.edroplets.org/api

Source code structure

src/             # contains all server-side source code
|- controllers/  # definitions of API endpoints
|- datasources/  # configuration for data sources
|- interceptors/ # middleware for requests to append information
|- lib/          # utilities including seed data to initialize the database
|- models/       # definitions of database models
|- repositories/ # interface to retrieve data from datasources (mainly database)
|- services/     # integrations with external services like file storage (S3) and email provider
storage/         # persistent file upload storage for development Docker only

External APIs

The backend connects to a variety of external APIs to provide additional functionality.

Emails

Currently, we use the SendGrid Email API, however, as of May 27, 2025, they are ending this plan per https://www.twilio.com/en-us/changelog/sendgrid-free-plan. The next move would be to migrate to another email service provider, likely AWS SES.

The email API is primarily used to send email verification links on user signup in order to verify identities, as well as password reset links. However, it may potentially be used to send notifications and other types of updates to the users.

Last updated