A smart alarm clock application that uses reinforcement learning (Q-learning) to adjust alarm times based on your wake-up patterns.
- Self-tuning alarms: The app learns from your behavior and adjusts alarm times automatically
- Visual adjustments: See how much the algorithm has adjusted your alarms compared to your original settings
- Snooze management: Configure snooze intervals and limits for each alarm
- Learning dashboard: View statistics about your wake-up patterns and how the system is learning
- Beautiful UI: Modern, responsive interface with smooth animations
- Set up alarms with your desired wake-up times
- When an alarm rings, dismiss it or snooze
- The app records your actual wake-up time and uses it to calculate rewards
- The Q-learning algorithm adjusts future alarm times based on your patterns
- Over time, the system learns your optimal wake-up schedule
- React
- TypeScript
- Q-learning for reinforcement learning
- Styled Components
- Framer Motion for animations
- React Icons
clock-rl/
├── public/ # Static files
├── src/
│ ├── components/ # React components
│ ├── hooks/ # Custom React hooks
│ ├── context/ # React context providers
│ ├── algorithms/ # Q-learning implementation
│ ├── styles/ # Global styles
│ ├── types/ # TypeScript type definitions
│ ├── utils/ # Utility functions
│ └── App.tsx # Main app component
├── docs/ # Project documentation
└── package.json # Dependencies and scripts
# Clone the repository
git clone https://github.com/Shafwansafi06/Clock-RL.git
# Navigate to the project directory
cd Clock-RL
# Install dependencies
npm install
# Start the development server
npm startClock-RL uses Q-learning, a type of reinforcement learning algorithm that learns to make decisions by trying different actions and evaluating their outcomes. The system:
- Learns from your wake-up behavior
- Adjusts alarms earlier or later as needed
- Considers factors like snooze frequency
- Optimizes for timely wake-ups
- Sound customization for alarms
- Sleep quality tracking integration
- Dark/light theme options
- Multiple profiles for different users
- Weekly and monthly sleep pattern reports
This project is licensed under the MIT License - see the LICENSE file for details.
