{"id":29368379,"url":"https://github.com/polaroidkidd/feedchange","last_synced_at":"2025-07-09T12:48:52.200Z","repository":{"id":302293211,"uuid":"1007974399","full_name":"polaroidkidd/FeedChange","owner":"polaroidkidd","description":"A simple, privacy-focused baby tracking application for monitoring feeding sessions and diaper changes. Built with SvelteKit and designed with parents' privacy in mind.","archived":false,"fork":false,"pushed_at":"2025-07-09T00:28:05.000Z","size":301,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-07-09T01:33:54.475Z","etag":null,"topics":["baby","diaper","feeding","logging"],"latest_commit_sha":null,"homepage":"https://feedchange.dle.dev","language":"Svelte","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/polaroidkidd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":null,"code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-24T20:32:46.000Z","updated_at":"2025-07-09T00:27:19.000Z","dependencies_parsed_at":"2025-07-01T15:56:06.876Z","dependency_job_id":null,"html_url":"https://github.com/polaroidkidd/FeedChange","commit_stats":null,"previous_names":["polaroidkidd/feedchange"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/polaroidkidd/FeedChange","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/polaroidkidd%2FFeedChange","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/polaroidkidd%2FFeedChange/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/polaroidkidd%2FFeedChange/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/polaroidkidd%2FFeedChange/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/polaroidkidd","download_url":"https://codeload.github.com/polaroidkidd/FeedChange/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/polaroidkidd%2FFeedChange/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264461203,"owners_count":23612130,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["baby","diaper","feeding","logging"],"created_at":"2025-07-09T12:48:49.079Z","updated_at":"2025-07-09T12:48:52.193Z","avatar_url":"https://github.com/polaroidkidd.png","language":"Svelte","funding_links":[],"categories":[],"sub_categories":[],"readme":"# FeedChange\n\nA simple, privacy-focused baby tracking application for monitoring feeding sessions and diaper changes. Built with SvelteKit and designed with parents' privacy in mind.\n\n## 🍼 Features\n\n### Baby Tracking\n\n- **Feeding Sessions**: Track bottle size, amount consumed, and feeding patterns\n- **Diaper Changes**: Quick logging of diaper changes with timestamps\n- **Visual Interface**: Intuitive bottle interface with slider controls\n- **Statistics Dashboard**: Monitor feeding efficiency, consumption patterns, and change frequency\n\n### Privacy-First Design\n\n- ✅ **No Email Required**: Start tracking immediately without account creation\n- ✅ **Zero Tracking**: No analytics, cookies, or data collection\n- ✅ **Auto-Cleanup**: All data automatically deleted after 7 days of inactivity\n- ✅ **Open Source**: Transparent codebase available on GitHub\n\n### Technical Features\n\n- 🌍 **Internationalization**: Multi-language support (English, German-Swiss)\n- 📱 **Responsive Design**: Works seamlessly on desktop and mobile\n- ⚡ **Fast Performance**: Built with modern web technologies\n- 🔒 **Local Data Storage**: Your data stays on your device\n\n## 🚀 Quick Start\n\n### Prerequisites\n\n- Node.js (v18 or higher)\n- pnpm (recommended) or npm\n\n### Installation\n\n1. **Clone the repository**\n\n   ```bash\n   git clone https://github.com/polaroidkidd/feedchange.git\n   cd feedchange\n   ```\n\n2. **Install dependencies**\n\n   ```bash\n   pnpm install\n   ```\n\n3. **Set up environment variables**\n\n   ```bash\n   cp .env.example .env.local\n   # Edit .env.local with your database configuration\n   ```\n\n4. **Initialize the database**\n\n   ```bash\n   pnpm db:push:dev\n   ```\n\n5. **Start the development server**\n   ```bash\n   pnpm dev\n   ```\n\nThe application will be available at `http://localhost:5173`\n\n## 🛠️ Development\n\n### Available Scripts\n\n- `pnpm dev` - Start development server with database setup\n- `pnpm build` - Build for production\n- `pnpm preview` - Preview production build locally\n- `pnpm test` - Run unit tests\n- `pnpm lint` - Run linting and formatting checks\n- `pnpm format` - Format code with Prettier\n\n### Database Commands\n\n- `pnpm db:push:dev` - Push database schema (development)\n- `pnpm db:generate:dev` - Generate Prisma client (development)\n- `pnpm db:push:prod` - Push database schema (production)\n\n## 🏗️ Tech Stack\n\n- **Frontend**: SvelteKit 2, Svelte 5\n- **Database**: SQLite with Prisma ORM\n- **Styling**: Tailwind CSS 4, Flowbite UI components\n- **Deployment**: Cloudflare Pages\n- **Languages**: TypeScript\n- **Testing**: Vitest, Playwright\n- **Internationalization**: Paraglide JS\n\n## 📊 Data Model\n\nThe application uses a simple SQLite database with two main entities:\n\n- **Baby**: Stores baby information (name, weight, current bottle size)\n- **Event**: Tracks feeding and diaper change events with timestamps\n\nData is automatically cleaned up after 7 days of inactivity to maintain privacy.\n\n## 🌍 Internationalization\n\nFeedChange supports multiple languages:\n\n- English (en)\n- German (Swiss) (de-ch)\n\nTo add a new language, add translation files in the `messages/` directory and configure them in the Paraglide settings.\n\n## 🚀 Deployment\n\n### Cloudflare Pages\n\n1. **Build the project**\n\n   ```bash\n   pnpm build\n   ```\n\n2. **Deploy to Cloudflare Pages**\n   ```bash\n   pnpm cf:deploy\n   ```\n\n### Self-Hosting\n\nFeedChange can be deployed to any platform that supports Node.js applications. Make sure to:\n\n1. Set up your production database\n2. Configure environment variables\n3. Run the build process\n4. Deploy the generated files\n\n## 🤝 Contributing\n\nWe welcome contributions! Please see our [Contributing Guidelines](CONTRIBUTING.md) for details.\n\n### Development Setup\n\n1. Fork the repository\n2. Create a feature branch\n3. Make your changes\n4. Run tests and linting\n5. Submit a pull request\n\n## 📄 License\n\nThis project is open source and available under the [MIT License](LICENSE).\n\n## 🔗 Links\n\n- [GitHub Repository](https://github.com/polaroidkidd/feedchange)\n- [Live](https://feedchange.dle.dev)\n- [Report Issues](https://github.com/polaroidkidd/feedchange/issues)\n\n## 🙏 Acknowledgments\n\nBuilt with ❤️ for parents who value privacy and simplicity in baby tracking.\n\n---\n\n_FeedChange - Simple, private baby tracking without the complexity._\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpolaroidkidd%2Ffeedchange","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpolaroidkidd%2Ffeedchange","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpolaroidkidd%2Ffeedchange/lists"}