Triplicity is a full-featured travel and tour booking platform built with Django and PostgreSQL, designed to provide users with seamless holiday discovery, booking, and payment capabilities. Whether you're booking a honeymoon, a trekking adventure, or a group getaway β Triplicity makes it easy.
- π Modern User Authentication β Email-based registration, login, profile, and dashboard
- π¨ Hotel & Package Management β Admin-manageable hotels and holiday packages
- π Category Browsing β Browse by travel categories like honeymoon, trekking, family, etc.
- π Booking System β End-to-end bookings with dynamic pricing and history tracking
- π³ Secure Payments β Integrated with Stripe or Razorpay for live/test payments
- π¬ Email Notifications β Transactional emails for sign-up and booking confirmations
- π₯οΈ Responsive UI β Clean, Bootstrap-based modern frontend
- π οΈ Admin Console β Full CRUD access for packages, users, reviews, and more
- Backend: Python 3.12, Django 4.x
- Database: PostgreSQL
- Frontend: HTML5, CSS3, Bootstrap 5, FontAwesome
- Payments: Stripe
- Email: Gmail SMTP (or any compatible SMTP server)
- Cloud Ready: Deployed on Render.
git clone https://github.com/yourusername/triplicity.git
cd triplicity/python3 -m venv .venv
source .venv/bin/activate
# or use uv if preferred:
# uv venv .venv && source .venv/bin/activatepip install -r requirements.txt
# or
uv pip install -r requirements.txtCreate a .env file in the root directory:
SECRET_KEY=YourSecretKeyHere
DEBUG=True
ALLOWED_HOSTS=127.0.0.1,localhost
DB_NAME=triplicity_db
DB_USER=your_db_user
DB_PASSWORD=your_db_password
DB_HOST=localhost
DB_PORT=5432
EMAIL_HOST=smtp.gmail.com
EMAIL_PORT=587
EMAIL_USE_TLS=True
EMAIL_HOST_USER=your_email@gmail.com
EMAIL_HOST_PASSWORD=your_app_password
DEFAULT_FROM_EMAIL=noreply@triplicity.com
STRIPE_PUBLIC_KEY=pk_test_xxx
STRIPE_SECRET_KEY=sk_test_xxxpython manage.py makemigrations
python manage.py migrate
python manage.py createsuperuserpython manage.py runserverVisit: http://127.0.0.1:8000
Triplicity/
β
βββ triplicity/ # Core project settings and URLs
βββ accounts/ # User registration, login, dashboard
βββ home/ # Homepage and landing views
βββ packages/ # Packages by category
βββ bookings/ # Booking & payment logic
βββ templates/ # All HTML templates
β βββ accounts/
β βββ home/
β βββ packages/
β βββ bookings/
βββ static/ # CSS, JS, images
βββ media/ # User-uploaded content
Visit: http://127.0.0.1:8000/admin/
Login using your superuser credentials.
Manage:
- Users
- Hotels & Packages
- Categories
- Bookings
- Reviews
Stripe integration ensures secure, real-time transactions.
- Update
.envwith your test/live keys. - Bookings only confirm after successful payment.
- Uses Gmail SMTP or any compatible service.
- Emails sent for registration and booking confirmations.
- Configurable in
.env.
Triplicity is ready for cloud deployment:
- One-click PostgreSQL setup
- Auto CI/CD from GitHub
- HTTPS, custom domains
- Set
DEBUG=Falsein production - Configure
.envsecurely
Production Checklist:
DEBUG=False- Add your domain to
ALLOWED_HOSTS - Use cloud database & email credentials
- Enable SSL for DB connections
- Don't commit
.envor secrets
- Always use a strong, unique
SECRET_KEY - Never commit
.envto version control - Set up HTTPS and database SSL in production
- Regularly update dependencies
Got suggestions or issues?
Open a PR or start a discussion!
Feel free to fork and modify as per your needs.
Built with β€οΈ by Anish Bawdhankar MIT License β Free to use and modify