2025-11-08 10:11:34 +01:00
2025-11-08 10:11:34 +01:00
2025-11-08 10:11:34 +01:00
2025-11-08 10:11:34 +01:00
2025-11-08 10:11:34 +01:00
2025-10-31 11:41:43 +01:00
2025-10-31 11:41:43 +01:00
2025-10-31 11:41:43 +01:00
2025-10-31 11:41:43 +01:00
2025-11-08 10:11:34 +01:00
2025-10-31 11:41:43 +01:00
2025-11-08 10:11:34 +01:00
2025-10-31 11:41:43 +01:00
2025-11-08 10:11:34 +01:00
2025-11-08 10:11:34 +01:00
2025-10-31 11:41:43 +01:00

🚀 apXtri — Build, Host & Decentralize

Why apXtri?

Are you a system administrator or a web developer (backend, frontend, or fullstack) looking for a project that goes beyond the usual stack?
apXtri is an open-source infrastructure designed to create a decentralized economy around hosting, development, and community management.

With apXtri, you can:

  • Host web apps, APIs, and pages for groups (tribes) on your own servers (towns).
  • Manage encrypted identities via PGP for users (pagans), ensuring anonymity and security.
  • Define and enforce nested rules (tribe → town → nation) automatically recorded on a blockchain.
  • Generate and exchange tokens to pay for hosting, dev, or community services.
  • Create traceable digital contracts and handle disputes through decentralized arbitration.

👉 In short: apXtri is your toolbox to launch a decentralized SaaS platform.


⚙️ Tech stack (100% open source & auditable)

  • Ubuntu LTS (desktop for dev, server for production)
  • Caddy: native HTTPS & reverse proxy
  • Node.js / Express.js: RESTful endpoints
  • JSON Schema: structured data management
  • Internal blockchain: rules & traceability

📖 API Documentation: adminapi doc


🛠️ Quick Installation

Requirements:

  • Ubuntu LTS (22.04+ recommended)
  • Physical or VM: 8 GB RAM / 500 GB SSD minimum
  • Sudo-enabled user
  • Public domain name (for production)

Step 1: Create Sudo User (if needed)

# Create user (replace {user} with your username)
sudo adduser {user}
sudo passwd {user}
sudo usermod -aG sudo {user}
groups {user}  # Verify: should show "{user} : {user} sudo users"
su - {user}    # Switch to new user

Step 2: Download and Run Installer

# Download and run launch.sh
sudo apt install wget -y && \
sudo wget -O init.sh https://gitea.ndda.fr/apxtri/apxtri/raw/branch/main/setup/init.sh && \
sudo chmod +x init.sh && \
./init.sh

You must to give a town name, select an existing nation (test for dev, ants,..) and in prod (any other nation than test is production) you need a domain name that redirect internet into your machine.

Options:

  • ./init.sh - Interactive installation (choose dev or prod)
  • ./init.sh --clean - ⚠️ Erase all data and reinstall from scratch

Successfull install looks like output

Step 3A: Development Mode

# Start development server
apxdev

# Open in browser (same machine)
http://admin.apxtri.{townName}.test/apxtriadmin/apxid_fr.html

Dev mode features:

  • Local testing without public domain
  • No SSL/HTTPS required
  • Data persists in /var/lib/apxtowns/data

Step 3B: Production Mode

  1. Initial Setup via Temporary Access

    # Get your server's public IP (shown in installation log)
    # Add to your PC's /etc/hosts:
    {PUBLIC_IP} admin.apxtri.{townName}.{nationName}
    
    # Open in browser (from your PC):
    http://admin.apxtri.{townName}.{nationName}/apxtriadmin/apxid_fr.html
    
  2. Complete Town Setup

    • Follow web interface instructions
    • Provide your domain name (must point to your server IP)
    • System will:
      • Sync blockchain from network (or create genesis block)
      • Configure SSL certificates automatically
      • Set up automated backups and updates
  3. Finalize Installation

    # After setup completes, run the post-setup script:
    sudo /opt/apxtowns/{TOWN}-{NATION}/apxtri/setup/post-setup.sh
    
    # Verify service is running:
    sudo systemctl status apxtri
    
  4. Access Your Town

    • Visit: https://yourdomain.com
    • Re-authenticate with your mayor credentials

Automated Features:

  • Daily blockchain backups (1:00 AM)
  • System updates (3:00 AM)
  • Auto-restart on failure
  • SSL certificate renewal

➡️ Detailed setup guide: See SETUP.md for complete documentation
➡️ Advanced configuration: See the wiki - setup


🎯 Why join apXtri?

  • 🧩 For sysadmins: a ready-to-install, auditable, and scalable project.
  • 💻 For developers: a playground to build apps, endpoints, and interfaces in a decentralized environment.
  • 🌍 For communities: an ecosystem outside centralization, giving power back to users.

👉 Join apXtri and build your own digital decentralized town.


FAQ

Q: Do I need blockchain expertise to run apXtri?
A: No. The blockchain is managed automatically by each town node. You only need basic sysadmin skills to set up and run it.

Q: Can I use apXtri for private projects?
A: Yes. Tribes can be public or private (invite-only), making it suitable for both open communities and closed groups.

Q: What happens if my server goes offline?
A: Each town manages its own data. If your node goes offline, your hosted tribes become unavailable, but other towns remain unaffected.

Q: Can I integrate my own apps or APIs?
A: Absolutely. apXtri is designed to host custom apps, APIs, and services through RESTful endpoints.

Q: Is there a way to contribute as a developer?
A: Yes. You can build web interfaces, extend APIs, or improve the core. Contributions are welcome through the official repo.

S
Description
Main tribe that manage many other tribes in an apXtri town
Readme 10 MiB
Languages
JavaScript 84%
Shell 16%