{"id":27971269,"url":"https://github.com/harung1993/dollardollar","last_synced_at":"2025-09-03T06:04:41.862Z","repository":{"id":279310947,"uuid":"938398669","full_name":"harung1993/dollardollar","owner":"harung1993","description":"Just an Opensourced locally hosted Money Management and Expense Splitting Service","archived":false,"fork":false,"pushed_at":"2025-05-01T19:16:28.000Z","size":983,"stargazers_count":283,"open_issues_count":0,"forks_count":20,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-01T20:26:05.208Z","etag":null,"topics":["expense-tracker","flask","money-management","python","simplefin"],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/harung1993.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"license.txt","code_of_conduct":null,"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},"funding":{"github":"harung1993","patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"lfx_crowdfunding":null,"polar":null,"buy_me_a_coffee":"cCFW6gZz28","thanks_dev":null,"custom":null}},"created_at":"2025-02-24T22:27:39.000Z","updated_at":"2025-05-01T19:14:35.000Z","dependencies_parsed_at":"2025-03-12T19:19:50.873Z","dependency_job_id":"2ab812d9-20a7-416e-afc6-5d4b6bfa0304","html_url":"https://github.com/harung1993/dollardollar","commit_stats":null,"previous_names":["harung1993/dollardollar"],"tags_count":40,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/harung1993%2Fdollardollar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/harung1993%2Fdollardollar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/harung1993%2Fdollardollar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/harung1993%2Fdollardollar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/harung1993","download_url":"https://codeload.github.com/harung1993/dollardollar/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252961821,"owners_count":21832194,"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":["expense-tracker","flask","money-management","python","simplefin"],"created_at":"2025-05-07T22:01:25.569Z","updated_at":"2025-09-03T06:04:41.846Z","avatar_url":"https://github.com/harung1993.png","language":"HTML","funding_links":["https://github.com/sponsors/harung1993","https://buymeacoffee.com/cCFW6gZz28","https://buymeacoffee.com/ccfw6gzz28","https://img.buymeacoffee.com/button-api/?text=Buy"],"categories":["\u003ca id=\"tag-internet\" href=\"#tag-internet\"\u003eInternet\u003c/a\u003e"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/yourusername/dollardollar\"\u003e\n    \u003cimg src=https://github.com/harung1993/dollardollar/blob/main/static/images/dddby.png alt=\"DollarDollar Bill Y'all logo\" width=\"200\" /\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\u003ch1 align=\"center\"\u003eDollarDollar Bill Y'all\u003c/h1\u003e\n\u003cdiv align=\"center\"\u003e\n\u003ca href=\"LICENSE\"\u003e\u003cimg src=\"https://img.shields.io/badge/license-AGPL--3.0-blue.svg\" alt=\"license\"\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/harung1993/dollardollar/actions\"\u003e\u003cimg src=\"https://img.shields.io/github/actions/workflow/status/harung1993/dollardollar/ci.yml?branch=main\" alt=\"GitHub Workflow Status\"\u003e\u003c/a\u003e\n\u003c/div\u003e\n\n\u003e **🚧 Important Development Notice**\n\u003e \n\u003e **DollarDollar is currently undergoing a major architectural transformation!** We're migrating from a monolithic backend to a **modular microservices architecture** and transitioning the frontend from server-side rendering to a **modern React-based application**.\n\u003e \n\u003e **What this means:**\n\u003e - 🔄 **Backend**: Moving to modular, service-based architecture for better scalability and maintainability\n\u003e - ⚛️ **Frontend**: Complete migration to React for improved user experience and modern UI capabilities\n\u003e - 🛠️ **Current state**: The application remains fully functional during this transition\n\u003e - 📅 **Timeline**: Active development in progress - expect exciting updates soon!\n\u003e \n\u003e **For users**: The current version continues to work as expected. The modularization will bring enhanced performance, better maintainability, and improved development experience.\n\u003e \n\n\n\u003cp align=\"center\"\u003eAn open-source, self-hosted money management platform with comprehensive expense tracking, budgeting, account synchronization, and bill-splitting features - designed for privacy, flexibility, and complete financial control.\u003c/p\u003e\n\u003cdiv align=\"center\"\u003e\n  \u003ch3\u003e\n    \u003ca href=\"https://ddby.finforward.xyz\"\u003eDemo\u003c/a\u003e\n    \u003ca\u003e|\u003c/a\u003e\n    \u003ca href=\"https://discord.gg/7Z2EqVZYqm\"\u003eDiscord\u003c/a\u003e\n    \u003ca\u003e|\u003c/a\u003e\n    \u003ca href=\"license.txt\"\u003eLicense\u003c/a\u003e\n  \u003c/h3\u003e\n\u003c/div\u003e\n\n## 🌟 Why DollarDollar?\n\nBorn from a desire to move beyond restrictive financial tracking platforms, this app empowers users with:\n\n- 🔐 **Complete control over personal financial data**\n- 💡 **Flexible expense splitting mechanisms**\n- 🏠 **Self-hosted privacy**\n- 🤝 **Collaborative expense management**\n- 🔄 **Integration with Simplefin** (auto tracking accounts and transactions)\n- 💰 **Budgets with notifications**\n- 🖥️ **Seamless integration with Unraid** for easy installation and management via Unraid templates\n- 💼 **Track Portfolios and investments with auto update of sticker prices\n\n  \n## 🚀 Features\n\n- **💰 Expense Tracking \u0026 Management**\n  - Multi-currency support with automatic conversion\n  - Recurring transactions with flexible scheduling\n  - Auto-categorization with customizable rules\n  - Transaction importing (CSV, SimpleFin)\n  - Transaction with multi category support\n  - Multi-card and multi-account support\n  - Date-based expense tracking\n\n- **👥 Bill Splitting**\n  - Multiple split methods: equal, custom amount, percentage\n  - Group and personal expense tracking\n  - Settlement tracking and balances\n  - Email invitations for group members\n\n- **📊 Budgeting \u0026 Analytics**\n  - Custom budgets with notifications\n  - Monthly financial summaries\n  - Expense trends visualization\n  - Category-based spending analysis\n  - Comprehensive balance tracking\n\n- **🏷️ Organization \u0026 Categories**\n  - Customizable tags for expense categorization\n  - Category hierarchies (main categories with sub-categories)\n  - Auto-categorization based on transaction patterns\n  - Category-based reports for tax purposes\n\n- **🔐 Security \u0026 Privacy**\n  - Self-hosted for complete data control\n  - Local auth + OpenID Connect (OIDC) integration\n  - Enterprise-ready authentication with any OIDC provider\n  - User management with password recovery\n  - No third-party data sharing\n- **💼 Portfolio Management\n  - Create and manage multiple investment portfolios\n  - Link portfolios to accounts for automatic balance updates\n  - Track individual investments across different portfolios\n  - Visualize portfolio performance and distribution\n \n## 🛠️ Getting Started\n\n### Updating\nIf you are encountering issues after updating/pulling the recent docker, please run:\n```bash\nflask db migrate\nflask db upgrade\n```\n\nIf you wish to reset the database:\n```bash\npython reset.py\n```\n\n### Prerequisites\n- Docker\n- Docker Compose\n\n### Quick Installation\n\n1. Clone the repository\n   ```bash\n   git clone https://github.com/harung1993/dollardollar.git\n   cd dollardollar\n   ```\n\n2. Configure environment\n   ```bash\n   cp .env.template .env\n   # Edit .env with your configuration\n   ```\n\n3. Launch the application\n   ```bash\n   docker-compose up -d\n   ```\n\n4. Access the app at `http://localhost:5006`\n\n## ⚙️ Configuration Options\n\n### Investment Tracking (Optional)\nTo enable Investment Tracking :\n```\nINVESTMENT_TRACKING_ENABLED=True\n```\n\n### OIDC Setup (Optional)\nTo enable OpenID Connect authentication:\n\n```\nOIDC_ENABLED=True\nOIDC_CLIENT_ID=your_client_id\nOIDC_CLIENT_SECRET=your_client_secret\nOIDC_PROVIDER_NAME=Your Provider Name\nOIDC_DISCOVERY_URL=https://your-provider/.well-known/openid-configuration\n```\n### Other Optionals\n# Optional settings\n```\nLOCAL_LOGIN_DISABLE=True  # Disable password logins\nDISABLE_SIGNUPS=True      # Disable registration\n```\n\n### Additional Configuration\nFor detailed configuration options, see the [.env.template](https://github.com/harung1993/dollardollar/blob/main/.env.example) file.\n\n## 📸 Screenshots\n\n\u003cdiv align=\"center\"\u003e\n  \u003cimg width=\"45%\" alt=\"Dashboard\" src=\"https://github.com/user-attachments/assets/32542178-011c-4043-801f-75d50f773cf1\" /\u003e\n  \u003cimg width=\"45%\" alt=\"Expense Splitting\" src=\"https://github.com/user-attachments/assets/29f254a0-7773-4050-9251-ed8ba5b4df83\" /\u003e\n  \u003cimg width=\"45%\" alt=\"Settling Splits\" src=\"https://github.com/user-attachments/assets/1ca55758-5390-413b-b8e6-bb85e31263c0\" /\u003e\n  \u003cimg width=\"45%\" alt=\"Budgets\" src=\"https://github.com/user-attachments/assets/8db5c16b-37e4-4bf4-aa0e-396810e0380d\" /\u003e\n  \u003cimg width=\"45%\" alt=\"Categories\" src=\"https://github.com/user-attachments/assets/23d17592-b440-49f2-a0c5-dca9e8b57b2f\" /\u003e\n  \u003cimg width=\"45%\" alt=\"Portfolios\" src=\"https://github.com/user-attachments/assets/d20c5142-9261-413e-ae45-7588b21917d4\" /\u003e\n\n\u003c/div\u003e\n\n## 🤝 Development Approach\n\nThis project explores AI-assisted open-source development:\n- Leveraging AI tools for rapid prototyping\n- Combining technological innovation with human creativity\n- Iterative development with large language models\n  - Local LLMs (qwen2.5, DeepSeek-V3)\n  - Claude AI\n  - Human domain expertise\n  \n## 🤝 Contributing\n\nContributions are welcome! Please check out our contributing guidelines.\n\n1. Fork the repository\n2. Create your feature branch\n3. Submit a Pull Request\n\n## 🙏 Acknowledgements\n\n- Special thanks to my wife, who endured countless late nights of coding, provided unwavering support, and maintained patience during endless debugging sessions\n- Thanks to JordanDalby for creating and maintaining the Unraid template\n- Thanks to @elmerfds for the OIDC support!\n  \n## 📜 License\n\nThis project is licensed under the GNU Affero General Public License v3.0 - see the [LICENSE](license.txt) file for details.\n\nThis license requires anyone who runs a modified version of this software, including running it on a server as a service, to make the complete source code available to users of that service.\n\n## 🙏 Support\n\nIf you like this project and would like to support my work, you can buy me a coffee!\n\n\u003ca href=\"https://buymeacoffee.com/ccfw6gzz28\"\u003e\u003cimg src=\"https://img.buymeacoffee.com/button-api/?text=Buy me a coffee\u0026emoji=\u0026slug=ccfw6gzz28\u0026button_colour=FFDD00\u0026font_colour=000000\u0026font_family=Cookie\u0026outline_colour=000000\u0026coffee_colour=ffffff\" /\u003e\u003c/a\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fharung1993%2Fdollardollar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fharung1993%2Fdollardollar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fharung1993%2Fdollardollar/lists"}