Skip to content

Latest commit

 

History

History
55 lines (37 loc) · 1.77 KB

README.md

File metadata and controls

55 lines (37 loc) · 1.77 KB

AntAlmanac Backend

This is the dedicated backend for AntAlmanac, which is primarily responsible for managing user data and internal information.

This is NOT for retrieving enrollment data from UCI; PeterPortal API is a separate ICSSC project dedicated to providing us this information.

Development

Non-Privileged

When developing as a non-privileged member, the environment variables won't reflect real credentials to resources such as the database.

The backend should still work, but with limited functionality. Please request credentials from a project lead if you need them.

  1. Ensure that you're in the backend project. i.e. cd apps/backend from the project root.
  2. Change the .env.sample to .env.
  3. Start the server with pnpm start.

Privileged

ICSSC Project Committee Members can be given .env files with real credentials upon request. These can be used to access real resources such as DynamoDB, MapBox, etc.

Remove any .env.* files in the project root, and insert the .env you were given.

Architecture

tRPC Routing (TODO)

We're currently migrating to tRPC and thus deprecating the previous REST based architecture. The desired functionality of the backend is still documented below.

REST Routing (Deprecating)

The backend provides the following functionality.

  • /banners
    Returns the ads displayed above course search results.

  • /news
    Returns a list of news announcements displayed on the top right navbar.

  • /notifications
    Used to register for class notifications.

  • /users
    Saves and returns user schedules.

  • /enrollmentData Returns information about course enrollment from previous terms. (Legacy - this information is provided by PeterPortal API)