diff --git a/README.md b/README.md index e697314..79e1a30 100644 --- a/README.md +++ b/README.md @@ -84,23 +84,8 @@ To run tests locally: https://support.google.com/mail/answer/185833?hl=en#zippy= -3. Install requirements: - ``` - cd backend - pip install -r requirements.txt - ``` - -3. Run FastAPI to create database: - - - ``` - uvicorn app.main:app --reload - ``` - - - After seeing "test.db" in db/ press CTRL + C to close the server. -4. Run with Docker +3. Run with Docker ``` docker compose up --build @@ -108,9 +93,9 @@ To run tests locally: The app will be available at: - - Frontend: http://localhost:5173 - - Backend API: http://localhost:8000 - - API Docs: http://localhost:8000/docs +- Frontend: http://localhost:5173 +- Backend API: http://localhost:8000 +- API Docs: http://localhost:8000/docs ## Project Structure diff --git a/backend/celerybeat-schedule b/backend/celerybeat-schedule index 6cb3eb8..1e17761 100644 Binary files a/backend/celerybeat-schedule and b/backend/celerybeat-schedule differ diff --git a/docker-compose.yml b/docker-compose.yml index ba09888..a929162 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -56,3 +56,18 @@ services: depends_on: - backend - redis + + frontend: + image: node:20-alpine # My imange + container_name: react_frontend + working_dir: /app + ports: + - "5173:5173" + volumes: + - ./frontend:/app + - /app/node_modules # Docker uses its own packages + env_file: + - .env + command: sh -c "npm install && npm run dev -- --host" # Host makes server avaliable out of container + depends_on: + - backend # Waits for backend to start \ No newline at end of file diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 4cf6534..acb2455 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -59,7 +59,6 @@ "integrity": "sha512-H3mcG6ZDLTlYfaSNi0iOKkigqMFvkTKlGUYlD8GW7nNOYRrevuA46iTypPyv+06V3fEmvvazfntkBU34L0azAw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@babel/code-frame": "^7.28.6", "@babel/generator": "^7.28.6", @@ -1087,7 +1086,6 @@ "resolved": "https://registry.npmjs.org/react/-/react-18.2.0.tgz", "integrity": "sha512-/3IjMdb2L9QbBdWiW5e3P2/npwMBaU9mHCSCUzNln0ZCYbcfTsGbTJrU/kGemdH2IWmB2ioZ+zkxtmq6g09fGQ==", "license": "MIT", - "peer": true, "dependencies": { "loose-envify": "^1.1.0" }, @@ -1844,7 +1842,6 @@ "integrity": "sha512-3MbSL37jEchWZz2p2mjntRZtPt837ij10ApxKfgmXCTuHWagYg7iA5bqPw6C8BMPfwidlvfPI/fxOc42HLhcyg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "csstype": "^3.2.2" } @@ -1886,7 +1883,6 @@ "integrity": "sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==", "dev": true, "license": "MIT", - "peer": true, "bin": { "acorn": "bin/acorn" }, @@ -2004,7 +2000,6 @@ } ], "license": "MIT", - "peer": true, "dependencies": { "baseline-browser-mapping": "^2.9.0", "caniuse-lite": "^1.0.30001759", @@ -2275,7 +2270,6 @@ "integrity": "sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@eslint-community/eslint-utils": "^4.8.0", "@eslint-community/regexpp": "^4.12.1", @@ -3292,7 +3286,6 @@ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", "license": "MIT", - "peer": true, "engines": { "node": ">=12" }, @@ -3376,7 +3369,6 @@ "resolved": "https://registry.npmjs.org/react/-/react-19.2.3.tgz", "integrity": "sha512-Ku/hhYbVjOQnXDZFv2+RibmLFGwFdeeKHFcOTlrt7xplBnya5OGn/hIRDsqDiSUcfORsDC7MPxwork8jBwsIWA==", "license": "MIT", - "peer": true, "engines": { "node": ">=0.10.0" } @@ -3386,7 +3378,6 @@ "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-19.2.3.tgz", "integrity": "sha512-yELu4WmLPw5Mr/lmeEpox5rw3RETacE++JgHqQzd2dg+YbJuat3jH4ingc+WPZhxaoFzdv9y33G+F7Nl5O0GBg==", "license": "MIT", - "peer": true, "dependencies": { "scheduler": "^0.27.0" }, @@ -3704,7 +3695,6 @@ "resolved": "https://registry.npmjs.org/vite/-/vite-7.3.1.tgz", "integrity": "sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==", "license": "MIT", - "peer": true, "dependencies": { "esbuild": "^0.27.0", "fdir": "^6.5.0", @@ -3826,7 +3816,6 @@ "integrity": "sha512-k7Nwx6vuWx1IJ9Bjuf4Zt1PEllcwe7cls3VNzm4CQ1/hgtFUK2bRNG3rvnpPUhFjmqJKAKtjV576KnUkHocg/g==", "dev": true, "license": "MIT", - "peer": true, "funding": { "url": "https://github.com/sponsors/colinhacks" } diff --git a/frontend/src/index.css b/frontend/src/index.css index 0b84d12..004ebf3 100644 --- a/frontend/src/index.css +++ b/frontend/src/index.css @@ -37,6 +37,7 @@ h1 { } button { + color: #ffffff; border-radius: 8px; border: 1px solid transparent; padding: 0.6em 1.2em; @@ -55,7 +56,7 @@ button:focus-visible { outline: 4px auto -webkit-focus-ring-color; } -@media (prefers-color-scheme: light) { +/* @media (prefers-color-scheme: light) { :root { color: #213547; background-color: #ffffff; @@ -66,4 +67,4 @@ button:focus-visible { button { background-color: #f9f9f9; } -} +} */