A modern, high-performance personal ledger application designed to help you track transactions, manage debts (lent/borrowed), and keep on top of your finances with ease. Built with a focus on speed, mobile experience, and automation.
- ⚡ Single Page Application (SPA): Validated smooth navigation without full page reloads, providing a native-app feel on the web.
- 📱 Mobile-First Experience: Optimized for touch with bottom-sheet drawers, haptic feedback, and responsive layouts.
- 👥 People Management: Track who owes you money and who you owe.
- 💸 Transaction Tracking: Log 'Lent', 'Received', 'Paid', and 'Got Paid' transactions with ease.
- 🤖 Telegram Automation:
- Daily Summaries: Get a financial recap sent to your Telegram every morning.
- Due Reminders: Automatic notifications for upcoming or overdue payments.
- 📊 Reports: Visualize your cash flow and net balance.
- Backend: PHP 8.0+ (Vanilla, no heavy frameworks)
- Database: MySQL / MariaDB
- Frontend:
- JavaScript (Vanilla + jQuery for DOM)
- TailwindCSS (Styling)
- History API (SPA Navigation)
- Server: Apache / Nginx
-
Clone the repository:
git clone https://github.com/creatifying/ledger.git cd ledger -
Database Setup:
- Create a new MySQL database (e.g.,
daybook). - Import the schema from
database/schema.sql.
- Create a new MySQL database (e.g.,
-
Configuration:
- Rename
config/config.example.phptoconfig/config.php(if applicable) or ensure database credentials inconfig/database.phpmatch your local environment.
- Rename
-
Web Server:
- Point your document root to the project directory.
- Ensure
mod_rewriteis enabled if using Apache (for.htaccess).
- Go to Settings.
- Enter your Bot Token (from @BotFather) and Chat ID (from @userinfobot).
- Click Save.
- Important: Start a chat with your bot on Telegram for it to work!
To enable daily summaries and reminders, add this to your server's crontab (crontab -e):
# Run Ledger Cron Tasks everyday at 9:00 AM
0 9 * * * /usr/bin/php /path/to/ledger/scripts/cron_tasks.php >> /path/to/ledger/cron.log 2>&1This project is open-source and available under the MIT License.