Skip to main content

Flask on steroids

Project description

Flaskteroids Logo

Flaskteroids

Flaskteroids: A complete, batteries-included Python MVC framework inspired by Ruby on Rails.

Build Status PyPI Version Python Versions License


Flaskteroids (or Flask on Steroids) is a lightweight yet powerful Python MVC framework that supercharges Flask with a clean, elegant structure. Inspired by the best of Ruby on Rails, it brings clarity and productivity to your web development workflow.

Built on the philosophy of convention over configuration, Flaskteroids helps you move fast, write less code, and stay focused on what matters: building scalable, maintainable applications with confidence.

With a batteries-included approach and carefully chosen core dependencies, Flaskteroids stays lean, fast, and secure — giving you everything you need, and nothing you don’t.

Features

  • Full MVC Architecture: Clean separation of concerns with Models, Views, and Controllers.
  • Elegant Routing: Intuitive and resourceful routing.
  • Built-in ORM: Seamless integration with SQLAlchemy and Alembic for database management and migrations.
  • Background Jobs: Integrated with Celery for easy background job processing.
  • RESTful by Design: Quickly build API routes with JSON responses.
  • Powerful CLI: A rich set of commands for generating models, controllers, mailers, scaffolds, and more.
  • Flask Compatibility: Retains the full power of Flask and its rich ecosystem.

Table of Contents

Installation

To get started, install the Flaskteroids package using pip:

pip install flaskteroids

Getting Started

1. Creating a New App

Create a new Flaskteroids application using the flaskteroids new command:

flaskteroids new my_project
cd my_project

This creates a new directory called my_project with a standard application structure.

2. Running the Server

To start the development server, run:

flask run

Now, open your browser and navigate to http://127.0.0.1:5000. You should see the Flaskteroids welcome page!

Your First Feature: A Blog

Let's create a simple blog to see the power of scaffolding.

  1. Create a new app: This command will create a new Flaskteroids application in a directory called my_blog.

    flaskteroids new my_blog
    cd my_blog
    
  2. Generate a Post scaffold: This command will create the model, controller, views, and database migration for a Post resource with title and content fields.

    flask generate scaffold Post title:string content:text
    
  3. Run the database migration: Apply the changes to your database schema.

    flask db:migrate
    
  4. Start the server:

    flask run
    

Now, visit http://1227.0.0.1:5000/posts in your browser. You have a complete set of pages to create, view, update, and delete posts.

For more check out the documentation

License

Flaskteroids is open-source and released under the MIT License.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flaskteroids-0.1.2.tar.gz (36.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

flaskteroids-0.1.2-py3-none-any.whl (47.3 kB view details)

Uploaded Python 3

File details

Details for the file flaskteroids-0.1.2.tar.gz.

File metadata

  • Download URL: flaskteroids-0.1.2.tar.gz
  • Upload date:
  • Size: 36.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.2

File hashes

Hashes for flaskteroids-0.1.2.tar.gz
Algorithm Hash digest
SHA256 b6ce827af2f2899b4d6f8c1bf4f7172de4c6dc1ed256b94a34b317a28b48ba6d
MD5 6e4c0790a6967f5e0cd23cd8543c8cbf
BLAKE2b-256 acd972c3f662720214f718f9cc47d4b183e621f7a6d99504c5723bea4809afc3

See more details on using hashes here.

File details

Details for the file flaskteroids-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: flaskteroids-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 47.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.2

File hashes

Hashes for flaskteroids-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f95b16bda841bc7c0a5ceacffa75b433907f3737fb259f4251d7bd92989c3aa3
MD5 9c6480b087348b80c5c20262303da61a
BLAKE2b-256 e6400df44b0b0a1715e2c26e3b60c0630f6f208dde59ef9c2ca924f658b760fd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page