Skip to content

DogukanUrker/FlaskBlog

FlaskBlog

A modern blog application built with Flask, featuring a clean UI and powerful admin tools.

FlaskBlog Light Theme Watch demo on YouTubeSee screenshots (mobile/desktop, dark/light)

✨ Features

  • User System - Registration, login, profiles with custom avatars
  • Rich Editor - Milkdown editor for creating beautiful posts
  • Admin Panel - Full control over users, posts, and comments
  • Dark/Light Themes - Automatic theme switching
  • Categories - Organize posts by topics
  • Search - Find posts quickly
  • Responsive Design - Works great on all devices
  • Advanced Logging - Powered by Tamga logger

🚀 Quick Start

Prerequisites

Installation

# Clone the repository
git clone https://github.com/DogukanUrker/flaskBlog.git
cd flaskBlog

# Install app dependencies and run
make install-app
make run

Visit http://localhost:1283 in your browser.

Default Admin Account

  • Username: admin
  • Password: admin

Running Tests

make install       # Install all dependencies including test deps
make test          # Run E2E tests (parallel)
make test-slow     # Run tests with browser visible (slow-mo)

See tests/README.md for details.

Makefile Commands

make help          # Show all available commands
make install       # Install all dependencies (app + dev + test + Playwright)
make install-app   # Install app dependencies only
make run           # Run the Flask application
make test          # Run E2E tests (parallel)
make test-slow     # Run tests with browser visible (slow-mo)
make lint          # Format and lint code (auto-fix)
make ci            # Run CI checks
make clean         # Remove cache files

🛠️ Tech Stack

Backend: Flask, SQLite3, WTForms, Passlib
Frontend: TailwindCSS, jQuery, Summer Note Editor
Icons: Tabler Icons

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

👨‍💻 Author

Doğukan Ürker
Website | Email


⭐ If you find this project useful, please consider giving it a star!