RetroRatings is a website used to rate nostalgic things from the 90s and 2000s.
- Rating nostalgic items from 0-5 stars
- Upload new items for anyone to rate
- See all your ratings in a tierlist format
- Sign up and log in with Email, GitHub, or Google
RetroRatings is deployed via Firebase Hosting. It can be accessed at retroratings.web.app.
To deploy your own instance of RetroRatings, clone this repository and replace the Firebase config data located in src/config/firebase.ts
. Running RetroRatings requires Firebase Authentication, Firestore Database, Firebase Cloud Storage, and App Check to be correctly configured:
- Firebase Authentication
- The
Email/Password
,Google
, andGitHub
providers should be enabled.
- The
- Firestore Database
- Two collections,
rating-items
anduser-ratings
should be configured.
- Two collections,
- Firebase Cloud Storage
- A folder named
rating-items-images
should be configured.
- A folder named
- Firebase Hosting
- A GitHub actions deploy workflow is included to allow GitHub actions to deploy directly to Firebase Hosting. A repository secret named
FIREBASE_SERVICE_ACCOUNT_RETRORATINGS
must be set in order to use this.
- A GitHub actions deploy workflow is included to allow GitHub actions to deploy directly to Firebase Hosting. A repository secret named
- App Check
- Configure App Check.
- To test locally, configure debug mode and add a
.env.development.local
file to the root of this repository with the following contents:
VITE_APP_CHECK_DEBUG_KEY="app check debug key here"
For additional documentation on the back-end API, see API.md.
To run RetroRatings' frontend locally:
git clone https://github.com/ethanl21/RetroRatings.git
cd retroratings
npm i
npm run dev
RetroRatings is developed and maintained by the following individuals:
- Allan Cortes @Nalluh
- Raquel Cruz @rlcruz324
- Jose Gonzalez @jose-gonzalez1
- Ethan Lew @ethanl21
Additionally, the following open-source libraries and tools are used:
RetroRatings is distributed under the MIT license.