icssc / anteater-api

API that provides easy access to public data from UC Irvine. Developed for Anteaters, by Anteaters.
https://anteaterapi.com/reference
GNU Affero General Public License v3.0
3 stars 0 forks source link

feat: fuzzy SaaS #12

Closed ecxyzzy closed 3 weeks ago

ecxyzzy commented 3 weeks ago

Description

Implement an access-controlled fuzzy search endpoint built on Postgres full text search. To that end, also implemented the logic necessary to support access-controlled endpoints, and refactored the Courses/Instructors services to allow fetching objects that are the same shape as what the API returns, but based on raw SQL filters.

The current department aliases are as follows:

Related Issue

Closes #11.

How Has This Been Tested?

Tested locally since we don't have a CI pipeline yet.

Here's how to get setup locally:

Types of changes

Checklist:

andrew-wang0 commented 3 weeks ago

Fuzzy search looks great, awesome work! 👌 Though (not sure if this omission is intentional) but there may need to be more logic to add the same access control to the GraphQL route as well.