This is a taxi app built using Django Rest Framework, PostgreSQL, and Redis. The app allows users to sign up, log in, request trips, and view trip details. There are separate functionalities for riders and drivers.
important info: when clone this repo go to completed tests branch to see the best version of this code so far
- Can sign up.
- Cannot visit the sign-up page when logged in.
- Can log out.
- Show invalid fields on sign-up error.
- Can log in.
- Cannot visit the login page when logged in.
- Cannot see links when logged in.
- Shows an alert on login error.
- Can navigate to sign up from home.
- Can navigate to log in from home.
- Can navigate to home from sign up.
- Can navigate to log in from sign up.
- Can navigate to home from log in.
- Can navigate to sign up from log in.
- Displays current and completed trips.
- Can be visited if the user is a rider.
- Cannot be visited if the user is not a rider.
- Displays messages for no trips.
- Can request a new trip.
- Shows details about a trip.
- Displays current, requested, and completed trips.
- Can be visited if the user is a driver.
- Cannot be visited if the user is not a driver.
- Displays messages for no trips.
- Shows details about a trip.
- Can receive a ride request.
- Can receive trip status updates.
Follow these steps to build and run the Taxi App locally on your machine.
- Docker installed
- docker-compose installed
- pnpm installed (for frontend testing)
git clone <https://github.com/shakori999/taxi-app.git>
cd taxi-app
docker-compose up --build -d
docker-compose exec taxi-app python manage.py makemigrations
docker-compose exec taxi-app python manage.py migrate
cd client
pnpm installe
npx cypress open