A Ruby on Rails web app that helps students track study time, manage upcoming exams, record scores, and calculate final grades. Built to replace the fragmented spreadsheets I used in my first two years at university, with a scalable design ready for multiple users.
Try the app live: ModuleMate
- Track study sessions by module and duration
- Manage upcoming exams with dates, weightings and targets
- Record scores and automatically calculate weighted grades
- Multi-user support for scalability
- Ruby 3.2.3
- Rails 7.2.2.2
Clone and install dependencies:
git clone https://github.com/Turnlings/module-mate.git
cd module-mate
bundle installCreate a .env file:
touch .envAdd environment variables (replace values as needed):
Variables required to sign in with Google can be found at the Google Cloud Console
DEVISE_SECRET_KEY=your_random_key_here
GOOGLE_CLIENT_ID=your_google_client_id
GOOGLE_CLIENT_SECRET=your_google_client_secret
POSTMARK_API_TOKEN=your_postmark_api_tokenSet up the database:
rails db:create
rails db:migrateSetup JS dependencies:
yarn install
bin/rails shakapacker:compileStart the server:
rails sContributions are welcome!
- Fork the repository
- Create a new branch (
git checkout -b feature/your-feature-name) - Commit your changes (
git commit -m 'Add some feature') - Push to the branch (
git push origin feature/your-feature-name) - Open a Pull Request
