News

May 6, 2026 Β· View on GitHub

πŸ€”Why MAIC-UI?

  • Turn abstract knowledge into interactive experiences
  • Reduce the cost of creating teaching resources
  • Support real classroom use with stable generated results
  • Help students learn by exploring, not just watching

πŸ“– Introduction

Let knowledge grow into interfaces, and let interaction flow into thinking.

MAIC-UI is an AI-powered interactive teaching generation system designed for educational scenarios across all grade levels. Centered on generative AI and interactive interface generation, it helps teachers quickly build teaching resources for classroom instruction, self-directed learning, experiment demonstrations, and knowledge exploration.

Unlike traditional static courseware or one-way content generation tools, MAIC-UI focuses not only on content generation, but also on learning process generation. It aims to transform abstract knowledge into visual, operable, and feedback-driven interactive pages, so that students do not merely see knowledge, but can also manipulate, experience, and understand it.

πŸ’‘ Key Highlights

  • AI-driven generation β€” Create teaching pages and interactive content from topic inputs.
  • From content to interaction β€” Generate not only content, but also interactive learning interfaces.
  • Versatile teaching support β€” Suitable for explanations, demonstrations, simulations, and review activities.
  • Process-oriented learning β€” Strengthen engagement through guidance, interaction, and feedback.
  • Classroom-ready design β€” Built for stable, controllable, and effective classroom use.

πŸ“ Positioning

MAIC-UI aims to address more than just the efficiency problem of courseware production. More importantly, it responds to several core needs in educational scenarios:

  • How can abstract knowledge become more intuitive?
  • How can classroom presentation turn into student participation?
  • How can AI go beyond assisting content writing to supporting learning experience design?

Therefore, MAIC-UI is not merely a traditional content generator, but rather:

An AI interactive teaching interface generation system designed for classroom and learning scenarios.

πŸš€ Quick Start

Prerequisites

  • Docker & Docker Compose
  • Git

1. Clone the Repository

git clone https://github.com/your-username/maic-ui.git
cd maic-ui

2. Configure Environment

# Copy the example environment file
cp .env.example .env

# Edit .env and add your API keys
# Required: AI_PROVIDER and corresponding API key (zhipu, anthropic, openai, etc.)
vim .env

Key Environment Variables:

VariableDescriptionRequired
AI_PROVIDERAI provider to use (zhipu, anthropic, openai, etc.)Yes
ZHIPU_API_KEY / ANTHROPIC_API_KEY / OPENAI_API_KEYAPI key for your chosen providerYes
SECRET_KEYSecret key for JWT authenticationYes
DATABASE_URLDatabase connection string (SQLite by default)No

3. Deploy with Docker Compose

# Build and start all services
docker compose build
docker compose up -d

# Or build and start in one command
docker compose up -d --build

The application will be available at http://localhost:8927

4. Verify Deployment

# Check container status
docker compose ps

# Check backend health
curl http://localhost:8927/health

Service Architecture

ServicePortDescription
nginx8927Reverse proxy (public entry point)
frontend3000Next.js application
backend8000FastAPI application

Development Mode (Optional)

For local development without Docker:

# Install dependencies
npm run install:all

# Start both frontend and backend
npm run dev

# Or start separately
npm run dev:frontend  # Frontend on port 3000
npm run dev:backend   # Backend on port 8000

✨ Features

✏️ Use Cases

MAIC-UI can be applied to the following typical teaching scenarios:

🎯 Lesson Introduction

Attract students’ attention and stimulate interest through intuitive pages.

πŸ“š Knowledge Explanation

Transform abstract concepts into visual and interactive content.

πŸ”¬ Experiment Simulation

Demonstrate processes when laboratory equipment or conditions are limited.

πŸ“ After-class Consolidation

Strengthen understanding and transfer of knowledge through interactive exercises.

🌟 Advantages

DimensionTraditional Courseware / Resource ProductionMAIC-UI
Production thresholdHigh, relies on manual design and technical operationsLower, can generate quickly
Content formMainly static presentationDynamic and interactive presentation
Student rolePassive viewerActive participant and explorer
Abstract knowledge expressionDifficult to present complex processesBetter suited for expressing dynamic patterns
Teaching adaptabilityHigh adjustment costMore suitable for quickly generating for different topics
Classroom performanceStrong in presentation, weak in interactionBalances both presentation and interaction

🀝 Contributing

We welcome contributions from the community. Whether it is a bug report, feature suggestion, or pull request, we truly appreciate it.

Contribution Process

🧩 Project Structure

MAIC-UI/
β”œβ”€β”€ frontend/                # Frontend project
β”‚   β”œβ”€β”€ public/              # Static assets
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ app/             # Page routes
β”‚   β”‚   β”œβ”€β”€ components/      # Shared components
β”‚   β”‚   β”œβ”€β”€ styles/          # Style files
β”‚   β”‚   └── utils/           # Utility functions
β”‚   └── package.json
β”‚
β”œβ”€β”€ backend/                 # Backend project
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ api/             # API layer
β”‚   β”‚   β”œβ”€β”€ service/         # Business logic
β”‚   β”‚   β”œβ”€β”€ models/          # Data models
β”‚   β”‚   └── core/            # Configuration and core functions
β”‚   β”œβ”€β”€ requirements.txt
β”‚   └── main.py
β”‚
β”œβ”€β”€ docs/                    # Documentation
β”œβ”€β”€ screenshots/             # Project screenshots
β”œβ”€β”€ docker-compose.yml
└── README.md

πŸ—οΈ Core Architecture

MAIC-UI adopts a frontend-backend separated architecture, consisting of the following main parts:

  • Frontend layer: responsible for user interaction, page presentation, and teaching resource display
  • Backend layer: responsible for business logic processing, API management, and generation workflow scheduling
  • AI generation layer: responsible for teaching content generation, page organization, and interactive resource construction
  • Data layer: responsible for user information, resource configuration, and generated result management

The system operates around the following workflow:

Input teaching requirements β†’ Generate teaching content β†’ Build interactive pages β†’ Display teaching resources

πŸ”§How to Contribute

πŸ’Ό Business Cooperation

If you would like to apply MAIC-UI to educational products, learning platforms, course resource development, or school-enterprise cooperation scenarios, feel free to contact us for further collaboration.

πŸ“ Citation

If MAIC-UI is helpful to your research or project, please consider citing this project.

@article{tu2026maic,
  title={MAIC-UI: Making Interactive Courseware with Generative UI},
  author={Tu, Shangqing and Li, Yanjia and Chen, Keyu and Zhang, Sichen and Yu, Jifan and Zhang-Li, Daniel and Hou, Lei and Li, Juanzi and Zhang, Yu and Liu, Huiqin},
  journal={arXiv preprint arXiv:2604.25806},
  year={2026}
}

⭐ Star History

If this project helps you, please consider giving it a star to support us.

Star History Chart