GithubHelp home page GithubHelp logo

pradeep-selva / aa-swap-ethcc-be Goto Github PK

View Code? Open in Web Editor NEW
2.0 3.0 2.0 104 KB

1Wallet is a gasless web3 wallet leveraging account abstraction for various actions like swaps on platforms such as 1inch, with WebAuthn authentication for secure FaceID/TouchID login without storing private keys

Home Page: https://ethglobal.com/showcase/1wallet-3e5z6

License: MIT License

TypeScript 43.63% Makefile 0.93% Solidity 55.15% Dockerfile 0.28%
1inch account-abstraction eip4337 safe stackup wallet webauthn ethglobal

aa-swap-ethcc-be's Introduction

1Wallet Infra - Gasless, Seedless HID Based Web3 Wallet

1Wallet Infra serves as the foundation for both 1Wallet contracts and the backend server, working in tandem to deliver the exceptional gasless wallet experience. It excels at handling abstract account transaction relaying through bundler and deployments in a seamless, self-custodial manner, where account authentication occurs via HID face ID/TouchID instead of seed phrases. Leveraging the SAFE wallet ecosystem, it ensures secure and efficient transaction executions.

1Wallet's seamless UI can be found, HERE.

Introduction

1Wallet is a gasless web3 wallet that utilizes the Safe {WALLET} and the Safe AA SDK, enabling users to perform various actions such as swaps on platforms like 1inch. The wallet's core feature is the utilization of WebAuthn for authentication, allowing users to authenticate requests using FaceID or TouchID without the need to store any private keys or seed phrases.

Key Features

  • Gasless Transactions: 1Wallet enables gasless transactions by relaying calldata to the entrypoint for execution on the Safe wallet, saving users from paying gas fees for their transactions.

  • Secure Authentication: WebAuthn is used for authentication, ensuring a high level of security as the user's private keys are stored in the device's secure enclave.

  • Swaps on 1inch: The demo showcases the capability of the wallet by enabling users to place swaps on 1inch in a gasless fashion.

  • Self-Custodial and Trustless: 1Wallet allows users to manage their assets and generate orders via their devices in a self-custodial and trustless manner.

Dependencies

1Wallet is built on the following technologies:

  • Next.js: A React framework for building server-side rendered and static websites. (UI)

  • Safe {WALLET}: Provides the foundation for the gasless transaction modules and abstract automated wallet management.

  • WebAuthn: Enables secure and convenient authentication using FaceID or TouchID.

  • Stackup Bundler: Used for relaying transactions to entrypoint for execution.

  • 1inch: The 1inch API v5, Pathfinder, is an advanced discovery and routing algorithm that facilitates asset exchanges at the best rates by finding efficient paths for token swaps across protocols and market depths.

  • Supabase: It is utilized as the robust database solution to store user metadata, orders history, and other relevant information for seamless retrieval and management in the 1Wallet application.

Usage

To use 1Wallet Server, follow the steps below:

  1. Clone the repository to your local machine.
  2. Install the necessary dependencies using yarn.
  3. Create an env with -
PORT=
SUPABASE_URL=
SUPABASE_API_KEY=
RPC_URL=
  1. Start the development server with yarn watch
  2. To test this on a live build, run yarn start
  3. Visit the local development URL in your web browser to access the 1Wallet server.

To use 1Wallet contracts, follow the steps below:

  1. Clone the repository to your local machine.
  2. Install the necessary dependencies using forge install
  3. Create an env with -
MAINNET_RPC=
MAINNET_PRIVATE_KEY=
  1. To perform local deployments to test, from root directory run make demo_account

Demo

This product's demo can be viewed here.

License

MIT © 1Wallet

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.