Skip to content

Content Management System with python and flask.. Powerful and simple ..More testing required for production level

License

Notifications You must be signed in to change notification settings

flexaflow/flexaflow-flask

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FlexaFlow CMS

FlexaFlow CMS

License: MIT Python Flask SQLAlchemy Code style: black

FlexaFlow is a modern, enterprise-grade Content Management System built with Python Flask, designed for performance, security, and extensibility.

Highlights

  • Lightning Fast: Built for performance with optimized database queries
  • 2FA Security: Two-factor authentication, CSRF protection, and more
  • Mobile-First: Responsive design that works on all devices
  • Theme System: Easy-to-customize theming with Jinja2 templates
  • Custom Architecture: Extensible system for custom functionality
  • Analytics: Built-in support for Google Analytics and custom tracking

Features

Content Management

  • Pages & Posts

    • Create and manage static pages and dynamic blog posts
    • Draft system with preview functionality
  • Rich Content Editor

    • TinyMCE integration with custom plugins
    • Easy image uploads
    • Table management
    • Embedded media support

Media Management

  • Advanced Media Library
    • Image optimization
    • Automatic thumbnail generation

Security Features

  • Two-Factor Authentication (2FA) ..Google Authenticator supports
    • Multiple authenticator app support
    • QR code / manual key entry
    • Time based authentication

Getting Started

Prerequisites

  • Python 3.7 or higher
  • pip package manager
  • Virtual environment (recommended)
  • SQLite, MySQL, or PostgreSQL

Quick Start

  1. Clone the Repository

    git clone https://github.com/flexaflow/flexaflow-flask.git
    cd flexaflow-flask
  2. Set Up Virtual Environment

    python -m venv venv
    source venv/bin/activate  # On Windows: venv\\Scripts\\activate
  3. Install Dependencies

    pip install -r requirements.txt
  4. Environment Configuration Create a .env file:

    FLASK_ENV=development
    SECRET_KEY=your_secure_secret_key
    DATABASE_URL=sqlite:///cms.db
    UPLOAD_FOLDER=uploads
    MAX_CONTENT_LENGTH=16777216
  5. Initialize and Run

    python app.py

Visit http://localhost:5000/setup to complete installation.

Configuration

Database Setup

Support for multiple databases:

# SQLite (Default)
DATABASE_URL=sqlite:///cms.db

# MySQL
DATABASE_URL=mysql://user:password@localhost/dbname

# PostgreSQL
DATABASE_URL=postgresql://user:password@localhost/dbname

Theming

FlexaFlow uses a powerful theming system:

Current default theme structure

├── functions
│   └── custom-function.py
└── templates
    ├── 404.html
    ├── category.html
    ├── main
    │   ├── contact-form.html
    │   ├── footer.html
    │   ├── header.html
    │   └── master.html
    ├── post.html
    ├── search.html
    ├── single-page.html
    └── tag.html

License

Distributed under the MIT License. See LICENSE for more information.

Hosting & Deployment

FlexaFlow CMS can be deployed on various hosting platforms. Here are our recommended options:

Recommended Hosting Platforms

PythonAnywhereBest Overall

  • Perfect for beginners and professionals
  • Offers MySQL database included in plans
  • Easy Flask deployment with web-based console
  • Free tier available for testing
  • Automatic SSL certificates
  • Setup: Upload your code via web interface, configure WSGI file
  • Great for modern deployments
  • Free tier with automatic SSL
  • Git-based deployments
  • Built-in PostgreSQL database options
  • Easy environment variable management
  • Setup: Connect your GitHub repo and deploy automatically
  • Enterprise-grade platform
  • Extensive add-on marketplace
  • Git-based deployment workflow
  • PostgreSQL support via Heroku Postgres
  • Setup: Use Procfile and requirements.txt for deployment

Acknowledgments

Lead Developer

Core Technologies

  • Flask - The lightweight WSGI web application framework
  • SQLAlchemy - The Python SQL toolkit and ORM
  • TinyMCE - The powerful rich text editor
  • Bootstrap - The responsive front-end framework

About

Content Management System with python and flask.. Powerful and simple ..More testing required for production level

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published