Skip to content

Giveth/analytics-dashboard

Repository files navigation

Giveth Analytics Dashboard

1. Project Overview

Purpose

The Giveth Analytics Dashboard is a web application that provides data visualization and analytics capabilities for the Giveth ecosystem. It helps track and analyze various metrics and data points related to Giveth's operations and impact.

Key Features

  • Interactive data visualizations using Highcharts
  • Date-based filtering and analysis
  • Responsive design with styled-components
  • Integration with Giveth's UI design system
  • Real-time data updates
  • Web3 integration using Viem

Live Links

2. Architecture Overview

System Diagram

graph TD
    A[Client Browser] --> B[Next.js Frontend]
    B --> C[API Layer]
    C --> D[Data Sources]
    B --> E[Web3/Viem]
Loading

Tech Stack

  • Frontend Framework: Next.js 13
  • UI Library: React 18
  • Styling: Styled Components, Giveth UI Design System
  • Charts: Highcharts
  • Web3: Viem
  • Language: TypeScript
  • Development Tools: ESLint, Prettier

Data Flow

  1. User interacts with the dashboard interface
  2. Next.js handles client-side routing and data fetching
  3. Data is processed and visualized using Highcharts
  4. Web3 interactions are managed through Viem
  5. UI updates are reflected using React's state management

3. Getting Started

Prerequisites

  • Node.js (v16 or higher recommended)
  • Yarn package manager
  • Git
  • Web3 wallet (for blockchain interactions)

Installation Steps

  1. Clone the repository:
git clone [repository-url]
cd analytics-dashboard
  1. Install dependencies:
yarn install
  1. Set up environment variables: Create a .env.local file with necessary environment variables (if required)

Configuration

  • The project uses Next.js configuration in next.config.js
  • Styling is configured with styled-components
  • ESLint and Prettier are configured for code quality

4. Usage Instructions

Running the Application

Development mode:

yarn dev

Production build:

yarn build
yarn start

Testing

# Add testing commands once implemented

Common Tasks

  • Code Linting: yarn lint
  • Fix Linting Issues: yarn lint:fix

5. Deployment Process

Environments

  • Development: Local development environment
  • [Add staging/production environment details once available]

Deployment Steps

  1. Ensure all dependencies are installed:
yarn install
  1. Build the application:
yarn build
  1. Start the production server:
yarn start

CI/CD Integration

[Add CI/CD details once implemented]

6. Troubleshooting

Common Issues

  1. Build Errors

    • Ensure all dependencies are installed
    • Check Node.js version compatibility
    • Verify environment variables are set correctly
  2. Styling Issues

    • Check styled-components configuration
    • Verify UI Design System version compatibility

Logs and Debugging

  • Use browser developer tools for frontend debugging
  • Check Next.js build output for deployment issues
  • Enable React Developer Tools for component debugging

Contributing

[Add contribution guidelines]

License

UNLICENSED

Authors

  • Ramin Ramazanpour

About

Analytics dashboard for Giveth data

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 12

Languages