Skip to content

Rumaisas-islam/Flask-ContactBook-WebApp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Flask Contact Book Banner

📇 Flask ContactBook WebApp

A modern and elegant Flask-based Contact Management System that allows users to add, edit, search, view, and delete contacts with a responsive design and organized database.
Built using Python, Flask, SQLAlchemy, and WTForms, this project demonstrates CRUD operations, testing, and deployment-ready architecture — ideal for portfolio or learning Flask development.


Python Badge Flask Badge License Badge Database Badge


🖼️ Screenshots

Home Page Add Contact Search Edit View
Home Add Search Edit View

🚀 Features

  • 🧩 Complete CRUD Functionality — Add, edit, view, and delete contacts
  • 🔍 Smart Search System — Instantly find contacts by name or email
  • 🎨 Modern Responsive UI — Built with clean HTML + CSS styling
  • 🧱 Flask + SQLAlchemy Integration — Lightweight and modular backend
  • 🧪 Unit Testing — Python’s unittest ensures app reliability
  • 💾 SQLite Database — Lightweight local data storage
  • 🧰 Beginner-Friendly Structure — Ideal for Flask learners & portfolios

🛠️ Tech Stack

Layer Technology
Backend Python, Flask, SQLAlchemy
Frontend HTML, CSS
Database SQLite
Forms & Validation Flask-WTF, WTForms
Testing Python unittest
Version Control Git & GitHub

⚙️ Installation & Setup

# Clone the repository
git clone https://github.com/Rumaisas-islam/Flask-ContactBook-WebApp.git

# Navigate to the project folder
cd Flask-ContactBook-WebApp

# (Optional) Create & activate a virtual environment
python -m venv venv
venv\Scripts\activate    # Windows
source venv/bin/activate # macOS/Linux

# Install dependencies
pip install -r requirements.txt

# Run the application
python app.py

Then visit 👉 http://127.0.0.1:5000/


🧪 Running Tests

python -m unittest discover -s test

All tests validate routes, database functions, and template rendering using an in-memory database.


📁 Project Structure

Flask-ContactBook-WebApp/
│
├── app.py
├── models.py
├── forms.py
├── config.py
├── requirements.txt
├── LICENSE
├── banner.png
│
├── templates/
│   ├── base.html
│   ├── add_contact.html
│   ├── edit_contact.html
│   ├── list_contacts.html
│   ├── search.html
│   └── view_contact.html
│
├── static/
│   ├── css/style.css
│   └── screenshots/
│       ├── home.png
│       ├── add.png
│       ├── search.png
│       ├── edit.png
│       └── view.png
│
└── test/
    ├── __init__.py
    └── test_basic.py

🌐 SEO Keywords

Flask contact book app, Flask CRUD web app, Flask SQLAlchemy project, Python Flask beginner project, Flask contact manager, Flask web development, Flask unittest example, Flask portfolio project


📜 License

Licensed under the MIT License — free for personal and commercial use. See LICENSE for full terms.


👩‍💻 Author

Rumaisa Islam 💻 Passionate Python & Web Developer 🔗 GitHub Profile

About

A modern Flask-based Contact Management Web App built with Python, Flask, and SQLAlchemy. Includes full CRUD functionality, responsive UI, and unit testing — perfect for beginners learning Flask web development and database integration.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors