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.
- 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
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.
- Clone the repository:
git clone https://github.com/your-github-username/repository.git
- Install the dependencies:
cd repository
npm install
- 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>
- Run the development server:
npm run dev
In the project directory, you can run:
npm run dev
: Starts the development servernpm run build
: Builds the app for productionnpm start
: Serves the app in production modenpm run lint
: Lints the codebasenpm run lint:fix
: Fixes linting issues automaticallynpm run typecheck
: Checks for TypeScript issues
This project is open-sourced under the MIT License.