Skip to content

A whimsical, Ghibli-themed screen time tracker to help you stay mindful of your application usage. Built with Next.js, AdonisJS, and Python, it turns productivity into a delightful journey.

Notifications You must be signed in to change notification settings

Sithabo/Totoro-Tracker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

53 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

TotoroTracker ๐ŸŒฟ

TotoroTracker Logo

A whimsical, Ghibli-themed application to help you monitor your screen time and application usage, turning productivity into a delightful journey.


๐ŸŒŸ How It Works

TotoroTracker is a full-stack application designed to provide a beautiful and intuitive interface for tracking your digital habits. It helps you stay mindful of your screen time by collecting usage data from your computer and displaying it on a web-based dashboard.

The project is composed of three main parts:

  1. next-frontend: A modern, responsive web application built with Next.js and TypeScript. This is the user-facing dashboard where you can register, log in, and view your application usage visualized in elegant charts and graphs.

  2. adonis-backend: A robust REST API built with AdonisJS v6. This backend server handles user authentication, data storage, and serves the usage data to the frontend. It's connected to a PostgreSQL database to securely store user and application data.

  3. Python-Scripts: A simple Python script (ScreentimeFormatter.py) responsible for collecting application usage data from the user's local machine. This script can be run in the background to periodically send data to the backend API.

โœจ Features

  • User Authentication: Secure user registration and login system.
  • Interactive Dashboard: A beautiful dashboard to visualize your screen time.
  • Data Visualization: View your app usage through bar charts, line charts, and progress bars.
  • Mindfulness Prompts: Gentle reminders and Ghibli-themed encouragement to help you manage your screen time effectively.
  • Cross-Platform: A web-based dashboard accessible from any browser.

๐Ÿ› ๏ธ Tech Stack

Area Technology
Frontend Next.js, React, TypeScript, Tailwind CSS
Backend AdonisJS, Node.js, TypeScript
Database PostgreSQL
Data Script Python

๐Ÿš€ Getting Started

To get a local copy up and running, follow these simple steps.

Prerequisites

  • Node.js (v18 or higher)
  • npm
  • Python
  • PostgreSQL

Installation & Setup

  1. Clone the repository:

    git clone https://github.com/your-username/totorotracker.git
    cd totorotracker
  2. Setup the Backend (adonis-backend):

    cd adonis-backend
    npm install
    cp .env.example .env
    # Update .env with your PostgreSQL database credentials
    node ace migration:run
    node ace db:seed
  3. Setup the Frontend (next-frontend):

    cd ../next-frontend
    npm install
  4. Run the development servers:

    • In one terminal, run the backend:
      cd adonis-backend
      npm run dev
    • In another terminal, run the frontend:
      cd next-frontend
      npm run dev
  5. Run the Python script to start tracking data (you may need to configure it to point to your local backend API).

Open http://localhost:3000 in your browser to see the result!


Happy Tracking! โœจ

About

A whimsical, Ghibli-themed screen time tracker to help you stay mindful of your application usage. Built with Next.js, AdonisJS, and Python, it turns productivity into a delightful journey.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •