Skip to content

Commit c1c79c6

Browse files
committed
Initial commit of ULE v1.0
0 parents  commit c1c79c6

25 files changed

+5467
-0
lines changed

.gitignore

Lines changed: 261 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,261 @@
1+
# ULE - Universal Learning Engine .gitignore
2+
# Protects private development documentation and user data
3+
4+
# ================================
5+
# CRITICAL - NEVER COMMIT THESE
6+
# ================================
7+
8+
# Private Documentation (NEVER commit these)
9+
docs/private/
10+
private_notes.md
11+
development_log.md
12+
*.private.md
13+
*_private.md
14+
planning/
15+
roadmap.private.*
16+
17+
# User Data & Progress (NEVER commit these)
18+
*_progress.json
19+
user_progress/
20+
sessions/
21+
student_data/
22+
learning_analytics/
23+
*.user.json
24+
25+
# ================================
26+
# PYTHON & DEVELOPMENT
27+
# ================================
28+
29+
# Python Runtime
30+
__pycache__/
31+
*.pyc
32+
*.pyo
33+
*.pyd
34+
.Python
35+
*.so
36+
*.egg
37+
*.egg-info/
38+
39+
# Virtual Environments
40+
env/
41+
venv/
42+
.env
43+
.venv
44+
ENV/
45+
env.bak/
46+
venv.bak/
47+
.virtualenv
48+
.pipenv/
49+
50+
# Environment Variables
51+
.env
52+
.env.local
53+
.env.development
54+
.env.test
55+
.env.production
56+
*.env
57+
58+
# ================================
59+
# IDEs & EDITORS
60+
# ================================
61+
62+
# VSCode
63+
.vscode/
64+
*.code-workspace
65+
66+
# PyCharm / IntelliJ
67+
.idea/
68+
*.iws
69+
*.iml
70+
*.ipr
71+
72+
# Vim / Emacs
73+
*.swp
74+
*.swo
75+
*~
76+
.vim/
77+
.emacs.d/
78+
79+
# Sublime Text
80+
*.sublime-workspace
81+
*.sublime-project
82+
83+
# Atom
84+
.atom/
85+
86+
# ================================
87+
# OPERATING SYSTEMS
88+
# ================================
89+
90+
# macOS
91+
.DS_Store
92+
.DS_Store?
93+
._*
94+
.Spotlight-V100
95+
.Trashes
96+
.AppleDouble
97+
.LSOverride
98+
Icon?
99+
100+
# Windows
101+
ehthumbs.db
102+
Thumbs.db
103+
Desktop.ini
104+
$RECYCLE.BIN/
105+
106+
# Linux
107+
*~
108+
.directory
109+
.Trash-*
110+
111+
# ================================
112+
# DATA & DATABASES
113+
# ================================
114+
115+
# Database Files
116+
*.db
117+
*.sqlite
118+
*.sqlite3
119+
*.db-journal
120+
121+
# Data Files (potentially sensitive)
122+
*.csv.backup
123+
*.json.backup
124+
*.json.bak
125+
backup_*.json
126+
*.backup
127+
128+
# Pickle Files (can contain code)
129+
*.pickle
130+
*.pkl
131+
132+
# ================================
133+
# JUPYTER & NOTEBOOKS
134+
# ================================
135+
136+
# Jupyter Notebook
137+
.ipynb_checkpoints/
138+
*.ipynb
139+
*-checkpoint.ipynb
140+
.jupyter/
141+
142+
# IPython
143+
profile_default/
144+
ipython_config.py
145+
146+
# ================================
147+
# TEMPORARY & CACHE FILES
148+
# ================================
149+
150+
# Temporary Files
151+
*.tmp
152+
*.temp
153+
temp/
154+
tmp/
155+
.tmp/
156+
cache/
157+
.cache/
158+
159+
# Log Files
160+
*.log
161+
*.log.*
162+
debug.txt
163+
error.log
164+
output.log
165+
nohup.out
166+
167+
# ================================
168+
# TESTING & COVERAGE
169+
# ================================
170+
171+
# Testing Frameworks
172+
.pytest_cache/
173+
.tox/
174+
.nox/
175+
.coverage
176+
.coverage.*
177+
coverage.xml
178+
*.cover
179+
.hypothesis/
180+
181+
# Coverage Reports
182+
htmlcov/
183+
coverage/
184+
.nyc_output/
185+
186+
# ================================
187+
# PACKAGING & DISTRIBUTION
188+
# ================================
189+
190+
# Python Packaging
191+
.Python
192+
build/
193+
develop-eggs/
194+
dist/
195+
downloads/
196+
eggs/
197+
.eggs/
198+
lib/
199+
lib64/
200+
parts/
201+
sdist/
202+
var/
203+
wheels/
204+
pip-wheel-metadata/
205+
share/python-wheels/
206+
*.egg-info/
207+
.installed.cfg
208+
MANIFEST
209+
210+
# PyInstaller
211+
*.manifest
212+
*.spec
213+
214+
# ================================
215+
# DOCUMENTATION & MEDIA
216+
# ================================
217+
218+
# Generated Documentation
219+
docs/_build/
220+
docs/build/
221+
site/
222+
223+
# Media Files (if large)
224+
*.mp4
225+
*.avi
226+
*.mov
227+
*.wmv
228+
*.flv
229+
*.webm
230+
231+
# ================================
232+
# LEARNING ENGINE SPECIFIC
233+
# ================================
234+
235+
# Question Database Backups
236+
*_questions_backup.json
237+
questions_*.bak
238+
*_export.json
239+
240+
# Performance & Analytics
241+
performance_*.json
242+
analytics_*.json
243+
stats_*.json
244+
metrics_*.json
245+
246+
# AI Model Files (if added later)
247+
*.model
248+
*.weights
249+
*.h5
250+
*.ckpt
251+
*.pb
252+
253+
# Configuration Overrides
254+
config.local.*
255+
settings.local.*
256+
*.local.json
257+
258+
# Debug & Development
259+
debug_*.py
260+
test_*.tmp
261+
scratch_*.py

ABOUT.md

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,68 @@
1+
# 🌱 About the Universal Learning Engine (ULE)
2+
3+
The **Universal Learning Engine (ULE)** is an adaptive, open-source terminal-based platform designed to help learners build deep understanding through code-based reasoning challenges. It provides a modular system for creating and delivering multiple-choice question sets across a wide range of subjects — from programming to logic to mathematics and beyond.
4+
5+
---
6+
7+
## 🎓 Origins
8+
9+
ULE began in 2025 as a personal learning project by **Ryan Rustill**, exploring how to teach Python fundamentals through structured code reading challenges. What started as a small snippet grew — with the help of community feedback — into a much larger idea:
10+
11+
> *"What if we built a lightweight, universal engine for teaching anything through adaptive questioning?"*
12+
13+
That idea became the foundation for ULE:
14+
- Subject-agnostic
15+
- JSON-driven
16+
- Progressively adaptive
17+
- Beautifully simple
18+
19+
While the early engine was built specifically for Python, the core architecture was soon redesigned to support any subject area with minimal effort from contributors.
20+
21+
---
22+
23+
## 🚀 Mission
24+
25+
The goal is simple:
26+
**Make self-paced learning intelligent, structured, and welcoming to everyone.**
27+
28+
I believe that:
29+
- Learning should **adapt** to the learner — not the other way around
30+
- Educational tools should be **transparent, explainable, and hackable**
31+
- Reasoning is a muscle, and this engine is your gym
32+
33+
---
34+
35+
## 🛠️ What's Inside
36+
37+
ULE features:
38+
- A fully modular adaptive engine
39+
- Support for subject-specific modules (Python, Math, etc.)
40+
- Auto-discovery of available subject sets
41+
- Terminal-based UI with color-coded feedback
42+
- Session-based learning, difficulty tracking, and progress adaptation
43+
44+
---
45+
46+
## 📬 Join the Journey
47+
48+
ULE is open-source and welcomes contributors of all backgrounds.
49+
50+
If you:
51+
- Love learning
52+
- Want to build your own subject modules
53+
- Care about accessible, open education
54+
[check out our CONTRIBUTING.md](./CONTRIBUTING.md) to get started.
55+
56+
Whether you're an educator, a developer, a learner, or all three — you're welcome here.
57+
58+
---
59+
60+
## 🌿 Legacy
61+
62+
The **Universal Learning Engine** is the foundational core of a broader vision called **ReasonRoot**, a minimalist mobile platform for calm, focused, emotionally positive learning.
63+
64+
ULE will always remain free and open for the world to build on.
65+
66+
It is a standalone, open-source project. Some features or concepts may inspire or overlap with ReasonRoot, but community contributions to ULE remain MIT-licensed and fully open.
67+
68+
**Happy learning.**

0 commit comments

Comments
 (0)