A gamified RPG-style habit tracker that transforms your daily routines into epic quests. Level up your character, earn experience points and gold, and build better habits through an engaging adventure-themed interface.
Habitarium brings the excitement of role-playing games to habit formation. Instead of simply checking off tasks on a boring list, you complete "Daily Quests" to earn XP, level up your character, and accumulate gold rewards. This gamification approach makes building positive habits more engaging and sustainable.
- RPG Progression: Earn XP and level up your character by completing habits
- Custom Quests: Create habits with personalized XP rewards (1-100 points)
- Gold System: Collect gold coins for completing daily tasks
- Progress Tracking: View statistics and completion history
- Responsive Design: Works on desktop and mobile devices
- Dark Theme: Clean interface with RPG-inspired styling
- Backend: Python Flask
- Database: SQLite
- Frontend: HTML5, CSS3, JavaScript
- Python 3.7 or higher installed on your system
- pip package manager
-
Clone the repository:
git clone https://github.com/joeltikoo/habitarium.git cd habitarium -
Install dependencies:
pip install -r requirements.txt
-
Run the application:
python app.py
-
Access the application: Open your web browser and navigate to
http://127.0.0.1:5000
To access Habitarium from other devices on your network (such as your mobile phone):
-
Modify the run configuration in
app.py:app.run(host='0.0.0.0', debug=True)
-
Find your computer's IP address and access the app at:
http://YOUR_IP_ADDRESS:5000
- Navigate to the main dashboard
- Use the "Create New Quest" form to add a habit
- Enter the habit name, optional description, and XP reward value
- Click "Add Quest" to create your new daily habit
- View your active quests on the main dashboard
- Click "Complete Quest" next to any uncompleted habit
- Earn XP and gold immediately upon completion
- Watch your character level up as you accumulate experience
- Visit the "Stats" page to view your adventure statistics
- Monitor your current level, total XP, and gold earned
- Review habit performance over the last 30 days
- Identify patterns and areas for improvement
Habitarium uses a local SQLite database with three main tables:
- habits: Stores habit information (name, description, XP reward)
- habit_completions: Tracks daily completion records
- player_stats: Maintains character progression (XP, level, gold)
All your habit data is stored locally in a file called habitarium.db. To backup your progress:
- Copy the
habitarium.dbfile to a safe location - To restore, simply replace the database file in your Habitarium directory
- Your character progression and habit history will be preserved
- Set higher XP values (50-100) for challenging habits
- Use lower values (10-25) for simple daily tasks
- Balance rewards to maintain steady progression
The default system requires 100 XP per level. To adjust this:
- Locate the
calculate_level()function inapp.py - Modify the calculation logic as desired
- Restart the application for changes to take effect
Contributions to Habitarium are welcome! To contribute:
- Fork the repository
- Create a feature branch for your changes
- Make your modifications with clear, descriptive commits
- Submit a pull request with a detailed explanation
Database not found: The database file is created automatically on first run. Ensure you have write permissions in the project directory.
Port already in use: If port 5000 is occupied, modify the port in app.py:
app.run(debug=True, port=5001)Styling not loading: Verify that the static/css/style.css file exists and the Flask static folder is properly configured.
The following features are being considered for future releases:
- Avatar System: Choose and customize your adventurer's appearance
- Character Classes: Select from different RPG classes (Warrior, Mage, Rogue) with unique bonuses
- Equipment System: Unlock gear and accessories based on habit streaks
- Achievement Badges: Unlock special badges for milestone accomplishments
- Streak Bonuses: Extra XP rewards for maintaining consecutive completion streaks
- Daily Challenges: Special high-reward quests that rotate daily
- Boss Battles: Major habit challenges that require sustained effort over multiple days
- Guild System: Form groups with friends or family members for shared accountability
- Leaderboards: Compare progress with other adventurers (optional)
- Quest Sharing: Import and share habit templates with the community
- Habit Correlation: Discover which habits you tend to complete together
- Time-based Analytics: Track performance patterns throughout the week/month
- Success Prediction: AI-powered suggestions for optimal habit scheduling
- Export Functionality: Generate reports and export data to CSV/PDF
- Habit Categories: Organize quests by type (Health, Productivity, Learning, etc.)
- Custom Themes: Additional color schemes and visual themes
- Reminder System: Optional notifications for incomplete daily quests
- Habit Templates: Pre-built habit suggestions for common goals
- Difficulty Scaling: Automatic XP adjustment based on completion consistency
- Mobile App: Native mobile application for iOS and Android
- Cloud Sync: Optional cloud backup and sync across devices
- API Integration: Connect with fitness trackers, calendars, and other productivity apps
- Plugin System: Framework for community-developed extensions
Have suggestions for new features? Open an issue on GitHub or submit a pull request with your ideas!
This project is released under the MIT License. See the LICENSE file for complete details.
Habitarium is designed for local hosting and personal use. Your habit data remains private and secure on your own device. The application does not require internet connectivity and works completely offline once installed.