A modern tour and travel platform for discovering memorable trips and booking your next adventure with confidence.
NextStop helps travellers explore tour packages, choose departure dates, and complete secure online bookings. Its goal is to make planning a tour feel simple, reliable, and exciting from the first search to payment confirmation.
Developed under the internship guidance of CodeZeal Technology Pvt. Ltd.
| 🧭 Explore | 📅 Plan | 💳 Book | ⚙️ Manage |
|---|---|---|---|
| Browse curated tour packages and details | Choose departure dates and traveller count | Pay securely with Razorpay | Manage packages and bookings through Django Admin |
| View galleries, reviews, FAQs, and contact information | Create accounts and view booking history | Receive booking confirmation emails | Store uploaded images with Cloudinary |
| Technology | Purpose |
|---|---|
| Python & Django | Web application framework |
| MongoDB | Application database |
| Tailwind CSS | Responsive user interface |
| Razorpay | Secure payment processing |
| Cloudinary | Cloud image storage and delivery |
git clone https://github.com/akshaykumar401/Tour_-_Traval.git
cd Tour_-_Travalpython3 -m venv .venv
source .venv/bin/activatepip install -r requirements.txtCreate tour_and_traval/.env by copying tour_and_traval/.env.sample, then add your values:
SECRET_KEY=your-secret-key
DEBUG=True
GEMINI_API_KEY=your-gemini-api-key
DATABASE_URL=your-mongodb-connection-url
RAZORPAY_KEY_ID=your-razorpay-key-id
RAZORPAY_KEY_SECRET=your-razorpay-key-secret
MAIL_SERVICE_URL=your-mail-service-url
CLOUDINARY_CLOUD_NAME=your-cloudinary-cloud-name
CLOUDINARY_API_KEY=your-cloudinary-api-key
CLOUDINARY_API_SECRET=your-cloudinary-api-secretcd tour_and_traval
python manage.py migrate
python manage.py runserverVisit http://127.0.0.1:8000/ in your browser. 🎉
The project uses a separate microservice for sending emails. Open a new terminal and run:
cd Mail_service
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txtCreate Mail_service/.env by copying Mail_service/.env.sample and add your email credentials:
EMAIL_USER=your-email-address
EMAIL_PASS=your-email-app-password
PORT=8080Run the mail service:
python wsgi.pyThe mail service will run on http://127.0.0.1:8080/.
| Route | Description |
|---|---|
/ |
Home page |
/packages/ |
Browse tour packages |
/gallery/ |
Travel gallery |
/booking/ |
Booking and payment flow |
/user/ |
User profile and bookings |
/admin/ |
Administration dashboard |
/help_center/ |
Review and FAQ |
Important
Use these details only with Razorpay test-mode keys. Never use them for live payments.
| Field | Test value |
|---|---|
| Card number | 5267 3181 8797 5449 |
| Expiry date | Any future date |
| CVV | Any number |
| OTP | Any six-digit number |
Made for travellers, one NextStop at a time. 🌄
For educational and personal use.