diff --git a/README.md b/README.md index 5eb8040..cfdc6f9 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,55 @@ -# SHOP API -Simple API (still WIP) +# Swag Shop -## Requires: -1. Redis -Simple redis installation, no further configuration needed +An e-commerence multitenant shop app. -2. MariaDB (or MySQL) -Make sure a proper database is set up with `shop.sql` +## Core idea +This app provides a dashboard for managing individual shop data like products and similar things. Then it's up to the tenant to craft their own frontend and make use of the API. + +## Running +### Backend +1. Dependencies +Straight forward, you need to install dependencies via *[uv](https://docs.astral.sh/uv/)* -## Running: -Gunicorn is the simplest way to run this project -```sh -gunicorn -w 4 -b HOST:PORT main:app ``` +cd backend +uv sync +``` + +2. Fill out `.env` +You can use `.env.example` as a reference + +3. Run it! +``` +fastapi dev backend/app/main.py +``` + +### Frontend +1. Dependencies +Using npm (or your favorite package manager) +``` +cd frontend +npm install +``` + +2. Fill out `.env` +As with backend, there is `.env.example` + +3. Run it! +There is a dev package script +``` +npm run dev +``` +
+ +- For deployment a `docker-compose.yml` is provided + +## Tech Stack +- **PostgreSQL** +- **Backend** - *FastAPI* + *SQLModel* +- **Frontend** - *Vite* + *Typescript* + *ShadcnUI* + *Tanstack Query* + +## Future plans + +- True API integration +- Audit log +- Stripe integration \ No newline at end of file