This document outlines the planned features and development phases for HyperAdmin. Our goal is to build a modern, powerful, and easy-to-use admin interface for FastAPI.
This initial phase established the project's foundation, including the repository setup, a basic "walking skeleton" of the application, and a CI/CD pipeline. This work proved the core concept and allowed for rapid development.
The goal of this phase is to build a complete and visually appealing admin interface with full CRUD functionality and a modern UI.
-
CRUD Implementation:
- Add SQLAlchemy and SQLModel as dependencies.
- Refactor
ModelViewto work with SQLModel classes. - Implement Create View with dynamic form generation.
- Implement Update View with pre-filled forms.
- Implement Delete Action with HTMX for a seamless UI experience.
-
Admin UI Epics:
- [/] Navigation Sidebar: Design and implement a collapsible sidebar for easy navigation between different admin views. (Basic implementation exists)
- Data Table Component: Create a reusable and feature-rich data table with sorting, pagination, and filtering capabilities.
- Forms & Widgets: Develop a set of standardized form elements and dashboard widgets for a consistent and modern look and feel.
- Styling & Theming: Implement a clean and modern design system, with support for custom theming.
-
Documentation & Community Outreach:
- Set up a documentation site using MkDocs with the
mkdocs-materialtheme. - Write a "Getting Started" tutorial and document the core classes.
- Create a complete, runnable project in the
examples/directory. - Announce v0.2.0 on relevant platforms (GitHub Discussions, Twitter, Reddit).
- Set up a documentation site using MkDocs with the
With a solid foundation and a polished UI, this phase will focus on adding advanced features and making HyperAdmin even more powerful and flexible.
- Advanced Features:
- Authentication and authorization hooks.
- Support for model relationships (e.g., dropdowns for foreign keys).
- Custom actions (e.g., "approve selected items").
- File uploads.
- Advanced form validation and error handling.
- UI/UX Polish (e.g., pagination, notifications).