Return when things were said in your favorite media!
Defined as an OpenAPI, for easy documentation via Swagger UI and usage with various tools.
Link to project: https://r2-quotes.herokuapp.com
{
"quotes": [{
"timeStamp": 694.11,
"text": "Sometimes I'll start a sentence and I don't even know where it's going.",
"media": {
"title": "The Office",
"season": 5,
"episode": "11"
}
}],
"counts": {
"total": 1,
"page": 1
}
}
Tech used: HTML, CSS, JavaScript, TypeScript, Express, Node.js, OpenAPI, EJS, Mocha, C8, MongoDB, Playwright
Powered by captions of your favorite TV Shows & Movies, uploaded into the database in an easily searchable manner, exposed both as a basic EJS frontend allowing for the searching of media quotes by query, title, and media fields.
Exposed as an OpenAPI via express-openapi
with a Swagger UI via swagger-ui-express
, allowing for easy usage and experimentation.
With a near 100% test coverage provided by mocha
, c8
, and frontend coverage via playwright
.
Combining GitHub Actions with my tests and Heroku, the API is guaranteed to always be stable and working at all times.
The API can additionally be exposed via GraphQL to be accessible to more developers, in addition there are a few MongoDB aggregation pipelines that can be rewritten more efficiently, but with the amount of current data the performance improvement would be negligible.