June 18, 2025
i want to clarify that it is like a makemytrip but for cafes , so it has not all the cafes for every location , it has some locations of london till now , and if you just search london in location , it will list all the cafes . Thank You.
🛠️ Devlog: Building My Cafe Finder Website ☕🌐
🔥 Why I Built It
I wanted to create something practical and user-friendly, and the idea of a Cafe Finder seemed perfect. The goal was to allow users to find, bookmark, and even list their favorite cafes. Along the way, I aimed to deepen my skills in Flask, databases, and clean UI development.
🧩 The Stack I Chose
Flask – Lightweight and perfect for quick development.
SQLAlchemy + PostgreSQL – ORM helped manage models cleanly.
Flask-Login – For user authentication.
HTML + CSS + Bootstrap – To get a neat responsive UI quickly.
Jinja2 Templating – Made rendering pages and logic clean.
🔄 Development Phases
📌 Phase 1: Setup & Skeleton
Set up the folder structure, connected Flask to PostgreSQL, and created the basic user and cafe models.
🔐 Phase 2: User Auth
Implemented sign up, login, and logout using Flask-Login. I learned how to securely store passwords and protect routes.
🏗️ Phase 3: CRUD & UI
Created the ability for users to add cafes.
Users could only edit/delete their own cafes (access control).
Used Jinja2 to dynamically list cafes with links and details.
Added bookmarks for logged-in users (many-to-many relationship).
🗺️ Phase 4: Map Integration
Integrated Google Maps Embed API to show location previews based on user-entered URLs.
🚧 Challenges I Faced
Handling relationships in SQLAlchemy (like bookmarks) was tricky at first.
Ensuring only cafe owners could modify their cafes required access checks.
Designing a clean and mobile-friendly UI without overcomplicating it.
🌟 What I Learned
Clean project structure matters a lot.
How Flask handles routes, sessions, and database models.
Real-world use of ORM relationships (one-to-many, many-to-many).
Thinking like a full-stack developer—not just writing backend code but also considering UX/UI.
🚀 What’s Next?
Add user profiles with bios and profile pictures.
Filter cafes by tags like “WiFi,” “Outdoor Seating,” or “Pet Friendly.”
Deploy on Azure or Render with a custom domain.
👨💻 Final Thoughts
This project taught me more than just coding—it taught me to debug, think like a user, and keep improving my product. I’m proud of how far it came and excited about what’s next!
This platform allows users to discover and bookmark cafes, explore locations with ease, and enjoy a smooth, user-friendly experience—all powered by Flask, PostgreSQL, and SQLAlchemy. It was a fantastic learning journey—from backend development and database management to UI design and deployment. 💻📍
This was widely regarded as a great move by everyone.