Skip to content

Fork-ready P2P network visualization platform for cryptocurrency blockchains. Real-time node discovery, interactive maps, and network health monitoring. Built with Next.js, Supabase, and Python.

License

Notifications You must be signed in to change notification settings

RaxTzu/AtlasP2P

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AtlasP2P

AtlasP2P

License: MIT GitHub Documentation

A professional, production-ready P2P network visualization platform for cryptocurrency blockchains. Monitor your network's health, discover nodes worldwide, and provide transparency to your community.

🚀 Fork-Ready | ⚡ Real-time Updates | 🌍 Global Node Discovery | 🎨 Fully Customizable

Key Features

  • Real-time Node Discovery: Bitcoin P2P protocol crawler with recursive peer discovery from DNS seeds
  • Interactive Geolocation Map: Leaflet-powered map with clustering, filtering, and node details
  • Performance Metrics: Node tiers (Diamond/Gold/Silver/Bronze) based on uptime, latency, and reliability
  • Node Verification: Prove node ownership via message signing, DNS TXT records, or user agent tags
  • Operator Profiles: Custom branding with avatars, descriptions, and social links for verified nodes

Live Demo

Quick Start

📖 New users: See docs/GETTING_STARTED.md for complete guide!

Development (5 Minutes)

# 1. Clone repository
git clone https://github.com/RaxTzu/AtlasP2P.git
cd AtlasP2P

# 2. Choose deployment mode:

# Option A: Local Docker (Full Stack - Recommended)
make setup-docker   # Creates .env from template
make docker-dev     # Starts PostgreSQL + Supabase + Web + Crawler

# Option B: Cloud Supabase (Production-Ready)
make setup-cloud    # Creates .env from template
# Edit .env with your Supabase Cloud credentials
make cloud-dev      # Starts Web + Crawler only

What just happened?

  • make setup-docker copied .env.docker.example.env
  • make setup-docker copied project.config.yaml.exampleproject.config.yaml
  • Both files are gitignored for upstream development

Forking? Use make setup-fork for guided fork setup!

  • Customize config/project.config.yaml for your blockchain
  • Commit with git add -f config/project.config.yaml
  • See FORKING.md for complete instructions

Access locally:

Production

# 1. Configure domain in .env
DOMAIN=nodes.yourcoin.org
ACME_EMAIL=admin@yourcoin.org

# 2. Deploy with auto-SSL
make prod

Access: https://nodes.yourcoin.org (Caddy handles SSL certificates automatically)

Tech Stack

Frontend:

Backend:

  • Supabase - PostgreSQL database, REST API, Authentication, Real-time subscriptions
  • PostgREST - Auto-generated REST API from database schema
  • Kong - API Gateway for request routing

Crawler:

Infrastructure:

Fork This Project for Your Cryptocurrency

AtlasP2P is designed to be forked! Deploy a node map for ANY Bitcoin-derived cryptocurrency in minutes.

Quick Fork (3 Steps)

1. Edit Configuration (config/project.config.yaml):

chain: yourcoin
chainConfig:
  name: YourCoin
  ticker: YOUR
  p2pPort: 8333
  magicBytes: "f9beb4d9"  # Your chain's magic bytes
  dnsSeeds:
    - seed.yourcoin.org

2. Replace Logos (apps/web/public/logos/):

  • Use the provided TEMPLATE-*.svg files as guides
  • Replace with your coin's branding (PNG or SVG)
  • Update paths in project.config.yaml

3. Deploy!

make prod

Keep Your Fork Updated:

make sync-upstream  # Pull latest improvements from AtlasP2P

See Complete Forking Guide for detailed instructions.


Documentation

📘 Complete Documentation - GitHub Pages

Quick Links:

Contributing

Contributions are welcome! Please:

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

Run make lint && make typecheck && make build before submitting.

Credits & Attribution

Built by: RaxTzu Team

Inspired by:

  • Bitnodes.io - Node discovery methodology and API structure
    • Reference implementation by Addy Yeow
    • We adapted the P2P crawler approach and API compatibility

Core Technologies:

Map Tiles:

Bitcoin P2P Protocol:

  • Based on Bitcoin Core protocol specification
  • Adapted for Bitcoin-derived chains (Dogecoin, Litecoin, Dingocoin, etc.)

Dependencies:

License

MIT License - see LICENSE file for details.

Copyright (c) 2025 RaxTzu Team

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

About

Fork-ready P2P network visualization platform for cryptocurrency blockchains. Real-time node discovery, interactive maps, and network health monitoring. Built with Next.js, Supabase, and Python.

Topics

Resources

License

Stars

Watchers

Forks