Skip to content

Neko-Protocol/Neko-DApp-Test

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

82 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
image

DApp

A RWA platform built on Stellar blockchain, featuring liquidity pools, lending, borrowing, perpetual futures and portfolio management.

Features

  • Dashboard: Real-time portfolio analytics and performance metrics
  • Liquidity Pools: Manage and track NFT-based liquidity positions
  • Lending & Borrowing: Participate in DeFi lending markets
  • Token Swap: Seamless token exchange interface
  • Perpetuals: Trade perpetual futures contracts for stocks.
  • Portfolio Management: Track your assets and returns across all positions

Quick Start

Prerequisites

Before getting started, ensure you have:

πŸ“– If you need a more detailed guide in Spanish, visit SETUP.md

Installation

  1. Clone the repository:

    git clone https://github.com/Neko-Protocol/Neko-DApp.git
    cd Neko-DApp
  2. Install Stellar CLI (required for generating oracle contract bindings):

    Linux:

    curl -sSLO https://github.com/stellar/stellar-cli/releases/latest/download/stellar-cli-x86_64-unknown-linux-gnu.tar.gz
    tar -xzf stellar-cli-*.tar.gz
    sudo mv stellar /usr/local/bin/

    macOS (Intel):

    curl -sSLO https://github.com/stellar/stellar-cli/releases/latest/download/stellar-cli-x86_64-apple-darwin.tar.gz
    tar -xzf stellar-cli-*.tar.gz
    sudo mv stellar /usr/local/bin/

    macOS (Apple Silicon):

    curl -sSLO https://github.com/stellar/stellar-cli/releases/latest/download/stellar-cli-aarch64-apple-darwin.tar.gz
    tar -xzf stellar-cli-*.tar.gz
    sudo mv stellar /usr/local/bin/

    Alternativa (con Cargo):

    cargo install --git https://github.com/stellar/stellar-cli --locked stellar-cli

    Verificar instalaciΓ³n:

    stellar --version
  3. Install dependencies:

    npm install
  4. Generate Oracle contract bindings (se hace automΓ‘ticamente en el build, pero puedes hacerlo manualmente):

    npm run generate:oracle-binding
  5. Build contract packages:

    npm run build --workspace=packages/oracle
  6. Start the development server:

    npm start
    # o alternativamente:
    npm run dev

The app will be available at http://localhost:5173

Project Structure

neko-dapp/
β”œβ”€β”€ contracts/ # Stellar smart contracts
β”œβ”€β”€ packages/ # Auto-generated contract clients
β”œβ”€β”€ src/
β”‚ β”œβ”€β”€ components/
β”‚ β”‚ β”œβ”€β”€ modules/
β”‚ β”‚ β”‚ β”œβ”€β”€ borrow/ # Borrow interface
β”‚ β”‚ β”‚ β”œβ”€β”€ dashboard/ # Dashboard views
β”‚ β”‚ β”‚ β”œβ”€β”€ lend/ # Lending interface
β”‚ β”‚ β”‚ β”œβ”€β”€ pools/ # Pool management
β”‚ β”‚ β”‚ β”œβ”€β”€ swap/ # Token swap
β”‚ β”‚ β”‚ └── ui/ # Shared UI components
β”‚ β”‚ β”œβ”€β”€ ConnectAccount.tsx
β”‚ β”‚ β”œβ”€β”€ NetworkPill.tsx
β”‚ β”‚ └── WalletButton.tsx
β”‚ β”œβ”€β”€ contracts/ # Contract interaction helpers
β”‚ β”œβ”€β”€ debug/ # Contract debugging tools
β”‚ β”œβ”€β”€ hooks/ # Custom React hooks
β”‚ β”œβ”€β”€ pages/ # Main pages
β”‚ β”œβ”€β”€ providers/ # Context providers
β”‚ β”œβ”€β”€ util/ # Utility functions
β”‚ β”œβ”€β”€ App.tsx
β”‚ └── main.tsx
β”œβ”€β”€ public/ # Static assets
β”œβ”€β”€ environments.toml # Environment configurations
└── package.json

Available Scripts

  • npm start / npm run dev - Start development server with hot reload
  • npm run build - Build for production (genera bindings del oracle, construye paquetes, compila TypeScript y construye la app)
  • npm run generate:oracle-binding - Genera los bindings TypeScript del contrato oracle
  • npm run preview - Preview production build
  • npm run lint - Run ESLint
  • npm run format - Format code with Prettier
  • npm run install:contracts - Instala y construye todos los paquetes de contratos

Technology Stack

Frontend

  • Framework: React 19 with TypeScript
  • Build Tool: Vite
  • Routing: React Router v7
  • Styling: Tailwind CSS 4 + Material-UI
  • Charts: Chart.js with react-chartjs-2

Blockchain

  • Network: Stellar
  • SDK: @stellar/stellar-sdk
  • Wallet: Stellar Wallets Kit (@creit.tech/stellar-wallets-kit)
  • Smart Contracts: Rust with Soroban

Deployment

Contract Deployment

  1. Publish your contracts to the registry:

    stellar registry publish
  2. Deploy contract instances:

    stellar registry deploy \\
    --deployed-name my-contract \\
    --published-name my-contract \\
    -- \\
    --param1 value1
  3. Create local aliases:

    stellar registry create-alias my-contract

Frontend Deployment

Build the frontend for production:

npm run build

Deploy the contents of the dist/ directory to your hosting platform of choice (Vercel, Netlify, AWS, etc.).

Environment Configuration

The project uses environments.toml for network-specific configurations:

  • local: Local Stellar network for development
  • testnet: Stellar testnet
  • mainnet: Stellar mainnet (production)

Configure your active environment in .env:

STELLAR_SCAFFOLD_ENV=local

Key Components

DeFi Features

  • Swap: Token exchange interface
  • Lend: Supply assets to lending pools
  • Borrow: Borrow against collateral
  • Pools: Manage liquidity positions

Contributing

Contributions are welcome! Please follow these steps:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Please ensure your code:

  • Passes all linting checks (npm run lint)
  • Is formatted with Prettier (npm run format)
  • Includes appropriate TypeScript types
  • Follows the existing code style

License

This project is licensed under the MIT License.

Links

Support

For questions and support, please open an issue on GitHub or reach out to the team.

About

The DApp for the Neko Protocol.

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •  

Languages