Skip to content

Latest commit

 

History

8 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nanoleaf Timer

A simple local web application to launch a timer that show on Nanoleaf panels by progressively turning them off (or on) to visualize the remaining time.

Ideas

  • Little web server (Flask?) to set timer duration and start/stop the timer
  • Save timer history (start time, duration, end time) in a local database
  • Add sound notifications when timer ends ?
  • Also display the timer on the web interface
  • Allow user to pause, resume and stop the timer from the web interface
  • Display alerts with sonner instead of Alert component
  • Wow effect : display panels layout on the web interface

Customization:

  • Allow users to customize light colors and patterns for different timer states
  • Choose the type of timer : countdown (turns off progressively) or filling (turns on progressively)
  • Set presets : Pomodoro (25 min work, 5 min break), short breaks (5 min), long breaks (15 min), pasta timer (10 min)
  • Option to choose whether the timer animates the panels in order or randomly
  • Change light colors based on timer status (e.g., green when running, red when finished)

Dev:

  • Dockerize the application for easier usage
  • Create shell scripts to start/stop api+frontend easily

Project structure

  • backend/: Flask API and shared Nanoleaf timer logic (still runnable as python main.py)
  • frontend/: React + Vite + Tailwind + shadcn UI for configuring timers

Backend quickstart

python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
flask --app backend run --debug

Or keep using the existing CLI behavior:

python main.py

Frontend quickstart

cd frontend
pnpm install
pnpm run dev

About

A simple local web app to manage timer and view them by lighting up Nanoleaf panels

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages