Skip to content

A simple, privacy-focused baby tracking application for monitoring feeding sessions and diaper changes. Built with SvelteKit and designed with parents' privacy in mind.

License

Notifications You must be signed in to change notification settings

polaroidkidd/FeedChange

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

6 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

FeedChange

A simple, privacy-focused baby tracking application for monitoring feeding sessions and diaper changes. Built with SvelteKit and designed with parents' privacy in mind.

🍼 Features

Baby Tracking

  • Feeding Sessions: Track bottle size, amount consumed, and feeding patterns
  • Diaper Changes: Quick logging of diaper changes with timestamps
  • Visual Interface: Intuitive bottle interface with slider controls
  • Statistics Dashboard: Monitor feeding efficiency, consumption patterns, and change frequency

Privacy-First Design

  • βœ… No Email Required: Start tracking immediately without account creation
  • βœ… Zero Tracking: No analytics, cookies, or data collection
  • βœ… Auto-Cleanup: All data automatically deleted after 7 days of inactivity
  • βœ… Open Source: Transparent codebase available on GitHub

Technical Features

  • 🌍 Internationalization: Multi-language support (English, German-Swiss)
  • πŸ“± Responsive Design: Works seamlessly on desktop and mobile
  • ⚑ Fast Performance: Built with modern web technologies
  • πŸ”’ Local Data Storage: Your data stays on your device

πŸš€ Quick Start

Prerequisites

  • Node.js (v18 or higher)
  • pnpm (recommended) or npm

Installation

  1. Clone the repository

    git clone https://github.com/polaroidkidd/feedchange.git
    cd feedchange
  2. Install dependencies

    pnpm install
  3. Set up environment variables

    cp .env.example .env.local
    # Edit .env.local with your database configuration
  4. Initialize the database

    pnpm db:push:dev
  5. Start the development server

    pnpm dev

The application will be available at http://localhost:5173

πŸ› οΈ Development

Available Scripts

  • pnpm dev - Start development server with database setup
  • pnpm build - Build for production
  • pnpm preview - Preview production build locally
  • pnpm test - Run unit tests
  • pnpm lint - Run linting and formatting checks
  • pnpm format - Format code with Prettier

Database Commands

  • pnpm db:push:dev - Push database schema (development)
  • pnpm db:generate:dev - Generate Prisma client (development)
  • pnpm db:push:prod - Push database schema (production)

πŸ—οΈ Tech Stack

  • Frontend: SvelteKit 2, Svelte 5
  • Database: SQLite with Prisma ORM
  • Styling: Tailwind CSS 4, Flowbite UI components
  • Deployment: Cloudflare Pages
  • Languages: TypeScript
  • Testing: Vitest, Playwright
  • Internationalization: Paraglide JS

πŸ“Š Data Model

The application uses a simple SQLite database with two main entities:

  • Baby: Stores baby information (name, weight, current bottle size)
  • Event: Tracks feeding and diaper change events with timestamps

Data is automatically cleaned up after 7 days of inactivity to maintain privacy.

🌍 Internationalization

FeedChange supports multiple languages:

  • English (en)
  • German (Swiss) (de-ch)

To add a new language, add translation files in the messages/ directory and configure them in the Paraglide settings.

πŸš€ Deployment

Cloudflare Pages

  1. Build the project

    pnpm build
  2. Deploy to Cloudflare Pages

    pnpm cf:deploy

Self-Hosting

FeedChange can be deployed to any platform that supports Node.js applications. Make sure to:

  1. Set up your production database
  2. Configure environment variables
  3. Run the build process
  4. Deploy the generated files

🀝 Contributing

We welcome contributions! Please see our Contributing Guidelines for details.

Development Setup

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Run tests and linting
  5. Submit a pull request

πŸ“„ License

This project is open source and available under the MIT License.

πŸ”— Links

πŸ™ Acknowledgments

Built with ❀️ for parents who value privacy and simplicity in baby tracking.


FeedChange - Simple, private baby tracking without the complexity.

About

A simple, privacy-focused baby tracking application for monitoring feeding sessions and diaper changes. Built with SvelteKit and designed with parents' privacy in mind.

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published