A holistic CRUD/MVC framework for FastAPI with automatic routing, policies, relationships, GraphQL, and websockets.
FastAPI Cruddy Framework is a companion library to FastAPI designed to bring the development productivity of full-stack frameworks like Ruby on Rails, Ember.js, or Sails.js to the FastAPI ecosystem. It provides automatic CRUD routing, Sails.js-like endpoint policies, and comprehensive relationship management, enabling rapid API development with a focus on convention over configuration.
Backend developers building RESTful or GraphQL APIs with FastAPI who want to reduce boilerplate and accelerate development through automated CRUD generation and relationship handling. It is particularly suited for teams familiar with convention-over-configuration frameworks seeking a batteries-included approach for FastAPI.
Developers choose FastAPI Cruddy Framework for its holistic, batteries-included approach that automatically generates full CRUD endpoints and relationship sub-routes from SQLModel definitions, significantly reducing manual coding. Its unique selling point is the combination of Sails.js-inspired policy chains for business logic and security, integrated GraphQL support, and a full-featured WebSocket manager, all while maintaining FastAPI's performance and type safety.
A holistic CRUD/MVC framework for FastAPI, with endpoint policies and relationships
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Generates full CRUD endpoints and relationship sub-routes automatically from SQLModel definitions, drastically reducing boilerplate code. The README highlights this as a key feature for rapid API development.
Implements Sails.js-inspired policy chains for universal and action-specific business logic and security, allowing fine-grained control over endpoints. Policies can intercept and modify data, as shown in examples like password hashing.
Provides built-in GraphQL controller for read operations and a full-featured WebSocket manager with rooms and broadcasts, enabling real-time features without additional libraries. The README includes examples and exports for both.
Supports one-to-many, many-to-one, and many-to-many relationships with automatic link generation and updates, simplifying complex data models. The framework handles nested objects and relational queries via JSON syntax.
The framework is explicitly marked as alpha/beta, meaning potential bugs, breaking changes, and incomplete features, as admitted in the README: 'use at your own risk' and 'TODO: Additional documentation and tests.'
Requires understanding of multiple components like resources, policies, lifecycle hooks, and adapters, with a steep initial configuration. The README's extensive Resource class options and lifecycle hooks illustrate this complexity.
Tightly coupled to specific versions of FastAPI, SQLModel, Pydantic, and SQLAlchemy, which can cause compatibility issues during upgrades. The README includes a detailed compatibility chart warning of version constraints.