Framework Overview
EZ-Console is a comprehensive full-stack framework designed for rapidly building enterprise management systems. It provides a solid foundation with essential features like authentication, authorization, user management, and audit logging out-of-the-box.
What is EZ-Console?β
EZ-Console is a production-ready framework that combines:
- Backend: Go + Gin + GORM
- Frontend: React + TypeScript + Ant Design
- Architecture: Clean layered architecture with dependency injection
- Security: JWT authentication, RBAC, MFA support
- Observability: Built-in logging, tracing, and metrics
Why Choose EZ-Console?β
π Rapid Developmentβ
Get a full-featured admin system running in minutes rather than weeks. Focus on your business logic while the framework handles infrastructure concerns.
ποΈ Production Readyβ
Battle-tested architecture with security best practices built-in:
- Secure authentication and authorization
- Audit logging for compliance
- Input validation and error handling
- Performance optimization
π§ Highly Extensibleβ
Plugin-based architecture allows you to:
- Add custom controllers and services
- Extend built-in modules
- Integrate with external systems
- Create reusable components
π Full Stack Integrationβ
Backend and frontend are designed to work together seamlessly:
- Type-safe API contracts
- Consistent error handling
- Unified configuration
- Shared authentication flow
π Enterprise Featuresβ
Everything you need for enterprise applications:
- Role-Based Access Control (RBAC)
- Multi-Factor Authentication (MFA)
- OAuth2/OIDC integration
- LDAP/Active Directory support
- Comprehensive audit logging
- Multi-tenancy support
π Security Firstβ
Security is not an afterthought:
- JWT-based stateless authentication
- Password policies and encryption
- Permission-based access control
- Audit trail for compliance
- SQL injection prevention
- XSS protection
Core Featuresβ
Backend Capabilitiesβ
RESTful API Frameworkβ
- High-performance Gin HTTP framework
- Automatic request routing
- Middleware support
- OpenAPI/Swagger documentation
Database & ORMβ
- GORM ORM with rich features
- Support for SQLite, MySQL, PostgreSQL
- Automatic migrations
- Soft deletes
- Transaction support
Authentication & Authorizationβ
- JWT token-based authentication
- Session management
- Role-Based Access Control (RBAC)
- Permission groups and policies
- Service accounts for API access
- OAuth2/OIDC providers (Google, Okta, Azure AD)
- LDAP/Active Directory integration
- Multi-Factor Authentication (TOTP, Email)
Built-in Modulesβ
- User Management: Complete user lifecycle
- Authorization: Roles, permissions, policies
- System Settings: Configurable security policies
- File Management: Upload/download with access control
- Audit Logging: Automatic action tracking
- Statistics: System analytics and metrics
Frontend Capabilitiesβ
Modern Technology Stackβ
- React 18 with hooks and concurrent features
- TypeScript for type safety
- Vite for fast development and building
- Ant Design 5 for professional UI
Pre-built Componentsβ
- User management interface
- Role and permission management
- System settings dashboard
- Audit log viewer
- File upload/download
- Form components with validation
Developer Experienceβ
- Hot module replacement
- Component lazy loading
- Internationalization (i18n)
- Responsive design
- Dark mode support
Technology Stackβ
Backend Technologiesβ
| Category | Technology | Version |
|---|---|---|
| Language | Go | 1.20+ |
| Web Framework | Gin | Latest |
| ORM | GORM | Latest |
| Authentication | JWT | - |
| Configuration | Viper | Latest |
| CLI | Cobra | Latest |
| Logging | go-kit/log | Latest |
| Tracing | OpenTelemetry | Latest |
Frontend Technologiesβ
| Category | Technology | Version |
|---|---|---|
| Language | TypeScript | 5.x |
| Framework | React | 18.x |
| Build Tool | Vite | 5.x |
| UI Library | Ant Design | 5.x |
| Routing | React Router | 6.x |
| HTTP Client | Axios | Latest |
| State Management | React Context + React Query | Latest |
| i18n | react-i18next | Latest |
Database Supportβ
- SQLite - Default, perfect for development and small deployments
- MySQL/MariaDB - Production-ready relational database
- PostgreSQL - Advanced features and scalability
- ClickHouse - Optional analytics database
Use Casesβ
EZ-Console is ideal for:
Internal Toolsβ
- Admin panels and dashboards
- Content management systems
- Configuration management
- System monitoring tools
Business Applicationsβ
- Customer relationship management (CRM)
- Enterprise resource planning (ERP)
- Project management systems
- Inventory management
Platform Administrationβ
- Multi-tenant SaaS platforms
- API management portals
- User and permission management
- Service configuration interfaces
Developer Toolsβ
- API testing tools
- Development dashboards
- CI/CD management interfaces
- Infrastructure management
What Makes EZ-Console Different?β
1. Full-Stack Integrationβ
Unlike frameworks that only provide backend or frontend, EZ-Console gives you both, perfectly integrated and ready to use.
2. Enterprise Features by Defaultβ
RBAC, audit logging, and multi-tenancy aren't add-onsβthey're built into the core.
3. Convention over Configurationβ
Sensible defaults mean you can start coding immediately, but everything is customizable when you need it.
4. Production Readyβ
Not a toy frameworkβEZ-Console is used in real-world production applications.
5. Modern Technologyβ
Built with the latest versions of Go, React, and supporting libraries, using modern best practices.
Architecture Principlesβ
EZ-Console follows these key design principles:
Separation of Concernsβ
Clear boundaries between layers:
- Controllers handle HTTP requests
- Services contain business logic
- Models define data structures
- Middleware handles cross-cutting concerns
Dependency Injectionβ
Loose coupling makes code testable and maintainable:
- Services are injected into controllers
- Dependencies are explicit
- Easy to mock for testing
Interface-Based Designβ
Program to interfaces, not implementations:
- Flexibility to swap implementations
- Easy to extend and customize
- Clear contracts between components
Security by Defaultβ
Security is built-in, not bolted-on:
- Authentication required by default
- Permission checks on sensitive operations
- Audit logging automatic
- Input validation mandatory
Learning Pathβ
We recommend following this learning path:
- Start Here: Read this overview to understand what EZ-Console offers
- Architecture: Learn about the architecture and core concepts
- Installation: Set up your development environment
- Quick Start: Build your first application in 10 minutes
- Backend Guide: Deep dive into backend development
- Frontend Guide: Learn about frontend development
- Admin Console & Operations: Operate the system via Usage & Administrationβusers, RBAC, settings, audit logs, and reports
- Advanced Topics: Explore hooks, extensions, and tuning
Getting Helpβ
If you need assistance:
- Documentation: You're reading it! Search for specific topics
- Examples: Check the
/demodirectory in the repository - GitHub Issues: Report bugs or request features
- GitHub Discussions: Ask questions and share knowledge
- API Reference: Auto-generated Swagger documentation
Next Stepsβ
Ready to get started?
- Continue to Architecture to understand the framework design
- Jump to Installation to set up your environment
- Skip ahead to Quick Start to build something immediately
- If you deploy or administer an existing app, open the Admin Console Overview for day-to-day operations
Questions or feedback? Open an issue on GitHub.