- Name: Yuto Kvist
- Email: Yuto.kvist@abo.fi
The following requirements from the project specification have been implemented and are available for evaluation:
-
- Project folder
-
- Backend
-
- Frontend
-
- Automatic DB population
-
- Browse
-
- Create account
-
- Login
-
- Add item
-
- Add to cart
-
- Remove from cart
-
- Pay
-
- Routing
-
- Edit account
-
- Display inventory
-
- Edit item
- Clean look and performance
❌ Not implemented:
- Search functionality
- A quantity field was introduced for items.
- This makes the purchase logic slightly more complex; buying all available quantities at once may not always work as expected.
- Apart from the quantity-related behavior, all other functionalities work according to the project requirements.
- Most navigation can be done through the navigation bar, from which all existing pages in the project are accessible.
- The implementation should be sufficient for full points (5/5), unless some requirements are interpreted or implemented incorrectly.
- Framework: Django
- Database: SQLite
- Provides:
- JSON API for the shop
- Landing page
- Automatic database population is triggered from the NavBar
cd backend
python -m venv venv
source venv/bin/activate
pip install -r requirements.txt
python manage.py migrate
python manage.py runserver- Open a second terminal and navigate to the frontend folder
npm install
npm start
npm run dev.env files for both the backend and frontend to run correctly. These files are not included in the repository and must be created manually.
Create a .env file in the backend folder with the following variable:
DJANGO_SECRET_KEY=your_secret_key_hereCreate a .env file in the frontend folder with the following variable:
VITE_API_URL=http://127.0.0.1:8000-
This should point to the Django backend API.
-
Adjust the URL if the backend runs on a different host or port.