Skip to content
/ airbnb Public

Hotel Booking & Blogging Platform Built with Django, DRF, SQLite, Allauth, Summernote. Features include: User auth with email verification & profiles Hotel listing, search, and booking system Blog with posts, tags, categories & comments Admin dashboard for managing content Clean UI optimized for booking & blogging

Notifications You must be signed in to change notification settings

mos8afa/airbnb

Repository files navigation

🏨 Airbnb Clone

Python Django SQLite

A web application for hotel booking and blogging, built with Python & Django.
Users can sign up, confirm email, manage profile, search hotels, book rooms, and explore blogs. Admins can manage all content via the Django dashboard.


📋 Table of Contents


✨ Features

  • 🔐 User Authentication: Signup with email confirmation, user profiles with picture and info.
  • 🔎 Hotel Search: Search by name, location, or category.
  • 🏨 Hotel Listings: Users can add hotels; each hotel has details, photos, and availability.
  • 📅 Booking System: Select date & number of guests to book rooms.
  • 📝 Blog Section: Add, search, view posts by tags/categories/keywords, and comment with Discuss.
  • 🛠️ Admin Dashboard: Manage hotels, blog posts, FAQs, contacts, and site content.
  • 📞 Contact & About Pages: View FAQs, contact the site, and learn about the platform.

🛠️ Technologies

  • Backend: Python, Django
  • Database: SQLite
  • Authentication: Django Allauth
  • API: Django REST Framework
  • Editor: Summernote
  • Discussion System: Discuss
  • Others: Pillow, Whitenoise, Virtualenv, Gunicorn

⚙️ Installation

# 1. Clone the repository
git clone https://github.com/mos8afa/airbnb.git
cd airbnb

# 2. Create & activate virtual environment
python -m venv venv
source venv/bin/activate  # Linux/Mac
# venv\Scripts\activate   # Windows

# 3. Install dependencies
pip install -r requirements.txt

# 4. Apply migrations & create superuser
python manage.py migrate
python manage.py createsuperuser

# 5. Run the development server
python manage.py runserver

# 6. Open browser at http://127.0.0.1:8000/

🚀 Usage Flow

1- Signup → Email Confirmation → Profile

2- Search Hotels → View Details → Book Room

3- Blog Section → Read/Add Posts → Comment

4- Admin Dashboard → Manage Content

🔮 Future Plans

  • 💳 Add a payment system for bookings
  • 🏨 Implement hotel room management (add rooms & availability)
  • ⭐ Add room and hotel rating system

👤 Author

Mostafa Rashwan GitHub: https://github.com/mos8afa

About

Hotel Booking & Blogging Platform Built with Django, DRF, SQLite, Allauth, Summernote. Features include: User auth with email verification & profiles Hotel listing, search, and booking system Blog with posts, tags, categories & comments Admin dashboard for managing content Clean UI optimized for booking & blogging

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published