You can view a live preview of Circle Wallet here.
This project is a custom wallet application built on Circle's Programmable Wallets platform. The aim is to provide users with a seamless and feature-rich experience for managing their digital assets, leveraging the power of USDC and Circle's technology stack. In addition to core wallet functionalities such as wallet creation, transfers, and recovery, this application also integrates social login and contacts features to enhance usability and convenience.
-
Wallet Creation: Users can easily create a new wallet by providing basic information and setting up security measures such as PIN authentication.
-
Wallet Transfers: Seamless token transfers between wallets, allowing users to send and receive USDC and other supported cryptocurrencies effortlessly.
-
Wallet Recovery: PIN recovery functionality enables users to regain access to their wallets in case they forget their PIN, ensuring a secure and reliable experience.
-
Social Login: Users can choose to log in to their wallets using their existing social media accounts, simplifying the authentication process and improving user onboarding.
-
Contacts: Personalized contacts feature allows users to save and manage frequently used wallet addresses, making it easy to send tokens to friends, family, or business associates.
- Next.js: Next.js is used as the framework for building the frontend of the application, providing server-side rendering and routing capabilities.
- MongoDB: MongoDB serves as the database for storing user accounts, wallet information, and transaction history.
- Tailwind CSS: Tailwind CSS is utilized for styling the user interface, enabling rapid development and customization of UI components.
- Circle API: Circle's API is integrated to facilitate wallet creation, transfers, and other core functionalities, leveraging the power of Programmable Wallets.
- Clone the Repository:
git clone https://github.com/priyanshuverma-dev/circle_wallet.git
- Install Dependencies:
npm install
- Set Up Environment Variables: Create a
.env
file based on the provided.env.example
and fill in the required configuration variables. - Start the Development Server:
npm run dev
- Open the Application: Visit
http://localhost:3000
in your web browser to access the wallet application.