Thanks to visit codestin.com
Credit goes to github.com

Skip to content

cannonQ/pow-tracker-site

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

96 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

PoW Tokenomics Tracker Website

A clean, DefiLlama-style website that displays PoW cryptocurrency tokenomics data directly from your GitHub repository.

πŸš€ Features

  • Real-time data - Fetches JSON files directly from GitHub
  • No backend needed - Pure HTML/CSS/JavaScript
  • Mobile responsive - Works on all devices
  • Fast & lightweight - Minimal dependencies
  • Easy to deploy - Works on any static host

πŸ“¦ What's Included

pow-tracker-website/
β”œβ”€β”€ index.html              Landing page with project cards
β”œβ”€β”€ css/
β”‚   β”œβ”€β”€ styles.css         Main stylesheet (DefiLlama-inspired)
β”‚   └── project.css        Project detail page styles
β”œβ”€β”€ js/
β”‚   β”œβ”€β”€ config.js          Configuration (EDIT THIS!)
β”‚   β”œβ”€β”€ utils.js           Utility functions
β”‚   β”œβ”€β”€ main.js            Landing page logic
β”‚   └── project.js         Project detail page logic
└── pages/
    β”œβ”€β”€ project.html       Project deep dive page
    └── about.html         About page

βš™οΈ Setup (5 Minutes)

Step 1: Update Configuration

Open js/config.js and replace the placeholder values:

const CONFIG = {
    GITHUB_USER: 'YOUR-USERNAME',      // ← Replace with your GitHub username
    REPO_NAME: 'pow-tokenomics-tracker', // ← Your repo name
    BRANCH: 'main',                     // ← Your branch name
    ...
};

Example:

const CONFIG = {
    GITHUB_USER: 'satoshi',
    REPO_NAME: 'pow-tokenomics-tracker',
    BRANCH: 'main',
    ...
};

Step 2: Update GitHub Links

Search and replace YOUR-USERNAME with your actual GitHub username in:

  • index.html
  • pages/project.html
  • pages/about.html

Or use this command:

# Mac/Linux
find . -type f -name "*.html" -exec sed -i '' 's/YOUR-USERNAME/your-actual-username/g' {} +

# Linux only
find . -type f -name "*.html" -exec sed -i 's/YOUR-USERNAME/your-actual-username/g' {} +

Step 3: Deploy

Upload these files to any static hosting service:

Option A: GitHub Pages (Free & Easy)

  1. Create a new repo called pow-tokenomics-tracker-site
  2. Upload all website files
  3. Go to Settings β†’ Pages
  4. Set source to main branch
  5. Your site will be at: https://YOUR-USERNAME.github.io/pow-tokenomics-tracker-site

Option B: Netlify (Free)

  1. Drag & drop the pow-tracker-website folder to netlify.com
  2. Done! Auto-updates when you push changes

Option C: Vercel (Free)

  1. npm i -g vercel
  2. cd pow-tracker-website
  3. vercel
  4. Follow prompts

Option D: Any Static Host

  • AWS S3 + CloudFront
  • Cloudflare Pages
  • Firebase Hosting
  • Traditional web hosting

🎨 How It Works

Data Flow

  1. Website loads in user's browser
  2. JavaScript fetches project list from GitHub API
  3. For each project, fetches JSON from raw.githubusercontent.com
  4. Displays data with filters, sorting, and search
  5. Caches data for 5 minutes to reduce API calls

File Structure Requirements

Your GitHub repo must have this structure:

your-repo/
β”œβ”€β”€ data/
β”‚   └── projects/
β”‚       β”œβ”€β”€ bitcoin.json
β”‚       β”œβ”€β”€ kaspa.json
β”‚       └── ...
└── allocations/          (optional, only for premined projects)
    β”œβ”€β”€ project-name/
    β”‚   └── genesis.json
    └── ...

The website will automatically:

  • List all .json files in data/projects/
  • Fetch corresponding genesis data if has_premine: true
  • Display everything in a clean interface

🎯 Features

Landing Page

  • Project cards with key metrics
  • Filter by: All, Fair Launch, Premine, Suspicious
  • Sort by: Name, Market Cap, Launch Date, Premine %, % Mined
  • Real-time search
  • Hero stats (total projects, fair launches, premined)

Project Detail Page

  • Complete tokenomics breakdown
  • Supply & emission metrics
  • Mining economics & costs
  • Genesis allocation charts (for premined projects)
  • Investor details & vesting schedules
  • Data sources with links

Design

  • Dark theme (DefiLlama-inspired)
  • Clean, professional layout
  • Mobile-responsive
  • Fast loading
  • Accessible

πŸ”§ Customization

Change Colors

Edit css/styles.css:

:root {
    --primary: #2172E5;        /* Brand color */
    --success: #27AE60;        /* Green for positive */
    --warning: #F39C12;        /* Yellow for caution */
    --danger: #E74C3C;         /* Red for danger */
    --dark: #1C1C1E;          /* Background */
    --dark-secondary: #2C2C2E; /* Cards */
    ...
}

Add Custom Metrics

Add new calculations in js/utils.js and use them in js/main.js or js/project.js.

Change Cache Duration

Edit js/config.js:

CACHE_DURATION: 5 * 60 * 1000, // 5 minutes (in milliseconds)

πŸ“Š Performance

  • Initial load: ~500ms (depending on number of projects)
  • Subsequent loads: <100ms (cached)
  • Data refresh: Every 5 minutes (configurable)
  • Bundle size: ~15KB (gzipped)

πŸ› Troubleshooting

"No projects found"

Problem: Website can't fetch data from GitHub

Solutions:

  1. Check js/config.js - is your username correct?
  2. Make sure your repo is public
  3. Verify files are in data/projects/ directory
  4. Check browser console for errors

"Failed to load project data"

Problem: JSON file has errors

Solutions:

  1. Validate JSON syntax at jsonlint.com
  2. Run the validation script: python scripts/validate_submission.py project-name
  3. Check that all required fields are present

Styling looks broken

Problem: CSS not loading

Solutions:

  1. Check file paths - make sure css/styles.css exists
  2. Clear browser cache
  3. Check browser console for 404 errors

GitHub rate limiting

Problem: Too many API requests

Solution:

  • GitHub allows 60 unauthenticated requests/hour
  • The cache reduces requests
  • For high traffic, use a GitHub token (requires backend)

πŸš€ Advanced Usage

Add a Compare Page

Create pages/compare.html to show side-by-side project comparisons (not included in base template).

Add Charts

Include Chart.js:

<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>

Then create visualizations in the project detail page.

Add Search Indexing

Create a sitemap.xml and robots.txt for better SEO.

Custom Domain

Point your domain to your hosting:

  • GitHub Pages: Add CNAME file
  • Netlify: Configure in dashboard
  • Vercel: Add domain in settings

πŸ“± Mobile Support

Fully responsive design that works on:

  • Desktop (1200px+)
  • Tablet (768px - 1199px)
  • Mobile (< 768px)

πŸ”’ Security

  • No user data collected
  • No tracking scripts
  • All data fetched from public GitHub
  • No cookies or local storage (except cache)
  • HTTPS recommended

πŸ“„ License

Open source - use freely for any purpose.

🀝 Contributing

Found a bug? Want to add a feature?

  1. Open an issue on GitHub
  2. Submit a pull request
  3. Suggest improvements

πŸ’¬ Support

πŸŽ‰ Credits

  • Design inspired by DefiLlama
  • Data sourced by community contributors
  • Built with vanilla JavaScript (no frameworks!)

Ready to launch? Just update js/config.js and deploy! πŸš€

About

Community-driven PoW tokenomics transparency tracker website

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors