Skip to content

A web application for managing and tracking household (weighted and priority) chores for families with children, built with Flask.

Notifications You must be signed in to change notification settings

DomMinnich/FamilyChoreManager

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

Family Chore Manager

A web application for managing and tracking household chores for families with children, built with Flask.

Features

  • Admin Dashboard: Manage chores and children, view completion statistics
  • Child Dashboard: View and complete assigned chores
  • Automatic Chore Assignment: Configurable random assignment of chores at daily, weekly, or monthly intervals
  • Calendar View: Visual display of chore schedules with color-coded status indicators
  • Activity Summaries: Track completion statistics for each child
  • Weighted Chore System: Balance chore assignments based on difficulty

Tech Stack

  • Backend: Python with Flask
  • Database: SQLite with SQLAlchemy ORM
  • Frontend: HTML, CSS, JavaScript, Bootstrap 5
  • Calendar: FullCalendar.js
  • Tooltips: Tippy.js
  • Animations: Animate.css

Installation

  1. Clone the repository:

    git clone <repository-url>
    cd family_chore_manager
    
  2. Create and activate a virtual environment:

    python -m venv venv
    source venv/bin/activate  # On Windows: venv\Scripts\activate
    
  3. Install dependencies:

    pip install flask flask-sqlalchemy flask-login werkzeug flask-apscheduler
    
  4. Set up the database:

    flask run
    

    The database will be automatically created in the instance directory on first run.

  5. Access the application: Open your browser and navigate to http://127.0.0.1:5000/

Usage

First-time Setup

  1. Register as admin using the system password (supersecret by default)
  2. Add children to the system with their names and birthdays
  3. Create chores and assign them to children or set them up for automatic assignment

Regular Use

  • For Parents (Admin):

    • Log in as admin to manage chores and children
    • View completion statistics for each child
    • Configure automatic assignment settings
  • For Children:

    • Log in using name and birthday
    • View assigned chores on dashboard
    • Mark chores as complete when finished
    • Check performance statistics and completion ratio

Configuration

To change system settings such as the admin password, edit the constants in app.py:

SYSTEM_ADMIN_PASSWORD = "supersecret"  # Change this for security

Scheduler

The application includes an automatic scheduler that assigns chores based on configured frequencies:

  • Daily: Chores are reassigned at midnight each day
  • Weekly: Chores are reassigned at midnight on Sundays
  • Monthly: Chores are reassigned on the first day of each month

About

A web application for managing and tracking household (weighted and priority) chores for families with children, built with Flask.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published