Apartex is a premium apartment booking ecosystem designed to bridge the gap between luxury property owners and globetrotting guests. Built with a high-performance FastAPI backend and a reactive Vue.js 3 frontend, it offers a seamless experience for both property management and vacation discovery.
Modern search and discovery interface featuring glassmorphism elements.
Left: Premium apartment listing grid. Right: Comprehensive owner analytics dashboard.
- 🔍 Smart Search: Find the perfect stay using advanced filtering and location-based discovery.
- 📅 Real-time Booking: Instant confirmation with checking-in/out date validation.
- 🏆 Loyalty Rewards: Earn points on every stay to unlock exclusive tiers and rewards.
- 💖 Wishlist: Curate your dream vacation list with a single click.
- 🏠 Listing Management: Create and manage detailed property profiles with image support.
- 📈 Advanced Analytics: Track revenue, occupancy rates, and booking trends at a glance.
- 💰 Payout Tracking: Transparent history of earnings and payout statuses.
- 🛡️ Secure Access: Role-based authentication ensuring data privacy.
- FastAPI: Asynchronous Python framework for high-throughput APIs.
- SQLAlchemy 2.0: Modern ORM for flexible database modeling.
- JWT Auth: Secure token-based authentication with refresh cycles.
- Pydantic: Robust data validation and serialization.
- Vue.js 3 + Vite: Lightning-fast development and optimized build pipeline.
- Pinia: Centralized state management for complex reactive data.
- PrimeVue: High-quality UI component library.
- Vanilla CSS: Bespoke premium styling with glassmorphism and smooth transitions.
We maintain high standards for code quality and security. For a detailed breakdown of system design, technical debt, and our vision, please refer to:
- 🏗️ Architecture Overview - Deep dive into tech stack and data flow.
- 🗄️ Database Schema - Visual and technical breakdown of the data model.
- 🗺️ Project Roadmap - Our vision for future phases.
- 🤝 Contributing Guide - How to get involved with the project.
- Python 3.10+
- Node.js 18+
- SQLite (Default) or PostgreSQL
-
Backend:
cd backend python -m venv venv source venv/bin/activate # or venv\Scripts\activate pip install -r requirements.txt uvicorn main:app --reload
-
Frontend:
cd frontend/apartex-frontend npm install npm run dev
Contributions are welcome! Please feel free to submit a Pull Request.
Distributed under the MIT License. Created by Zakir Motala.

