Skip to content

edriso/one-lesson-up

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

282 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

One Lesson Up

Finally finish your online courses.

Got a graveyard of unfinished courses? One Lesson Up gamifies learning to help you focus on one course at a time, earn coins for progress, and actually reach the finish line.

🎯 The Problem

Sound familiar? These are the real reasons courses end up unfinished:

  • No Focus — Enrolled in 5 courses, can't commit to one
  • No Urgency — "I'll finish whenever" = never
  • Invisible Progress — Completing lessons doesn't feel rewarding
  • Brain Fried — After work exhaustion makes learning feel impossible

✨ The Solution

Simple gamification that actually works. Focus + Progress + Rewards = Finished courses.

  • 🎯 One Course Focus — No enrolling in new courses until you finish your current one
  • 🪙 Consistency Coins — Earn coins for daily progress, not weekend cramming
  • 📝 Active Learning — Write summaries to cement knowledge and prevent forgetting
  • 👥 Ninja Community — Learn alongside others and compete on rankings

🎮 How It Works

  1. Pick One Course — Focus on completing one course before starting another
  2. Learn Daily — Complete lessons consistently to earn coins
  3. Write Summaries — Reflect on what you learned to cement knowledge
  4. Finish Strong — Get bonus coins for completing courses on time

🪙 The Coin System

Daily consistency beats weekend cramming — our math proves it:

  • +1 coin for your first lesson each day
  • +1 bonus for learning during peak times (5-8 AM, 10 AM-2 PM, 7-10 PM)
  • +50% bonus for finishing courses on time
  • +25% bonus even when finishing late

Example: Daily learner (15 min/day) gets 8 coins vs weekend learner (3 hours/day) gets 2 coins for the same 5-lesson course.

🐢 Show up daily, even for 15 minutes. The tortoise always wins.

🛠️ Tech Stack

Backend: Laravel 12 + PHP 8.3+ + SQLite/MySQL
Frontend: Vue.js 3 + TypeScript + Tailwind CSS + Inertia.js
Testing: Pest (PHP) + Vitest (JS) + Factory pattern

🚀 Quick Start

Prerequisites: PHP 8.3+, Composer, Node.js 18+, npm

# 1. Clone and setup
git clone https://github.com/edriso/one-lesson-up.git
cd one-lesson-up
composer install && npm install

# 2. Configure environment
cp .env.example .env
php artisan key:generate

# 3. Setup database
php artisan migrate:fresh --seed

# 4. Start development
php artisan serve
npm run dev  # In another terminal

Visit http://localhost:8000 and you're ready to go!

🧪 Development

# Run tests
php artisan test
npm run test:frontend

# Code formatting
npm run format

🚀 Production Deployment

composer install --optimize-autoloader --no-dev
npm run build
php artisan migrate --force
php artisan db:seed --class=TagSeeder
php artisan config:cache

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch: git checkout -b feature/your-feature
  3. Make your changes and add tests
  4. Run tests: php artisan test && npm run test:frontend
  5. Submit a pull request

📄 License

MIT License - see LICENSE for details.


Turn any course into a game. Level up your learning. 🥷

About

One Lesson Up is a gamified learning platform where you earn points by completing online courses. Track any course, write summaries after each lesson, earn points for progress with deadline bonuses, and compete on leaderboards. Stay consistent, beat deadlines for 50% bonus points, and watch your learning streak grow.

Resources

Stars

Watchers

Forks

Contributors