DEV Community

Esteban Palman
Esteban Palman

Posted on

🌱 I Built an Open‑Source Adaptive Learning Framework (ALF) — Modular, Bilingual, and JSON‑Driven

Hey everyone,

Over the past weeks I’ve been building something that started as a small experiment and slowly grew into a fully modular, bilingual, open‑source Adaptive Learning Framework (ALF) for STEM education.
It’s now at a point where it feels real, stable, and ready for others to explore — so I’m sharing it with the community.

🚀 What is ALF?
ALF is a lightweight, transparent, and extensible framework that models a simple but powerful adaptive learning loop:

Diagnosis → Drill → Integration

It detects misconceptions, generates targeted practice, and verifies mastery — all driven by clean JSON modules that anyone can write.

No black boxes.
No hidden heuristics.
Just explicit logic, modular design, and a focus on clarity.

đź§  How It Works

  1. JSON Problem Bank Each topic is defined in a standalone JSON file:

question

correct answer

common error patterns

drill prompts

integration test

This makes ALF incredibly easy to extend — educators can add new topics without touching the engine.

  1. Adaptive Learner (State Machine) A simple, readable Python class that moves through:

Phase 1: Diagnose

Phase 2: Drill

Phase 3: Integration

It stores history, last error, and current phase.

  1. Engine Layer A thin orchestration layer that:

initializes learners

routes answers

returns structured results to the UI

  1. Streamlit UI (Bilingual) The interface supports English and Dutch, selectable via sidebar. The UI is intentionally minimal — the logic lives in the engine.

🌍 Why I Built It
I’ve worked in education, tech, and the military.
One thing I’ve learned: people in power don’t always want to do the work to understand systems — but they do respond to clarity, transparency, and evolution.

So I documented the entire growth of ALF with photos and structure diagrams.
Not because it’s flashy, but because it shows the system is real, intentional, and built with care.

📸 Evolution of the Framework
I included a /FotoDocs folder with images showing:

early prototypes

first working adaptive loop

the modular engine

the bilingual UI

the JSON problem bank

It’s a visual timeline of how the system matured.

đź”§ Tech Stack
Python

Streamlit

JSON

Modular engine + learner architecture

GPLv3 open‑source license

đź§Ş Try It Out
If you want to explore or contribute:

Add new topics

Improve the engine

Extend the UI

Add new languages

Experiment with adaptive learning ideas

Everything is modular and easy to modify.

❤️ Why Share This?
Because adaptive learning shouldn’t be locked behind corporate walls.
It should be open, transparent, and accessible — something educators, developers, and researchers can build on together.

If this sparks ideas, criticism, curiosity, or collaboration, I’d love to hear it.

Top comments (0)