{"id":19325548,"url":"https://github.com/k4u5h4l/ecospense","last_synced_at":"2026-04-13T03:49:30.218Z","repository":{"id":113838448,"uuid":"564818617","full_name":"k4u5h4L/Ecospense","owner":"k4u5h4L","description":"An open source expense tracker web app to help you save up and spend thoughtfully.","archived":false,"fork":false,"pushed_at":"2023-03-25T11:22:57.000Z","size":5523,"stargazers_count":0,"open_issues_count":17,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-01-06T06:43:40.731Z","etag":null,"topics":["apollo","budget","email","expense","finance","graphql","mongodb","next-auth","nextjs","nexus","otp","prisma","react","typescript"],"latest_commit_sha":null,"homepage":"https://ecospense.kaush.me","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/k4u5h4L.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"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":"2022-11-11T15:14:37.000Z","updated_at":"2023-01-28T09:24:44.000Z","dependencies_parsed_at":null,"dependency_job_id":"5bf9aef2-98d1-42f1-8472-375d66b0c24e","html_url":"https://github.com/k4u5h4L/Ecospense","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/k4u5h4L%2FEcospense","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/k4u5h4L%2FEcospense/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/k4u5h4L%2FEcospense/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/k4u5h4L%2FEcospense/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/k4u5h4L","download_url":"https://codeload.github.com/k4u5h4L/Ecospense/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240427327,"owners_count":19799471,"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":["apollo","budget","email","expense","finance","graphql","mongodb","next-auth","nextjs","nexus","otp","prisma","react","typescript"],"created_at":"2024-11-10T02:10:27.189Z","updated_at":"2026-04-13T03:49:25.189Z","avatar_url":"https://github.com/k4u5h4L.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003e\n  \u003cbr\u003e\n  \u003ca href=\"https://ecospense.kaush.me\"\u003e\n  \u003cimg src=\"assets/logo-full.png\" alt=\"Ecospense logo\" width=\"200\"\u003e\u003c/a\u003e\n  \u003cbr\u003e\n  Ecospense\n  \u003cbr\u003e\n\u003c/h1\u003e\n\n\u003ch4 align=\"center\"\u003eAn open source expense tracker web app to help you save up and spend thoughtfully. \n\u003c!-- \u003ca href=\"http://nextjs.org/\" target=\"_blank\"\u003eNextjs\u003c/a\u003e. --\u003e\n\u003c/h4\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"#\"\u003e\u003cimg alt=\"built with love\" src=\"https://forthebadge.com/images/badges/built-with-love.svg\"/\u003e\u003c/a\u003e\n  \u003ca href=\"#\"\u003e\u003cimg alt=\"js Badge\" src=\"https://forthebadge.com/images/badges/made-with-typescript.svg\"/\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/k4u5h4L\"\u003e\u003cimg alt=\"k4u5h4L GitHub badge\" height=\"37\" src=\"https://badgen.net/badge/GitHub/k4u5h4L?icon=github\u0026color=24292e\"/\u003e\u003c/a\u003e\n  \u003ca href=\"#\"\u003e\u003cimg alt=\"machine Badge\" height=\"37\" src=\"https://forthebadge.com/images/badges/works-on-my-machine.svg\"/\u003e\u003c/a\u003e\n  \u003ca href=\"#\"\u003e\u003cimg alt=\"not bug but feature\" height=\"37\" src=\"https://forthebadge.com/images/badges/not-a-bug-a-feature.svg\"/\u003e\u003c/a\u003e\n  \u003ca href=\"#\"\u003e\u003cimg alt=\"spaghetti Badge\" src=\"https://forthebadge.com/images/badges/contains-tasty-spaghetti-code.svg\"/\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"#getting-started\"\u003eGetting Started\u003c/a\u003e •\n  \u003ca href=\"#key-features\"\u003eKey Features\u003c/a\u003e •\n  \u003ca href=\"#tools-used\"\u003eTools Used\u003c/a\u003e •\n  \u003ca href=\"#development-setup\"\u003eDevelopment Setup\u003c/a\u003e •\n  \u003ca href=\"#misc\"\u003eMisc\u003c/a\u003e\n\u003c/p\u003e\n\n## Getting Started\n\nYou can head over to [ecospense.kaush.me](https://ecospense.kaush.me) and start using the site! You'll need to create an account before you can do anything though.\n\nIf you want to self host, please head on to \u003ca href=\"#development-setup\"\u003eDevelopment Setup\u003c/a\u003e to see how to set up on your local machine.\n\n## Key Features\n\n-   [x] Real time management of funds.\n-   [x] Support for multiple accounts.\n-   [x] You can now add goals and track how much you have saved for it.\n-   [ ] Analytics/future forecasting your spending habits.\n-   [x] External news articles right in the app!\n-   [x] Passwordless logins! Just enter your email and use the OTP!\n-   [x] Cross platform usability, both on Android and iOS using PWA technology. (UI is currently not really optimised for desktop users).\n-   [x] Support for 25+ most traded currencies.\n-   [ ] Chat with an AI helper regarding spending and other financial advice (probably will use an external AI modal like ChatGPT here).\n-   [x] Quick convertion of currencies with real time exchange rates.\n-   [ ] Logging of history of transitions and activities with scope to reverse transactions.\n-   [ ] Support for tracking monthly bills and instant payment responses.\n-   [x] Easily self hostable with just a vercel account, MongoDB access, news API keys and SMTP keys.\n\nTo find more features or want to see the future roadmap, head on to the [issues section](https://github.com/k4u5h4L/Ecospense/issues).\n\n## Tools Used\n\n-   Next.js as a full stack React framework.\n-   Typescript as the type safe layer over Javascript.\n-   Next-auth for authentication and passwordless logins.\n-   GraphQL as the API language.\n-   Apollo client and Apollo server graphql implementations on the client and server respectively.\n-   Nexus as the GraphQL schema management.\n-   MongoDB as the primary database.\n-   Prisma as the database ODM.\n-   Apexcharts to visualise graphs and charts.\n-   Framer motion to handle page animations.\n-   Gmail SMTP to send emails.\n-   Brain.js (tentatively) as the ML lib to forecast spending habits.\n-   Dicebear to generate fun profile pictures.\n\n## Development Setup\n\n```bash\n# Clone this repository\n$ git clone https://github.com/k4u5h4L/Ecospense.git ecospense\n\n# Navigate into the repository\n$ cd ecospense\n\n# Install dependencies\n$ yarn install\n\n# Add required API keys and other secrets in a `.env` file. You can check the `.env.sample` file to view the different API keys which are required.\n\n# Run the development server\n$ yarn dev\n\n# To create a production build and start, run\n$ yarn run build \u0026\u0026 yarn start\n```\n\nA server would have start on [localhost:3000](http://localhost:3000/).\n\n\u003e **Note**\n\u003e If you're using `npm`, see corresponding commands for `npm` as opposed to `yarn`.\n\n## Misc\n\nEcospense is a free software, and is developed by me as a side project. I had created this site to track my finances using an app i myself created, and I decided to share if someone else also finds it useful. I am not responsible for any issues which may arise when the site is hosted. I will not sell any user data if you intend to use the current version at [ecospense.kaush.me](https://ecospense.kaush.me). However, it is advised not to enter any confidential information on the site, as there is a reason I am not connecting it to any banking solution as this is purely a personal tracker with no correspondence to correctness of your account details.\n\n\u003c!-- END --\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fk4u5h4l%2Fecospense","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fk4u5h4l%2Fecospense","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fk4u5h4l%2Fecospense/lists"}