Ollivanders Store is a wizard-themed e-commerce website where fans of the Harry Potter series can explore and purchase a variety of magical wizard wands.With an intuitive and user-friendly design powered by React and TypeScript for the frontend, complemented by a spellbinding FastAPI backend, Ollivanders Store guarantees a bewitching experience.
The project follows a standard structure for a Python web application with a FastAPI backend and a React frontend:
Ollivanders_Store/
|-- backend/
| |-- app/
| |-- __init__.py
| |-- main.py
| |-- models.py
| |-- routes/
| |-- schemas/
| |-- database.py
| |-- tests/
|-- frontend/
| |-- public/
| |-- src/
| |-- components/
| |-- pages/
| |-- App.tsx
| |-- index.tsx
|-- .gitignore
|-- README.md
|-- requirements.txt
- Navigate to the
backend
directory.
cd backend
- Create a virtual environment and activate it.
python -m venv venv
source venv/bin/activate # On Windows, use "venv\Scripts\activate"
- Install the required Python packages.
pip install -r requirements.txt
- Run the FastAPI development server.
uvicorn app.main:app --reload
- To run the test cases.
pytest
The backend should now be running on http://localhost:8000
.
- Navigate to the
frontend
directory.
cd frontend
- Install the required Node.js packages.
npm install
- Start the React development server.
npm run dev
The frontend should now be accessible on http://localhost:5173
.
Visit http://localhost:5173
in your web browser to access the Ollivanders Store and explore the magical wizard wands.