Skip to content

RubricMaker Alignment

NesiciCoding edited this page Aug 11, 2026 · 2 revisions

RubricMaker Alignment

RubricMaker is a comprehensive rubric-creation and grading platform for the EFL classroom — CEFR proficiency tracking, essay and test grading, document analysis, and reporting, built in React/TypeScript and self-hostable. The Vocabkitchen CLI profilers are the natural text-analysis engine for that world: the same CEFR scale, the same CEFR-J grammar taxonomy, the same rule-based (no-AI) philosophy.

This page maps what already lines up and where the Roadmap converges the two tools.


Shared foundations (today)

These aren't planned — they're already true, which is what makes the two tools fit.

Vocabkitchen CLI RubricMaker
Proficiency scale CEFR A1–C2 everywhere CEFR A1–C2 everywhere
Grammar taxonomy CEFR-J Grammar Profile CEFR-J Grammar Profile (grammar linker)
Detection method Rule-based over a spaCy parse — no AI Rule/NLP-based grammar detection — no AI
Vocabulary banding CEFR distribution A1–C2 per text CEFR vocabulary distribution per class/student
Academic vocabulary AWL + NAWL CEFR-enriched vocabulary items
Input formats .txt, .md, .docx, .pdf .docx, .pdf, OCR, .csv/.xlsx
Output for tooling Stable JSON Structured data + JSON backup/restore

Both tools independently landed on the CEFR-J Grammar Profile as their grammar authority — the single strongest alignment point. A construction levelled by the CLI and the same construction tagged in a RubricMaker criterion come from the same source data.


Feature-by-feature map

Where a RubricMaker capability has a CLI counterpart, and its status here.

RubricMaker feature Vocabkitchen CLI counterpart Status
Vocabulary Profile dashboard — CEFR distribution A1–C2, CSV export by band class_profile.py — pooled distribution + --export-vocab per-band CSVs over a whole folder shipped (the Phase 2 mirror)
Grammar linker — grammar tagged by CEFR-J level, auto-checked in essays grammar_profile.py — ~70 constructions, CEFR-J levels ✅ detection exists; per-criterion output is **[[Roadmap#phase-5--the-analysis-engine-behind-rubricmaker
Document analysis — vocab + grammar checking on uploaded essays Both profilers on .docx/.pdf, batched by class_profile.py shipped (per text and whole folders)
Cambridge English exam mapping (Key → Proficiency) 📋 **[[Roadmap#phase-4--standards--framework-alignment
CEFR Can-Do descriptors on criteria & self-assessment 💭 **[[Roadmap#phase-4--standards--framework-alignment
Standards linking (CCSS/NGSS/kerndoelen) Curriculum checklist against a target list 📋 **[[Roadmap#phase-4--standards--framework-alignment
Combined difficulty view on one submission Unified vocab+grammar report (text_report.py) shipped (Phase 1)
Backend the app calls Library / JSON contract 📋 **[[Roadmap#phase-5--the-analysis-engine-behind-rubricmaker

The two roles

The tools aren't competing — they sit at different points of the same teacher workflow:

        MATERIALS PREP                         GRADING & TRACKING
   ┌───────────────────────┐              ┌──────────────────────────┐
   │   Vocabkitchen CLI     │             │       RubricMaker          │
   │                        │  same CEFR   │                            │
   │ • level a reading       │  + CEFR-J   │ • grade essays & tests     │
   │ • pre-teach word lists   │  taxonomy   │ • track CEFR per student   │
   │ • simplify to a target   │◄──────────►│ • grammar linker on essays │
   │ • audit a text set       │  (Phase 5) │ • vocabulary dashboard     │
   └───────────────────────┘              └──────────────────────────┘
     before the lesson                        during & after the lesson
  • The CLI is where a teacher or materials writer prepares and levels input texts (readings, worksheets, graded readers) — fast, scriptable, offline.
  • RubricMaker is where those texts become assignments and student output gets graded and tracked over time.

Phase 5 makes this literal: RubricMaker calls the CLI's profilers as its analysis backend, so both ends of the workflow level language the same way from one implementation and one taxonomy.


See also

Clone this wiki locally