jacobh2 d7ed01d554
Build Frontend / build (push) Successful in 14m30s
Fix build?
2026-06-25 09:52:25 +02:00
2026-06-23 22:37:23 +02:00
2026-06-23 22:13:38 +02:00
2026-06-25 09:52:25 +02:00
2026-06-04 11:33:42 +02:00
2026-06-23 22:13:38 +02:00
2026-06-24 15:30:47 +02:00
2026-06-24 15:30:47 +02:00
2026-06-24 15:30:47 +02:00
2026-06-24 15:30:47 +02:00
2026-06-24 15:30:47 +02:00
2026-04-24 08:02:13 +02:00
2026-05-17 20:34:52 +02:00
2026-05-28 09:31:20 +02:00

Baby Sleep Tracker

A self-hosted web application for tracking infant sleep sessions, optimized for Raspberry Pi 4 (ARM64).

Features

  • Tracker Tab: Start and stop sleep sessions with a single click. Adjust start/end times easily.
  • Stats Tab: Visualize sleep patterns with daily summaries (day vs. night), continuous time-slot grids, and wakeup/bedtime trend plots.
  • Responsive Design: Built for mobile use via a clean, thumb-friendly UI.
  • Dockerized: Easy deployment using Docker Compose.

Tech Stack

  • Frontend: React 19, Vite 6, TypeScript, Tailwind CSS v4, Recharts, TanStack Query.
  • Backend: Python 3.12+, FastAPI, SQLModel (SQLAlchemy + P/Dantic), SQLite.
  • Deployment: Docker, Docker Compose.

Getting Started

Prerequisites

Note: If building on an x86 machine for ARM64 (Raspberry Pi), ensure you use docker buildx.

Running with Docker Compose

  1. Clone the repository.
  2. Navigate to the project root.
  3. Run the following command:
docker compose up --build

The application will be available at:

Development Setup

Backend

Requires uv and Python 3.14+.

cd backend
uv sync
uv run uvicorn app.main:app --reload

Run tests:

uv run pytest

Frontend

cd frontend
npm install
npm run dev

Run tests:

npm run test

Project Structure

  • backend/: FastAPI application, models, and API routes.
  • frontend/: React application with components and hooks.
  • docker-compose.yml: Orchestration for the full stack.
S
Description
No description provided
Readme 1.8 MiB
Languages
TypeScript 74.2%
Python 24.8%
Dockerfile 0.6%
JavaScript 0.3%
HTML 0.1%