Skip to content

calvinyz/aibee

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AIBEE

Visual programming platform for ML education. Students drag and drop blocks to build ML workflows, run them against a live Jupyter kernel, and get help from a Claude-powered assistant. No Python required. Instructors write content in regular Python or Jupyter notebooks and a compiler converts it into block-based lessons.

Workspace


Block compiler

Tools like Scratch and Blockly require developers to manually define every block. ML has too many library functions for that to be practical.

The block compiler takes a .py or .ipynb file, parses the AST, infers data flow between operations, and outputs an executable block graph wired to the actual Jupyter kernel.

Pipeline: Python source -> AST analysis -> block graph -> live execution


Features

  • Visual block workspace - Blockly editor with a custom Python/ML block library: data loading, model training, evaluation, visualization
  • Code-to-block compiler - Upload any .py or .ipynb and get a runnable block graph back
  • Live execution - Blocks execute against a real Jupyter kernel over WebSocket with streaming output
  • AI assistant - Claude in the workspace sidebar via Vercel AI SDK with streaming
  • MCP server - Block compilation exposed as a tool for agent workflows (FastMCP)
  • Teacher dashboard - Create classes, author tutorials with sequenced content, assign projects, track students
  • Student dashboard - Join classes via code, complete tutorials step-by-step, submit assignments

Architecture

aibee/
├── apps/
│   └── app/        Next.js 15 frontend + API layer
├── services/
│   └── blockgen/   Code-to-block compilation service (Python + FastAPI)
└── infra/
    ├── runner/     Jupyter execution environment (Docker)
    ├── db/         PostgreSQL
    ├── redis/      Cache + session storage
    └── cloud/      Deployment configuration
Browser (React + Blockly)
  ├── REST ──────────────── Next.js API routes ── PostgreSQL (Neon / Drizzle)
  │                                          └─── Redis
  ├── WebSocket ─────────── Jupyter kernel (Docker)
  └── blockgen API ──────── FastAPI service
                       └─── MCP server (FastMCP)

Stack

Frontend Next.js 15, React 19, TypeScript, Tailwind CSS
Visual editor Blockly (extended with custom block library)
Auth NextAuth.js (credentials + OAuth)
AI Claude (Anthropic SDK), Vercel AI SDK
Agent protocol Model Context Protocol (MCP)
Block compiler Python, FastAPI
Database PostgreSQL via Neon (serverless), Drizzle ORM
Cache Redis, ioredis
Execution Jupyter kernel API (REST + WebSocket)
Infrastructure Docker, Docker Compose

Packages

apps/app - Next.js app. Auth, database, Blockly workspace, Jupyter execution, AI chat, teacher and student dashboards.

services/blockgen - Compiles Python source files and Jupyter notebooks into executable Blockly block graphs. Also serves as an MCP tool.

infra/runner - Dockerized Jupyter environment for live code execution.

infra/db - PostgreSQL schema: users, classes, tutorials, projects, assignments, blocks, categories.

infra/redis - Redis for caching, sessions, and rate limiting.

infra/cloud - Deployment and infrastructure configuration.

About

Visual programming platform for ML education

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors