The swift, smart, and a bit foxy Python framework!

Develop powerful web applications with a modern, elegant, and high-performance framework. Framefox gives you the tools you need to create quickly.

Exceptional Features

Framefox combines elegance, performance, and simplicity to provide you with an unparalleled development experience.

Advanced Profiler

Analyze the performance of your applications with our integrated profiler. Execution time, SQL queries, memory consumption—everything is accessible with one click.

Intelligent Routing

Define your routes with simple and intuitive decorators. Framefox takes care of the rest to provide you with efficient and flexible routing.

Integrated Security

CSRF protection, authentication, firewall, and more. Your application is secure from the start without complex configuration.

MVC Architecture

A clear and organized structure for your projects with the MVC model. Develop faster and maintain your code more easily.

Powerful ORM

Manipulate your data with an intuitive and efficient ORM. Create, read, update, and delete data without writing SQL.

Intuitive CLI

Generate code, create controllers, entities, and more with our simple and powerful command-line interface.

Elegant Code

A framework designed for developers who value clarity and simplicity.

python
from framefox.core.routing.decorator.route import Route
from framefox.core.controller.abstract_controller import AbstractController
from src.repository.product_repository import ProductRepository


class HomeController(AbstractController):
    def __init__(self):
        self.product_repository = ProductRepository()
    
    # Simple route definition with decorator
    @Route("/home", "home.index", methods=["GET"])
    async def index(self):
        return self.render("home/index.html", {
            "controller_name": "HomeController"
        })
    
    # Route with parameter
    @Route("/product/{id}", "product.show")
    async def show_product(self, id):
        product = self.product_repository.find(id)
        return self.render("product/show.html", {
            "product": product
        })

Simple and Powerful Controllers

In Framefox, you can create routes and controllers with a clear and expressive syntax. Our framework prioritizes readability and expressiveness.

  • Routes defined by decorators
  • Support for parameters in the URL
  • Intuitive template rendering
  • Easy access to repositories
Explore the Documentation

Integrated Entities and ORM

Define your data models and let Framefox manage your database. Our ORM handles relationships, migrations, and queries for you.

  • Entity definition with annotations
  • One-to-many, many-to-many relationships
  • Automatic migrations
  • Repository pattern for queries
See on GitHub
python
from framefox.core.orm.abstract_entity import AbstractEntity
from sqlmodel import Field, Relationship

# Define your data model
class Product(AbstractEntity):
    # Table name is automatically derived
    
    id: int | None = Field(default=None, primary_key=True)
    name: str = Field(max_length=256, nullable=False)
    price: float = Field(nullable=False)
    description: str | None = Field(max_length=1000, nullable=True)

    # Define relationships
    categories: Category | None = Relationship(back_populates='product', uselist=False)

A Powerful Integrated Profiler

Debugging and analyzing your applications has never been easier. Our integrated profiler provides you with detailed information on your application's performance.

http://localhost:8000/_profiler
Profiler Icon

Ready to get started with Framefox?

Join thousands of developers already using Framefox to build modern, high-performance web applications.