{"id":21388641,"url":"https://github.com/sec-bit/mfer-safe-lite","last_synced_at":"2025-03-16T12:41:51.971Z","repository":{"id":161895160,"uuid":"619459795","full_name":"sec-bit/mfer-safe-lite","owner":"sec-bit","description":"MferSafe Lite Browser Extension","archived":false,"fork":false,"pushed_at":"2023-04-03T15:06:49.000Z","size":175,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-23T00:27:00.910Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","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/sec-bit.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":"2023-03-27T07:26:25.000Z","updated_at":"2023-07-26T10:20:00.000Z","dependencies_parsed_at":null,"dependency_job_id":"04f677df-8fdf-4d3d-b2ac-fc8d9fe51e8c","html_url":"https://github.com/sec-bit/mfer-safe-lite","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sec-bit%2Fmfer-safe-lite","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sec-bit%2Fmfer-safe-lite/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sec-bit%2Fmfer-safe-lite/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sec-bit%2Fmfer-safe-lite/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sec-bit","download_url":"https://codeload.github.com/sec-bit/mfer-safe-lite/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243871524,"owners_count":20361375,"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":[],"created_at":"2024-11-22T12:18:58.000Z","updated_at":"2025-03-16T12:41:51.952Z","avatar_url":"https://github.com/sec-bit.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MferSafe Lite Browser Extension\n\nMferSafe Lite is a browser extension designed to help users build transaction bundles for their smart contract wallets. It simplifies the process of composing and simulating transaction bundles, allowing for a smoother user experience on decentralized exchanges (DEXs) and other dApps.\n\n## Features\n\n- No private keys required\n- Requires 2 RPC URLs for optimal functionality\n- Supports ENS on the address field when using the ETH mainnet\n- \"Fake Account Address\" feature for added privacy: Provides dApp frontends with a fake address and replaces it with the real address on the fly when calling `eth_call`. This allows users to hide their real addresses from dApp frontends while still displaying their real address's asset balances.\n\n## How MferSafe Lite Works\n\nMferSafe Lite streamlines the process of bundling transactions on DEXs such as Curve.fi. Users no longer need to wait for token approval transactions to be confirmed before performing a swap action. MferSafe Lite simplifies the process of composing and simulating transaction bundles, allowing for a smoother user experience on decentralized exchanges (DEXs) and other dApps.\n\n### Requirements\n\n1. MferNode backend: Simulates transaction bundles and provides state diffs. You can host your own node using a simple Docker Compose setup. For more information, visit: https://github.com/sec-bit/mfer-node\n2. Web3 RPC: For `eth_call`, as some dApp frontends do not support state override (we recommend using Alchemy.com)\n\n### Process\n\n1. MferSafe Lite receives parameters for `eth_sendTransaction(tx)` and sends them to the MferNode backend for simulation.\n2. MferNode returns the state diff (i.e., the state changes that the transaction will cause).\n3. The browser extension injects the state diff into every `eth_call()` as the last parameter for state override.\n\n## Getting Started\n\nTo start using MferSafe Lite, follow these simple steps:\n\n1. Install the MferSafe Lite browser extension on your preferred browser [Chrome Webstore](https://chrome.google.com/webstore/detail/mfersafe-lite/pijjifejekgncdkllnapjphjhhfiklhk).\n2. Configure the required RPC URLs (MferNode backend and Web3 RPC) in the extension settings.\n3. Enable the \"Fake Account Address\" feature if desired.\n4. Begin using MferSafe Lite with your favorite dApps to create and simulate transaction bundles seamlessly.\n\n### MferNode RPC (Our node is for testing; you can [self-host](https://github.com/sec-bit/mfer-node#build-instructions))\n\n| Chain                                                 | URL                                |\n| ----------------------------------------------------- | ---------------------------------- |\n| ETH                                                   | https://eth.mfernode.xyz           |\n| BSC                                                   | https://bsc.mfernode.xyz           |\n| Polygon                                               | https://polygon.mfernode.xyz       |\n| Arbitrum                                              | https://arb.mfernode.xyz           |\n\n\n## Support \u0026 Feedback\n\nIf you have any questions, suggestions, or need assistance, feel free to open a issue on our repository.\n\n## Development Environment\n\n### Setup Requirements\n\n- Install [Pnpm](https://pnpm.io/installation)\n\n### Dev mode\n\n```bash\npnpm i\npnpm dev\n```\n\nOpen `chrome://extensions/`, enable `Developer mode`. Click `Load unpacked` button and selct `dist` folder.\n\n### Build\n\n```bash\npnpm build\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsec-bit%2Fmfer-safe-lite","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsec-bit%2Fmfer-safe-lite","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsec-bit%2Fmfer-safe-lite/lists"}