Skip to content

function03-labs/CowTools.info

Repository files navigation

Cowtools

Cowtools is a suite of tools to visualize Coincidence of Wants (CoWs) in batch auctions within the Cowswap protocol. The application provides insights into historical volume, showcases a CoWiness leaderboard, and displays data on recent batches.

Screenshot

App Screenshot CowTools.info

Features

  • Interactive dashboard with data visualization for batch auctions
  • Historical volume chart (based on Recharts)
  • CoWiness leaderboard
  • Recent batches table (based on @tanstack/react-table)
  • Data fetching from Subgraphs and Cowtools API with GraphQL and React Query
  • Theming and customizable layout with Radix UI components
  • Responsive design for various screen sizes

Setting Up

Before setup, make sure you have Node.js and npm installed on your machine. You can download and install Node.js from here and npm will be included along with it. Also, make sure you have Git installed which can be found here.

  1. Clone the repository:
git clone https://github.com/your-github-username/repository.git
  1. Install the dependencies:
cd repository
npm install
  1. Create a .env.local file in the root of the project with the following content:
MONGODB_URI=<your_mongodb_uri>
MONGODB_DB_NAME=<your_mongodb_db_name>
MONGODB_COLLECTION_NAME=<your_mongodb_collection_name>
API_KEY=<your_api_key>
  1. Run the development server:
npm run dev

Development Scripts

In the project directory, you can run:

  • npm run dev: Starts the development server
  • npm run build: Builds the app for production
  • npm start: Serves the app in production mode
  • npm run lint: Lints the codebase
  • npm run lint:fix: Fixes linting issues automatically
  • npm run typecheck: Checks for TypeScript issues

Authors

License

This project is open-sourced under the MIT License.