From ceacd8469d9ae2591312d0d1b67e427919b88230 Mon Sep 17 00:00:00 2001 From: DecDuck Date: Tue, 8 Oct 2024 00:56:15 +1100 Subject: [PATCH] README update --- README.md | 31 ++++++++++++++++++++++++------- 1 file changed, 24 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 3383b2c..ace796d 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,25 @@ -# Drop lol +# Drop +Drop is an open-source game distribution platform, like GameVault or Steam. It's designed to distribute and shared DRM-free game quickly, all while being incredibly flexible, beautiful and fast. -## To-do list - - User authentication (done) - - Sessions (done) - - Game database/API (done, with GiantBomb provider, more to come!) - - Metadata matching and import - - Frontend beginnings \ No newline at end of file +## Philosophy +1. Drop needs to be flexible. If you look at the code base, there are lots of interfaces and abstractions and generic classes. While these do make Drop a bit heavier, they create the much needed flexibility, modularity and future-proofing that Drop needs. +2. Drop needs to be secure. Always have security in mind when designing new features for Drop. +3. Drop needs to be user-friendly. Follow good design principles, and don't overload the user with too much information at once. Balance hiding things between menus and showing it all at once. + +## The Tech Stack +This repo uses the Nuxt 3 + TailwindCSS stack, with the `yarn` package manager. + +For the database, Drop uses Prisma connected to PostgreSQL. + +## Development +To get started with development, you need `yarn` and `docker compose` installed (or know how to set up a PostgreSQL database). + +Steps: +1. Copy the `.env.example` to `.env` and add your GiantBomb metadata key (more metadata providers coming) +2. Open up a terminal and navigate to `dev-tools`, and run `docker compose up` +3. Open up a terminal in the root directory of the project and run `yarn` and then `yarn dev` to start the dev server + +## Contributing +Drop welcomes contributions! Just a couple of notes: +1. We use the Prettier formatter, so please format your code with that +2. Drop uses TailwindCSS `blue-600` and the `zinc` colours for monochrome