An AI-powered houseboat discovery and recommendation platform built with Django, MySQL, Machine Learning, and a database-driven chatbot.
The system allows users to explore houseboats, search and filter available options, receive personalized recommendations, make bookings, manage wishlists, and interact with an AI-style chatbot for houseboat information.
Houseboat AI Recommendation System is a full-stack web application designed to make houseboat discovery and selection easier through intelligent recommendations and data-driven search.
The application combines:
- Full-stack web development
- Machine Learning
- Database management
- AI-based recommendation
- Chatbot interaction
- Data analytics
The project uses a dataset containing 500 houseboat records with information such as location, price, bedrooms, capacity, facilities, ratings, bookings, and luxury status.
- User registration and login
- Browse houseboats
- Search houseboats
- Filter houseboats based on preferences
- View detailed houseboat information
- AI-powered houseboat recommendations
- Add houseboats to wishlist
- Book houseboats
- View booking history
- Contact/message functionality
- K-Nearest Neighbors (KNN) based recommendation system
- User-preference-based houseboat recommendations
- Machine-learning-driven similarity matching
- Database-driven chatbot for houseboat queries
The chatbot can answer queries such as:
- "Show me luxury houseboats"
- "Show me houseboats in Alleppey under โน10,000"
- "Which houseboat has the highest rating?"
- "Show me houseboats with AC"
- "Show me houseboats with Wi-Fi"
- Admin dashboard
- Houseboat management
- User management
- Booking management
- Wishlist management
- Contact message management
- Dataset monitoring
A separate Power BI dashboard was created to analyze:
- Total houseboats
- Luxury vs non-luxury houseboats
- Average rating
- Houseboat distribution by location
- Average price by location
- Rating distribution
- Most-booked houseboats
โโโโโโโโโโโโโโโโโโโโโโโโ
โ User โ
โโโโโโโโโโโโฌโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโโ
โ Django Web Interfaceโ
โ HTML/CSS/Bootstrap โ
โโโโโโโโโโโโฌโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโ
โ โ โ
โผ โผ โผ
Search & Filter Booking Wishlist
โ โ โ
โโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโโ
โ MySQL Database โ
โโโโโโโโโโโโฌโโโโโโโโโโโโ
โ
โโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโ
โ โ
โผ โผ
โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ
โ Recommendation โ โ Chatbot โ
โ System (KNN) โ โ Database Query โ
โโโโโโโโโโโโโโโโโโโ โโโโโโโโโโโโโโโโโโโ
โ โ
โโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโ
โผ
Personalized Results
- HTML5
- CSS3
- Bootstrap
- Python
- Django
- MySQL
- Scikit-learn
- K-Nearest Neighbors (KNN)
- Feature-based similarity
- Pandas
- NumPy
- Exploratory Data Analysis (EDA)
- Microsoft Power BI
- Visual Studio Code
- MySQL Workbench
- Git
- GitHub
- Google Colab
The project uses a 500-row professional houseboat dataset.
Important attributes include:
| Feature | Description |
|---|---|
| HouseboatID | Unique houseboat identifier |
| HouseboatName | Name of the houseboat |
| Location | Houseboat location |
| PriceINR | Price in Indian Rupees |
| Bedrooms | Number of bedrooms |
| Capacity | Guest capacity |
| AC | Air-conditioning availability |
| Luxury | Luxury classification |
| Rating | Customer rating |
| ReviewCount | Number of reviews |
| BookingCount | Number of bookings |
| Food | Food availability |
| WiFi | Wi-Fi availability |
| Jacuzzi | Jacuzzi availability |
| Fishing | Fishing facility |
| Canoeing | Canoeing facility |
The recommendation component uses K-Nearest Neighbors (KNN) to identify houseboats that are similar to the user's selected preferences.
Relevant features can include:
- Price
- Bedrooms
- Capacity
- Rating
- Location
- Facilities
- Luxury preference
The system compares the user's requirements with available houseboats and returns suitable recommendations.
The chatbot provides database-driven responses to natural-language-style houseboat queries.
Example:
User:
Show me luxury houseboats
System:
Returns houseboats where Luxury = Yes
Another example:
User:
Show me houseboats in Alleppey under 10000
System:
Filters houseboats based on location and price
and returns matching results.
The project also includes a Power BI analytics dashboard for exploring the houseboat dataset.
Dashboard insights include:
- Houseboat count
- Average rating
- Location-wise distribution
- Location-wise average price
- Luxury distribution
- Rating distribution
- Top 10 most-booked houseboats
git clone https://github.com/24ubc226/HouseboatAI.gitcd HouseboatAIpython -m venv venvvenv\Scripts\activatepip install -r requirements.txtCreate a MySQL database and update the Django database configuration using environment variables.
python manage.py migratepython manage.py runserverOpen:
http://127.0.0.1:8000/
Sensitive information should be stored in environment variables rather than committed to GitHub.
Example:
SECRET_KEY=your-secret-key
DB_NAME=your-database-name
DB_USER=your-database-user
DB_PASSWORD=your-database-password
DB_HOST=localhost
DB_PORT=3306
HouseboatAI/
โ
โโโ houseboat_ai/
โ โโโ settings.py
โ โโโ urls.py
โ โโโ ...
โ
โโโ recommendation/
โ โโโ models.py
โ โโโ views.py
โ โโโ forms.py
โ โโโ urls.py
โ โโโ templates/
โ โโโ ...
โ
โโโ static/
โ โโโ css/
โ โโโ js/
โ โโโ images/
โ
โโโ screenshots/
โ
โโโ manage.py
โโโ requirements.txt
โโโ .gitignore
โโโ README.md
This project helped develop practical experience in:
- Full-stack web development
- Django application development
- MySQL database integration
- Machine Learning
- KNN recommendation systems
- Data preprocessing
- Exploratory Data Analysis
- Chatbot development
- Power BI data visualization
- Git and GitHub
- Debugging and deployment preparation
Possible future enhancements include:
- Cloud deployment
- Real-time booking availability
- Payment gateway integration
- Advanced NLP chatbot
- Vector database-based RAG
- Deep-learning recommendation models
- Personalized user profiles
- Mobile application
- Real-time notifications
Bijil Biju
BCA (Honours) โ Artificial Intelligence & Machine Learning
GitHub: https://github.com/24ubc226
LinkedIn: https://linkedin.com/in/bijil-biju-7a14b9320
This project was developed as a portfolio project to demonstrate practical skills in Artificial Intelligence, Machine Learning, Data Analytics, Web Development, and Database Management.




