- 📍 Overview
- 👾 Features
- 🚀 UserFlow
- 🚀 Architecture
- 📁 Project Structure
- 🚀 Getting Started
- 📌 Project Roadmap
- 🔰 Contributing
- 🎗 License
- 🙌 Acknowledgments
- 🎥 Youtube
Our platform integrates a specialized, AI-assisted DeFi wallet with real-time data retrieval layers (RAG-driven models on LangChain) and a custom-built smart contract environment that emulates core functionalities of Uniswap-style AMMs and Compound-style lending protocols. This unified approach enables automated and semi-autonomous DeFi operations—such as liquidity provision, swapping, lending, and borrowing—executed intelligently and securely within a single cohesive framework.
Value Proposition:
By combining RAG-based market intelligence with AMM and lending protocols, the platform abstracts away the complexity of multi-step DeFi operations. It presents a technical proof-of-concept that a fully AI-integrated wallet can:
- Dynamically provide liquidity
- Automate asset swaps and portfolio adjustments
- Perform yield-optimizing lending operations
- Handle collateralized borrowing with robust guardrails
This harmonized approach leads to streamlined onboarding, enhanced risk management, and a frictionless user experience, ultimately driving more efficient and accessible DeFi participation.
-
AI-Driven Market Analytics:
Leveraging a Retrieval Augmented Generation (RAG) model integrated with LangChain, the system continuously indexes live market data from decentralized exchanges (DEXs) and lending protocols. This ensures that the AI layer provides timely, context-aware strategies—including portfolio comparisons, yield optimization, and risk assessments—without user intervention. -
Autonomous and Intent-Based Operations:
Users can execute operations like transferring tokens, swapping assets, providing liquidity, or borrowing against collateral through natural language instructions. The AI component interprets user commands, understands current market conditions, and proposes optimal transaction paths. The user maintains ultimate control by setting spending caps, collateralization thresholds, and approval checks. -
Automated Market Maker Integration (Uniswap-Style):
We implement a simplified AMM pool architecture that mimics Uniswap’s core logic.- Liquidity Provision: Users supply “Chill” tokens and ETH, receiving LP tokens proportional to their liquidity share.
- Token Swaps: The AMM curve allows automated swaps between Chill and ETH, dynamically adjusting based on the pool’s reserves.
This AMM model ensures continuous liquidity and price discovery. By integrating with the AI layer, the wallet can automatically suggest when to provide liquidity or rebalance based on on-chain data.
-
Lending and Borrowing (Compound-Style):
Our lending component is a reduced version of Compound’s logic, supporting:- USDC Deposits for Yield: Users lock USDC to earn interest from a lending pool.
- Collateralized Loans via LP Tokens: LP tokens from the AMM can be pledged as collateral. Borrowers can draw up to 80% of the LP token’s value in USDC. Failure to repay triggers liquidation of the collateralized LP tokens.
Integrating these functionalities into the AI framework allows the wallet to recommend lending opportunities or borrowing strategies, guided by dynamic interest rates, liquidity conditions, and user-defined risk parameters.
-
On-Chain Transaction Execution via AI: The system demonstrates that given the ABI and contract addresses of EVM-compatible swap and lending protocols, the AI layer can seamlessly interact with these contracts. By parsing user requests and current market conditions, it can generate and execute on-chain transactions—provisioning liquidity, performing swaps, initiating deposits, or taking loans—while maintaining user-defined security and regulatory constraints.
![Screenshot 2024-12-08 at 9 15 40 AM](https://private-user-images.githubusercontent.com/52580094/393561569-ce3f9904-008a-4068-9bf5-0c1ef564de85.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk1MTAzMDMsIm5iZiI6MTczOTUxMDAwMywicGF0aCI6Ii81MjU4MDA5NC8zOTM1NjE1NjktY2UzZjk5MDQtMDA4YS00MDY4LTliZjUtMGMxZWY1NjRkZTg1LnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjE0VDA1MTMyM1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWZjYWQ2NGViN2ZlNGRlYjg5MzBkMTQxYmNlYmFiYWU0Zjk3YTg5Nzk2YjY1ZTk5NDNmZmMwNmM4ZDM4NjdlZTQmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.xILcMecXriD660VvGQucfmOkNtvYzsRFV3uzXRxGM38)
![Screenshot 2024-12-08 at 9 21 42 AM](https://private-user-images.githubusercontent.com/52580094/393561754-90fa569b-734c-4330-9560-b76a3d08b252.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk1MTAzMDMsIm5iZiI6MTczOTUxMDAwMywicGF0aCI6Ii81MjU4MDA5NC8zOTM1NjE3NTQtOTBmYTU2OWItNzM0Yy00MzMwLTk1NjAtYjc2YTNkMDhiMjUyLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTQlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjE0VDA1MTMyM1omWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWFkMmM5NWZiNzBlYmQyMDZmMjM0MDc0NmQ4ZGZhMTU1NGI1YjIwNzgxNGQ4ZTFjMTJkOTcyMmFiN2JmYzE2NjUmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0.xqgCgXmt-jBXu28qTLnQnB2WbV8CxHN900ttGu8tRZI)
└── Athena-Wallet/
├── Athena-UI
│ ├── README.md
│ ├── eslint.config.js
│ ├── index.html
│ ├── package-lock.json
│ ├── package.json
│ ├── postcss.config.js
│ ├── public
│ ├── src
│ ├── tailwind.config.js
│ └── vite.config.js
├── Athena-backend-chat
│ ├── .DS_Store
│ ├── Dockerfile
│ ├── app.py
│ ├── docker-compose.yml
│ ├── memonics_generate.py
│ ├── oldwallet.txt
│ ├── requirements.txt
│ └── wallet_data.txt
└── EthAI
├── .dockerIgnore
├── .gitIgnore
├── Dockerfile
├── data
├── docker-compose.yml
├── main.py
├── models
├── requirements.txt
└── services
ATHENA-WALLET/
Athena-backend-chat
oldwallet.txt ❯ REPLACE-ME
wallet_data.txt ❯ REPLACE-ME
app.py ❯ REPLACE-ME
requirements.txt ❯ REPLACE-ME
memonics_generate.py ❯ REPLACE-ME
docker-compose.yml ❯ REPLACE-ME
Dockerfile ❯ REPLACE-ME
EthAI
.dockerIgnore ❯ REPLACE-ME
main.py ❯ REPLACE-ME
requirements.txt ❯ REPLACE-ME
.gitIgnore ❯ REPLACE-ME
docker-compose.yml ❯ REPLACE-ME
Dockerfile ❯ REPLACE-ME
models
lstm_model.py ❯ REPLACE-ME
services
predictor.py ❯ REPLACE-ME
data_preprocessor.py ❯ REPLACE-ME
data_fetcher.py ❯ REPLACE-ME
Athena-UI
postcss.config.js ❯ REPLACE-ME
package-lock.json ❯ REPLACE-ME
tailwind.config.js ❯ REPLACE-ME
vite.config.js ❯ REPLACE-ME
package.json ❯ REPLACE-ME
index.html ❯ REPLACE-ME
eslint.config.js ❯ REPLACE-ME
src
index.css ❯ REPLACE-ME
App.css ❯ REPLACE-ME
providers.tsx ❯ REPLACE-ME
App.jsx ❯ REPLACE-ME
main.jsx ❯ REPLACE-ME
App_Old.jsx ❯ REPLACE-ME
old_component
TransferComponent.jsx ❯ REPLACE-ME
WalletLoginComponent.jsx ❯ REPLACE-ME
SwapComponent.jsx ❯ REPLACE-ME
WalletComponent.jsx ❯ REPLACE-ME
WalletInitializationComponent.jsx ❯ REPLACE-ME
PortfolioComponent.jsx ❯ REPLACE-ME
chat.jsx ❯ REPLACE-ME
components
CreateLiquidity.jsx ❯ REPLACE-ME
AppBar.tsx ❯ REPLACE-ME
Header.tsx ❯ REPLACE-ME
pages
AIChat.jsx ❯ REPLACE-ME
Login.jsx ❯ REPLACE-ME
Market.jsx ❯ REPLACE-ME
LiquidityPool.jsx ❯ REPLACE-ME
InsideOverview.jsx ❯ REPLACE-ME
Dashboard.jsx ❯ REPLACE-ME
AddContact.jsx ❯ REPLACE-ME
Portfolio.jsx ❯ REPLACE-ME
ImportWallet.jsx ❯ REPLACE-ME
Before getting started with Athena-Wallet, ensure your runtime environment meets the following requirements:
- Programming Language: JavaScript
- Package Manager: Pip, Npm
- Container Runtime: Docker
Install Athena-Wallet using one of the following methods:
Build from source:
- Clone the Athena-Wallet repository:
❯ git clone https://github.com/soumikbaksi18/Athena-Wallet/
- Navigate to the project directory:
❯ cd Athena-Wallet
- Install the project dependencies:
❯ echo 'INSERT-INSTALL-COMMAND-HERE'
❯ npm install
❯ docker build -t soumikbaksi18/Athena-Wallet .
Run Athena-Wallet using the following command:
Using pip
❯ echo 'INSERT-RUN-COMMAND-HERE'
❯ npm start
❯ docker run -it {image_name}
Run the test suite using the following command:
Using pip
❯ echo 'INSERT-TEST-COMMAND-HERE'
❯ npm test
- 💬 Join the Discussions: Share your insights, provide feedback, or ask questions.
- 🐛 Report Issues: Submit bugs found or log feature requests for the
Athena-Wallet
project. - 💡 Submit Pull Requests: Review open PRs, and submit your own PRs.
Contributing Guidelines
- Fork the Repository: Start by forking the project repository to your github account.
- Clone Locally: Clone the forked repository to your local machine using a git client.
git clone https://github.com/soumikbaksi18/Athena-Wallet/
- Create a New Branch: Always work on a new branch, giving it a descriptive name.
git checkout -b new-feature-x
- Make Your Changes: Develop and test your changes locally.
- Commit Your Changes: Commit with a clear message describing your updates.
git commit -m 'Implemented new feature x.'
- Push to github: Push the changes to your forked repository.
git push origin new-feature-x
- Submit a Pull Request: Create a PR against the original project repository. Clearly describe the changes and their motivations.
- Review: Once your PR is reviewed and approved, it will be merged into the main branch. Congratulations on your contribution!
This project is protected under the SELECT-A-LICENSE License. For more details, refer to the LICENSE file.
- List any resources, contributors, inspiration, etc. here.