diff --git a/README.md b/README.md index 6ce3a9c..d110d0c 100644 --- a/README.md +++ b/README.md @@ -36,26 +36,13 @@ Released into the public domain under CC0. Take it, use it, change it, share it. - [Features at a Glance](#-features-at-a-glance) - [Installation](#-installation) -- [Building from Source](#-building-from-source) +- [Building from Source](#%EF%B8%8F-building-from-source) - [Views and Functionality](#-views-and-functionality) - - [Log View](#-log-view) - - [History](#-history) - - [Charts](#-charts) - - [Budgets](#-budgets) - - [Recurring Transactions](#-recurring-transactions) - - [Subscriptions](#-subscriptions) - - [Savings Goals](#-savings-goals) - - [Credit Cards](#-credit-cards) - - [Wishlist](#-wishlist) - - [Forecast](#-forecast) - - [Insights and Achievements](#-insights-and-achievements) - - [Calendar Heatmap](#-calendar-heatmap) - - [Settings](#-settings) - [Import and Export](#-import-and-export) - [Multi-Currency Support](#-multi-currency-support) - [Notifications](#-notifications) - [System Tray](#-system-tray) -- [Keyboard and Workflow](#-keyboard-and-workflow) +- [Keyboard and Workflow](#%EF%B8%8F-keyboard-and-workflow) - [Architecture](#-architecture) - [Data Storage](#-data-storage) - [Packaging](#-packaging) @@ -64,7 +51,7 @@ Released into the public domain under CC0. Take it, use it, change it, share it. --- -## Overview +## 🧭 Overview Outlay is a native Linux application for personal income and expense tracking. It is built from scratch in Rust using GTK4 and libadwaita 1.8 for a modern GNOME-native experience. Everything runs locally - the database is a single SQLite file on your disk, exchange rates are cached after fetching, and there is no telemetry or network activity beyond currency conversion lookups. @@ -72,7 +59,7 @@ The goal is simple: give people a tool that is genuinely useful for managing the --- -## Features at a Glance +## ✨ Features at a Glance | Area | What it does | |---|---| @@ -100,7 +87,7 @@ The goal is simple: give people a tool that is genuinely useful for managing the --- -## Installation +## 📦 Installation ### AppImage (Recommended) @@ -119,7 +106,7 @@ See [Building from Source](#-building-from-source) below. --- -## Building from Source +## 🛠️ Building from Source ### Dependencies @@ -170,9 +157,9 @@ This wipes the existing database and creates a fresh one filled with transaction --- -## Views and Functionality +## 🖥 Views and Functionality -### Log View +### 📝 Log View The default view. A quick-entry form for logging transactions. @@ -186,7 +173,7 @@ The default view. A quick-entry form for logging transactions. The form is designed for speed. Open the app, type a number, pick a category, save. Three seconds and you are done. No friction, no unnecessary steps - because tracking expenses should be easier than not tracking them. -### History +### 📜 History Browse all your transactions grouped by day. @@ -203,7 +190,7 @@ Browse all your transactions grouped by day. Every transaction you have ever logged is here, organized chronologically. Nothing hidden, nothing summarized away. Your complete financial record, accessible and transparent. -### Charts +### 📊 Charts Visual breakdowns of where your money goes and comes from. @@ -216,7 +203,7 @@ Visual breakdowns of where your money goes and comes from. The charts use Cairo for rendering directly onto GTK DrawingAreas. The smoothing algorithm is Fritsch-Carlson monotone cubic Hermite interpolation, which guarantees the curve passes through every data point without overshooting between them. -### Budgets +### 💰 Budgets Set spending limits per category and track progress through the month. @@ -236,7 +223,7 @@ Set spending limits per category and track progress through the month. Budgets are a tool for self-awareness, not punishment. The pace indicator in particular is useful - it tells you "at your current rate, here is where you will end up" so you can make informed choices about the rest of the month. -### Recurring Transactions +### 🔄 Recurring Transactions Automate regular income and expenses. @@ -251,7 +238,7 @@ Automate regular income and expenses. When you open Outlay after being away for a week, it quietly generates all the recurring transactions that would have occurred. No manual intervention needed. The system respects end dates, pause states, and frequency rules. -### Subscriptions +### 🔔 Subscriptions Track your subscription services separately from raw recurring transactions. @@ -267,7 +254,7 @@ Track your subscription services separately from raw recurring transactions. The subscription view gives you a clear answer to "how much am I paying per month for services?" - a number that tends to creep up quietly if nobody is watching. -### Savings Goals +### 🎯 Savings Goals Set targets and track your progress toward them. @@ -280,7 +267,7 @@ Set targets and track your progress toward them. Goals work as a simple ledger - you set a target, and manually update your saved amount as you make progress. This keeps it flexible enough for any kind of saving, whether it is a vacation fund, an emergency cushion, or pooling resources with others for a shared purpose. -### Credit Cards +### 💳 Credit Cards Keep tabs on credit card balances and utilization. @@ -293,7 +280,7 @@ Keep tabs on credit card balances and utilization. This is a straightforward tracking tool - enter your balances manually to maintain awareness of where you stand. No bank API integration, no sharing credentials with third parties. -### Wishlist +### 🛒 Wishlist A place for things you want but have not bought yet. @@ -304,7 +291,7 @@ A place for things you want but have not bought yet. The wishlist is a cooling-off buffer. Writing something down instead of buying it immediately is one of the simplest ways to reduce impulse spending. If you still want it in a week, it will be here waiting. No algorithmic nudges pushing you to buy. -### Forecast +### 🔮 Forecast Project your future cash flow based on existing patterns. @@ -317,7 +304,7 @@ Project your future cash flow based on existing patterns. The forecast makes no assumptions about growth or lifestyle inflation. It simply extends your current patterns forward so you can see where things are heading and adjust if needed. -### Insights and Achievements +### 🏆 Insights and Achievements Analytics and light gamification to encourage healthy financial habits. @@ -352,7 +339,7 @@ Analytics and light gamification to encourage healthy financial habits. The achievements are meant to be encouraging without being manipulative. There are no daily login rewards, no streaks designed to create anxiety, and no leaderboards. Just quiet recognition when you hit a milestone that matters to you. -### Calendar Heatmap +### 📅 Calendar Heatmap A visual grid showing daily spending intensity. @@ -363,7 +350,7 @@ A visual grid showing daily spending intensity. A quick way to spot patterns - maybe you spend more on weekends, or there is a consistent spike mid-month. The heatmap makes these rhythms visible at a glance. -### Settings +### ⚙️ Settings Configure Outlay to work the way you need. @@ -377,7 +364,7 @@ Configure Outlay to work the way you need. --- -## Import and Export +## 📤 Import and Export Outlay believes your data should flow freely. No lock-in, no proprietary formats, no friction for leaving. @@ -413,7 +400,7 @@ Create a backup, copy it to another machine, restore it, and you have an exact r --- -## Multi-Currency Support +## 🌍 Multi-Currency Support Outlay supports 40+ currencies with automatic exchange rate conversion. @@ -485,7 +472,7 @@ The exchange rate sources are free and open services run by volunteers. No corpo --- -## Notifications +## 🔔 Notifications Outlay uses native GNOME desktop notifications to keep you informed without being intrusive. @@ -501,7 +488,7 @@ Notifications are de-duplicated (you will not get the same budget warning twice) --- -## System Tray +## 🗔 System Tray Outlay integrates with the freedesktop.org system tray specification via DBus. @@ -517,7 +504,7 @@ The Quick Add popup is designed for those moments when you just bought something --- -## Keyboard and Workflow +## ⌨️ Keyboard and Workflow The interface follows standard GTK4 and GNOME conventions. @@ -529,7 +516,7 @@ The interface follows standard GTK4 and GNOME conventions. --- -## Architecture +## 🏗 Architecture Outlay is structured as a Cargo workspace with two crates: @@ -632,7 +619,7 @@ The core dependencies, all freely licensed: --- -## Data Storage +## 💾 Data Storage All data lives in a single SQLite file: @@ -648,7 +635,7 @@ Schema migrations happen automatically. When a new version adds tables or column --- -## Packaging +## 📦 Packaging ### AppImage @@ -678,7 +665,7 @@ The AppImage sets: --- -## Contributing +## 🤝 Contributing Outlay is public domain software. There are no contributor license agreements, no copyright assignment forms, and no corporate ownership to navigate. If you want to help, help. If you want to fork it and take it in a different direction, do that. The code belongs to everyone equally. @@ -695,7 +682,7 @@ There is no formal governance structure. Good ideas get merged. Decisions are ma --- -## License +## ⚖️ License