A simple, modern Progressive Web App (PWA) to track your recurring free service credits. Never miss a renewal date or lose track of your monthly allowances again.
(It’s highly recommended to replace this with a screenshot or GIF of the running application!)

Active and Used lists. Active services are sorted by the nearest renewal date.localStorage. Your data never leaves your device.useState, useEffect, useMemo)localStorageThis project is set up to run directly in the browser without any build steps or package installations.
You only need a modern web browser and a way to serve the files from a local web server.
Because this app uses ES modules (import), you need to serve the files from a local web server rather than opening the index.html file directly from your file system. Here are two easy ways to do it:
Option 1: Using the VS Code Live Server Extension
git clone https://github.com/YOUR_USERNAME/freebieflow.git
index.html file and select “Open with Live Server”.Option 2: Using Python’s built-in server
git clone https://github.com/YOUR_USERNAME/freebieflow.git
cd freebieflow
python -m http.server
http://localhost:8000./
├── components/ # Reusable React components
│ ├── AddServiceModal.tsx
│ ├── ServiceItem.tsx
│ ├── ServiceList.tsx
│ └── icons.tsx
├── services/ # Handles external interactions (e.g., localStorage)
│ └── storageService.ts
├── utils/ # Helper functions and business logic
│ └── renewalUtils.ts
├── App.tsx # Main application component
├── index.html # HTML entry point
├── index.tsx # React root renderer
├── metadata.json # Application metadata
├── types.ts # TypeScript type definitions
└── README.md # This file
Contributions, issues, and feature requests are welcome! Feel free to check the issues page. A major area for future improvement would be adding an optional cloud sync feature using a service like Firebase.
For questions, bug reports, or feature requests, please contact:
This project is open source and available under the MIT License.