{"id":23008813,"url":"https://github.com/ishantsikdar/ewallet","last_synced_at":"2025-04-02T16:12:01.283Z","repository":{"id":247804335,"uuid":"826707965","full_name":"ishantSikdar/ewallet","owner":"ishantSikdar","description":"eWallet System, aims to perform operations like a real e-wallet applications like PayTM. Transfer funds from one user to another, deposit and withdraw funds from external banks, and track the movement of funds.","archived":false,"fork":false,"pushed_at":"2024-08-17T08:09:58.000Z","size":1361,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-08T06:42:47.002Z","etag":null,"topics":["ewallet","expressjs","next-auth","nextjs","nodejs","postgresql","prisma","reactjs","turborepo","typescript","web-hook"],"latest_commit_sha":null,"homepage":"https://ewallet.easc01.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/ishantSikdar.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":"2024-07-10T08:16:40.000Z","updated_at":"2024-08-17T10:36:17.000Z","dependencies_parsed_at":"2024-08-15T23:01:59.048Z","dependency_job_id":"d8abc7a8-5ffa-4d9b-9ea6-3c13a21eef70","html_url":"https://github.com/ishantSikdar/ewallet","commit_stats":null,"previous_names":["ishantsikdar/ewallet-paytm"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ishantSikdar%2Fewallet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ishantSikdar%2Fewallet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ishantSikdar%2Fewallet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ishantSikdar%2Fewallet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ishantSikdar","download_url":"https://codeload.github.com/ishantSikdar/ewallet/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246847140,"owners_count":20843444,"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":["ewallet","expressjs","next-auth","nextjs","nodejs","postgresql","prisma","reactjs","turborepo","typescript","web-hook"],"created_at":"2024-12-15T09:11:24.642Z","updated_at":"2025-04-02T16:12:01.262Z","avatar_url":"https://github.com/ishantSikdar.png","language":"TypeScript","readme":"# eWallet System\n\nThis is repository contains web softwares for a eWallet system.\n\nSystem aims to perform operations like a real e-wallet applications like PayTM, i.e, able to transfer funds from one user to another, deposit and withdraw funds from external banks, and track the movement of funds.\n\nHere, I tried to spoof the external bank softwares, i.e, they mimicks like a bank software, but arent, they just play along to complete the flow of the application. \n\n## Architecture\n\n![alt text](docs/architecture.png)\n\n### End User to Bank Communication\n\n![alt text](docs/end-user-to-bank.png)\n\n### Features\n\n  - Add balance into Wallet (Withdraw)\n  \n    ![alt text](docs/withdraw-architecture.png)\n\n  - Deposit wallet balance into Bank (Deposit)\n  \n    ![alt text](docs/deposit-architecture.png)\n\n  - P2P Wallet balance transfer\n  \n    ![alt text](docs/P2PArchitecture.png)\n\n### Login Flow\n\n![alt text](docs/login-flow.png)\n\n\n\n### Schema\n\n  ![alt text](docs/db-schema.png)\n\n## Quick start\n\nRun the following command to start all applications:\n\n```sh\nnpm run dev\n```\n\n## What's inside?\n\nThis Turborepo includes the following packages/apps:\n\n### Apps\n\n- `end-user`: [Next.js](apps/end-user/) app for end users to use the wallet.\n- `bank-webhook`: [Node.js](apps/bank-webhook/) app to receive requests from integrated banks.\n- `bank-mock`: [Node.js](apps/bank-mock/) app to mimick a bank system.\n- `bank-interface`: [React.js](apps/bank-interface/) app to mimick a bank user interface.\n\n### Packages\n- `@repo/ui`: [React.js](packages/ui/) component library that can be shared across apps.\n- `@repo/common`: Utility folder containing common [TypeScript](packages/common/) modules and functions.\n- `@repo/db`: Singleton [Prisma](packages/db/) client.\n- `@repo/store`: Centeralised folder for [Recoil](packages/store/) hooks, atoms and selectors.\n\nEach package/app is 100% Typescript.\n\n[Excalidraw](https://excalidraw.com/#json=64FyRO6VSFQKsHQWlCylK,Jb3F5IV010z89Y5kg09fKQ)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fishantsikdar%2Fewallet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fishantsikdar%2Fewallet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fishantsikdar%2Fewallet/lists"}