Skip to content

RayRizzling/tdex-explorer

Repository files navigation

TDEX Explorer

TDEX Explorer Logo

πŸ“‘ Table of Contents

  1. About TDEX Explorer
  2. πŸš€ Key Features
  3. πŸ“„ Changelog
  4. πŸ”‘ Core Functionalities
    1. 1. Fetching TDEX Data
    2. 2. Displaying and Filtering Provider Data
    3. 3. Provider Interaction
    4. 4. Market Balance Management
    5. 5. Customizable Dashboards
    6. 6. Asset and Token Tracking
    7. 7. Decentralized & Self-Hosted
    8. 8. Data Visualization
  5. πŸ’» Getting Started
    1. πŸ› οΈ Prerequisites
    2. πŸ”§ Installation
    3. πŸ“¦ Build for Production
  6. βš™οΈ Technologies Used
  7. πŸ“š Documentation
    1. Code Documentation Approach
  8. πŸ› οΈ Contributing
  9. 🌍 Community and Support
  10. πŸ“„ License
  11. Supported by

About TDEX Explorer

Welcome to TDEX Explorer, an open-source initiative designed to foster user-centered development of the TDEX network. This repository serves as a core codebase for building and managing the TDEX Dashboard, a user-friendly interface for exploring and interacting with TDEX.

Our mission with tdex-explorer is to empower every user to deploy their own dashboard instance, promoting a decentralized approach without reliance on centralized providers. This means low-cost deployment and self-hosted freedomβ€”any user can independently host their dashboard, avoiding high server costs or complex infrastructure requirements.

...

πŸš€ Key Features

  • User-Centric Development: Prioritizes user needs in expanding and interacting with the TDEX ecosystem.
  • Open Access: Allows anyone to set up, deploy, and maintain their own dashboard instance, providing full control over their data and interactions.
  • Decentralized Operation: No dependency on centralized service providers, ensuring a cost-effective and scalable solution for all users.

πŸ“„ Changelog

For a detailed list of all notable changes to this project, please refer to the CHANGELOG.md.

πŸ”‘ Core Functionalities

TDEX Explorer provides a powerful, user-centric interface for interacting with the TDEX network. Below is an overview of the key functionalities that the app supports:

1. Fetching TDEX Data 🌐

  • The app retrieves data from the TDEX network, including market information, asset data, and provider details.
  • Supports querying live market balances, mempool stats, and other relevant metrics from the TDEX API or liquid network explorers (like esplora).

2. Displaying and Filtering Provider Data πŸ”Ž

  • The dashboard allows users to explore a list of TDEX providers, displaying detailed information about each provider.
  • Users can filter providers by various criteria such as market, asset type, or status.
  • Real-Time Updates: The app dynamically updates the displayed provider information as data is fetched or updated from the TDEX network.

3. Provider Interaction 🀝

  • Users can interact with TDEX providers by selecting specific providers and viewing their status, market balances, and recent activity.
  • The interface allows users to easily view relevant data, ensuring seamless interaction with the TDEX ecosystem.

4. Market Balance Management πŸ“Š

  • Fetching Market Balances: TDEX Explorer fetches and displays the balances of assets in real-time for various markets.
  • Market Filters: Users can filter markets based on criteria such as asset type, market volume, and more to narrow down the information presented.
  • Statistical Overview: A comprehensive display of market statistics helps users gain insights into market trends and balances.

5. Customizable Dashboards πŸ–₯️

  • The app supports customizable dashboard layouts, allowing users to organize market data and provider information as per their preferences.
  • Provides a flexible, modular UI where users can add, remove, and resize widgets displaying the most relevant information.

6. Asset and Token Tracking πŸ’°

  • Users can track the status of various assets and tokens across different TDEX markets.
  • Real-time asset updates provide users with the latest data, including price fluctuations, volume changes, and liquidity metrics.

7. Decentralized & Self-Hosted πŸ”’

  • The core functionality ensures that users have full control over their data and interaction with the TDEX network, thanks to a decentralized and self-hosted architecture.
  • There’s no dependency on centralized providers, ensuring low-cost deployment and scalability for users wishing to host their own instance of the dashboard.

8. Data Visualization πŸ“‰

  • Data from the TDEX network is displayed through a variety of visualizations, including charts and tables, to provide a clear overview of market dynamics and provider activities.
  • Advanced filtering options allow users to customize their views and focus on specific areas of interest, such as a specific provider or market pair.

πŸ’» Getting Started

To get up and running, follow these steps to set up a development environment.

πŸ› οΈ Prerequisites

Make sure you have Node.js installed. The legacy code is compatible with Node.js v20.14.0 and npm v10.7.0. Compatibility with other versions might apply but has not been tested.

πŸ”§ Installation

  1. Clone the repository:
   git clone https://github.com/RayRizzling/tdex-explorer.git
    cd tdex-explorer
    npm install
  1. Start the development server:
    npm run dev

Visit http://localhost:3000 to view the application in the browser.

πŸ“¦ Build for Production

To create a production build, use the following command:

    npm run build

This will compile an optimized build of the app that’s ready to be deployed.

Test the production build with:

    npm start

Visit http://localhost:3000 to view the application (production build) in the browser.

βš™οΈ Technologies Used

🌟 Next.js: Fast React-based framework for building server-rendered applications. 🌟 TDEX Basics of True Dex BOTD: Integration with TDEX network resources for seamless exploration and interaction. 🌟 TypeScript: Strongly typed JavaScript for more robust code. 🌟 Tailwind CSS: Utility-first CSS framework for quickly styling the app with a responsive and custom design. 🌟 Nyxbui: A flexible UI component library and framework including framer motion and more. - Nyxbui is built using Shadcn as its core. 🌟 Aceternity UI: A design system to create beautiful, responsive, and performant UIs with advanced features and customization options. - Combining Aceternity UI and Nyxbui is a very advanced approach/technique, inexperienced devs should use the basic Shadcn components which are fully compatible with the code base.

πŸ“š Documentation

The documentation for this project is fully integrated into the codebase. We have embedded clear, concise comments and code annotations to explain the purpose and functionality of every major section of the code. This ensures that as you work through the code, you can easily follow its logic and understand its structure.

Code Documentation Approach

  • Inline Comments: Each function and key code block is commented to explain its logic.
  • Type Annotations: Every function, method, and variable uses TypeScript's type annotations to ensure a clear understanding of data structures, function signatures, and return types.
  • Best Practices: The code follows industry best practices such as SOLID principles, clean code guidelines, and modularity, making it easy to extend and maintain.
  • Code Organization: We follow a clear structure for our directories and files, separating concerns such as data handling, UI components, and application logic.

We are actively working to formalize and expand this documentation into a more comprehensive guide for users, developers, and contributors. If you need additional information or have any questions about specific parts of the code, feel free to reach out to the community via the TDEX Telegram group.

We welcome contributions that improve documentation clarity, such as tutorials, examples, or explanations of advanced features.

πŸ› οΈ Contributing

We welcome contributions to improve and expand tdex-explorer. To get started:

  1. Fork the repository.
  2. Create a new branch for your feature or bugfix.
  3. Submit a pull request with a clear description of the change.

Thank you for contributing to the growth of a decentralized future with TDEX!

🌍 Community and Support

Join the TDEX community on Telegram to discuss this project, share feedback, or get support.

πŸ“„ License

This project is licensed under the MIT License. See LICENSE for more information.


Supported by:

This project is proudly supported 0x41 Labs

About

Explore TDEX providers and market stats

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages