{"id":25216297,"url":"https://github.com/poveroh/poveroh","last_synced_at":"2026-04-10T02:19:58.734Z","repository":{"id":275856413,"uuid":"926093799","full_name":"Poveroh/poveroh","owner":"Poveroh","description":"A unified platform to track your wealth.","archived":false,"fork":false,"pushed_at":"2025-04-03T20:12:21.000Z","size":4060,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-03T20:34:05.751Z","etag":null,"topics":["express","postgresql","prisma","react","tailwindcss","turborepo","typescript"],"latest_commit_sha":null,"homepage":"https://poveroh.com","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Poveroh.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":null,"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}},"created_at":"2025-02-02T14:42:34.000Z","updated_at":"2025-04-03T20:12:24.000Z","dependencies_parsed_at":"2025-03-13T23:38:20.581Z","dependency_job_id":null,"html_url":"https://github.com/Poveroh/poveroh","commit_stats":null,"previous_names":["davidetarditi/poveroh","poveroh/poveroh"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Poveroh%2Fpoveroh","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Poveroh%2Fpoveroh/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Poveroh%2Fpoveroh/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Poveroh%2Fpoveroh/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Poveroh","download_url":"https://codeload.github.com/Poveroh/poveroh/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247312086,"owners_count":20918344,"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":["express","postgresql","prisma","react","tailwindcss","turborepo","typescript"],"created_at":"2025-02-10T19:17:37.302Z","updated_at":"2026-04-10T02:19:58.725Z","avatar_url":"https://github.com/Poveroh.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n\n\u003cimg src=\"./assets/bg_readme.png\" alt=\"Poverobg icon\" style=\"border-radius:10px\"\u003e\n\n# Poveroh\n\n#### A Open-Source platform to track personal finance, built for clarity\n\n\u003ch4\u003e\n\u003ca href=\"https://github.com/Poveroh/poveroh/issues/\"\u003eReport Bug\u003c/a\u003e\n\u003cspan\u003e · \u003c/span\u003e\n\u003ca href=\"https://github.com/Poveroh/poveroh/issues/\"\u003eRequest Feature\u003c/a\u003e\n\u003c/h4\u003e\n\n\u003cdiv\u003e\n\n[![License: GPL v3](https://img.shields.io/badge/License-GPLv3-blue.svg)](https://www.gnu.org/licenses/gpl-3.0)\n![GitHub commit activity](https://img.shields.io/github/commit-activity/w/poveroh/poveroh)\n![GitHub contributors](https://img.shields.io/github/contributors/poveroh/poveroh)\n\n\u003c/div\u003e\n\n---\n\n\u003e “Money doesn’t buy happiness, but I’d rather cry in a Ferrari.”\n\n\u003c/div\u003e\n\n\u003chr /\u003e\n\n\u003c!-- About the Project --\u003e\n\n## :star2: About Poveroh\n\n\u003cdiv align=\"center\"\u003e \n  \u003cimg src=\"./assets/dashboard_screenshot.jpg\" alt=\"screenshot\" /\u003e\n\u003c/div\u003e\n\nPoveroh is an open-source, web-based platform for tracking personal finances.\n\n### Why?\n\nThis platform was born from the desire to track personal finances in a detailed and structured way.\n\nOk, there are thousands of similar applications out there, but none of them truly fit certain needs. Many lack a clean and intuitive UI/UX, and the few that do are often expensive—locked behind subscriptions or premium plans. That’s why this project was started - it aims to provide a scalable, open-source alternative that is easy to use, fast, and flexible—built with simplicity and clarity in mind.\n\nThis platform is essentially a web-based version of a Google Spreadsheet finance tracker, enhanced with features to make everything more user-friendly (the mobile app is planned and is included in the roadmap :) ).\n\n### How it works?\n\nThe platform aggregates multiple bank accounts.\n\nUsers can manually input transactions or upload them via CSV or PDF.\n\nSince it’s designed to track personal wealth, a snapshot of the month (including investments) will be taken on the last day of each month. This allows users to keep a historical record, generate reports, and monitor the growth of their assets over time.\n\nIn addition to individual transactions and bank account aggregation, the goal is to provide a platform for tracking investments as well, allowing to add financial products such as ETFs, stocks, bonds, crypto, and more.\n\n\u003e **Note**: Since this platform was designed based on personal needs, it may not be fully complete or include all the features that other users might consider essential.\n\u003e\n\u003e If you notice something missing from the roadmap or have an idea you’d like to see implemented, feel free to open an issue and share your suggestion!\n\n\u003c!-- TechStack --\u003e\n\n## :space_invader: Tech Stack\n\n- \u003ca href=\"https://www.typescriptlang.org/\"\u003eTypescript\u003c/a\u003e\n- \u003ca href=\"https://nextjs.org/\"\u003eNext.js\u003c/a\u003e\n- \u003ca href=\"https://tailwindcss.com/\"\u003eTailwindCSS\u003c/a\u003e\n- \u003ca href=\"https://better-auth.com/\"\u003eBetter-auth\u003c/a\u003e\n\n- \u003ca href=\"https://nodejs.org/en\"\u003eNode.js\u003c/a\u003e\n- \u003ca href=\"https://expressjs.com/\"\u003eExpress.js\u003c/a\u003e\n- \u003ca href=\"https://www.prisma.io/\"\u003ePrisma\u003c/a\u003e\n\n- \u003ca href=\"https://www.postgresql.org/\"\u003ePostgreSQL\u003c/a\u003e\n\n\u003c!-- Color Reference --\u003e\n\n## :art: Color Reference\n\n| Color            | Hex     |\n| ---------------- | ------- |\n| Primary Color    | #4E594A |\n| Secondary Color  | #278664 |\n| Background Color | #1C1C1C |\n| Text Color       | #FFFFFF |\n\n\u003c!-- Getting Started --\u003e\n\n## :toolbox: Getting Started\n\nTo get a local copy up and running, please follow these simple steps.\n\n\u003c!-- Prerequisites --\u003e\n\n### :bangbang: Prerequisites\n\nThis project uses:\n\n- [Node.js](https://nodejs.org/en/download/package-manager) (\u003e= 22)\n- [Docker](https://docs.docker.com/get-started/get-docker/) - to run PostgreSQL and NGIX CDN\n- NPM\n\n\u003c!-- Run Locally --\u003e\n\n## :running: Run Locally\n\n### Get start\n\n1. Clone the project\n\n    ```bash\n    git clone https://github.com/Poveroh/poveroh.git\n    ```\n\n2. Go to the project folder\n\n    ```bash\n    cd poveroh\n    ```\n\n3. Install dependencies\n\n    ```bash\n    npm install\n    ```\n\n4. Copy `.env.example` file to `.env`, then edit it with the necessary values. For more details, read [docs](docs/ENV_SETUP.md).\n\n    \u003e If you don't modify them, the default values are sufficient to run the project.\n    \u003e\n    \u003e **Warning**: Since these are default values, security is not guaranteed.\n\n    **Environment Files**: The project uses a dual environment system:\n    - `.env` - For local development (DATABASE_HOST=localhost:5432)\n    - `.env.production` - For Docker deployments (DATABASE_HOST=db:5432)\n\n    Running `npm run setup` will automatically create both files from `.env.example`.\n\n### Setup Database and CDN\n\n\u003e Docker and Docker Compose must be installed, up, and running on the machine.\n\n1. Run `setup` file\n\n    ```bash\n    npm run setup\n    ```\n\n    Note: the setup flow may create a small local `proxy` service and to make local subdomains work you may need to add host entries (the repository includes `scripts/setup/proxy.js` which can add them for you).\n\n    The command will execute the following steps:\n    - Create and run database docker image.\n    - Navigate to the `packages/prisma` directory.\n    - Generate the Prisma client.\n    - Apply any pending migrations to the database using Prisma.\n    - Create and run CDN ngix docker image.\n\n    \u003cbr\u003e\n\n    \u003e **⚠️ Warning:**  \n    \u003e If you encounter any difficulties or something doesn't go as planned, read [this file](scripts/README.md) to execute it manually.\n\n2. Create a user; open a browser to [localhost:3000/sign-up](http://localhost:3000/sign-up) and sign up.\n\n3. _Optionally_, you can run the following exactly script to generate and fill database with fake data:\n\n    ```bash\n    npm run setup:data --user=\u003cuser_id_created_before\u003e\n    ```\n\n    \u003e You can find user ID on the [personal information page](http://localhost:3000/account/profile)\n\n### Build and run\n\n1. Build project\n\n    ```bash\n    npm run build\n    ```\n\n2. Run project\n\n    ```bash\n    npm run dev\n    ```\n\n## :rocket: Deployment\n\n### Docker\n\n1. First of all, create a folder\n\n    ```bash\n    mkdir poveroh-selfhost\n    ```\n\n2. Navigate to this folder using the cd command.\n\n    ```bash\n    cd poveroh-selfhost\n    ```\n\n3. Download setup file\n\n    ```bash\n    curl -fsSL -o setup.sh https://raw.githubusercontent.com/Poveroh/poveroh/refs/heads/main/scripts/docker/setup.sh\n    ```\n\n4. Make it executable\n\n    ```bash\n    chmod +x setup.sh\n    ```\n\n5. Then run it\n\n    ```bash\n    ./setup.sh\n    ```\n\n    \u003e The script will create `.env` file. If you do not modify it, the default values are sufficient to run the project.\n    \u003e\n    \u003e If you want to build and run from scratch, download the repo (run only [Get start](#get-start) steps to download and setup), then run `npm run docker-dev`\n\n### Railway\n\n[![Deploy on Railway](https://railway.com/button.svg)](https://railway.com/deploy/UxenGr?referralCode=NfYCdO\u0026utm_medium=integration\u0026utm_source=template\u0026utm_campaign=generic)\n\n## :handshake: Contribuite\n\nThis repository follows the [GitHub](https://docs.github.com/en/get-started/using-github/github-flow) approach.\n\nThe development branch is `main`.\n\nFor more info, read the [docs](docs/CONTRIBUTING.md).\n\n\u003c!-- Roadmap --\u003e\n\n## :compass: Roadmap\n\nIn running order:\n\n- [x] Login\n- [x] Categories \u0026 subcategories\n- [x] Bank accounts\n- [x] Subscriptions\n- [x] Transaction\n    - [x] Manual insert\n    - [ ] Upload from CSV or PDF\n- [ ] Month's snapshot\n- [ ] Reports\n- [ ] Investments\n- [ ] Mobile app (iOS/Android) [probably in Flutter]\n\nTo give it an extra boost:\n\n- [ ] Live investments\n- [ ] What if: Based on monthly or annual spending, determine what you could have afforded if you hadn’t spent that money. This can help evaluate whether it’s necessary to reduce spending in non-essential categories to achieve certain goals.\n- [ ] Memes\n- [ ] Open banking\n\n\u003c!-- License --\u003e\n\n## :warning: License\n\nPoveroh is released under the [GNU Affero General Public License v3.0 (AGPL-3.0)](https://github.com/Poveroh/poveroh/blob/main/LICENSE).\n\nSee LICENSE.txt for more information.\n\n## :link: Useful links\n\n- [Github Repo](https://github.com/Poveroh/poveroh)\n- [Figma file](https://www.figma.com/design/SZz6f8cZ1mIE5s6Z4WGshu/Poveroh)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpoveroh%2Fpoveroh","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpoveroh%2Fpoveroh","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpoveroh%2Fpoveroh/lists"}