Skip to content

rachelkd/pawmodoro-web

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🐱 Pawmodoro

A web application that gamifies studying using the Pomodoro Technique combined with virtual pet care. Keep your focus sharp and your virtual cat happy!

Table of Contents

Overview

Pawmodoro is a productivity tool that helps you maintain focus while caring for virtual cats. By completing study intervals, you earn rewards to feed and interact with your virtual cats, creating a fun and motivating study environment.

This project was originally developed as a Java Swing application and has been migrated to a web stack using Spring Boot and Next.js.

Why Pawmodoro?

  • 🕒 Customizable study and break intervals
  • 🐈 Virtual cat companions that respond to your study habits
  • 📊 Track your progress and cat's well-being
  • 🌐 Access from any device with a web browser

✨ Features

1. Timer Management

  • Flexible study and break duration settings
  • Visual progress tracking
  • Customizable auto-start options

2. Virtual Cat Care System

  • Feed and interact with virtual cats
  • Monitor cat happiness and hunger levels
  • Earn rewards through completed study sessions

Features to Come

  • Study session statistics
  • Level progression system
  • Music integration

🏗 Project Structure

pawmodoro-web/
├── backend/    # Spring Boot backend
├── frontend/       # Next.js frontend
└── README.md

📚 Installation

Prerequisites

  • Java 21 or higher
  • Node.js 18 or higher
  • Maven 3.8 or higher
  • Git

Cloning the Repository

  1. Clone the main repository with its submodules:
git clone --recurse-submodules https://github.com/rachelkd/pawmodoro-web.git
cd pawmodoro-web

If you've already cloned the repository without submodules, initialize them with:

git submodule init
git submodule update

Setting Up the Backend

  1. Navigate to the backend directory:
cd backend
  1. Create a application-local.properties file in src/main/resources with your Supabase credentials:
supabase.url=your_supabase_url
supabase.key=your_supabase_anon_key
supabase.secret=your_supabase_service_role_key
  1. Build and run the Spring Boot application:
./mvnw spring-boot:run

The backend will start on http://localhost:8080

Setting Up the Frontend

  1. Navigate to the frontend directory:
cd frontend
  1. Create a .env.local file with your Supabase credentials:
NEXT_PUBLIC_API_URL=http://localhost:8080  # Or whatever port the backend is hosted on
  1. Install dependencies and run the development server:
npm install
npm run dev

The frontend will start on http://localhost:3000

📖 Usage Guide

  1. Getting Started

    • Create an account or log in
    • Customize your study and break durations
    • Select your first virtual cat companion
  2. During Study Sessions

    • Start the timer
    • Monitor your progress
    • Complete intervals to earn rewards
  3. Cat Care

    • Feed your cat with earned rewards
    • Interact with your cat
    • Monitor happiness and hunger levels

🤝 Contributing

  1. Create a new branch for your feature:
git checkout -b feature/your-feature-name
  1. Make your changes and commit them:
git add .
git commit -m "Add your commit message"
  1. Push to your branch:
git push origin feature/your-feature-name
  1. Create a Pull Request from your branch to main.

For detailed contribution guidelines, please check our Contributing Guide.

👥 Team

Web Implementation Team

Original Java Swing Implementation Team

🎨 Credits

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published