Skip to content

Scetrov/void-eid

VoID Electronic Identity (eID)

VoID eID Logo

A modern web application integrating Discord authentication with Sui blockchain wallet verification, featuring a Rust backend and a React frontend.

Overview

Void eID provides a seamless way to link Discord identities with Sui Wallets. It uses a robust Rust backend for secure authentication and state management, and a modern React frontend for user interaction.

Project Structure

  • Backend (src/backend):

    • Written in Rust using Axum.
    • Uses SQLite for data persistence via SQLx.
    • Implements OpenAPI documentation with Utoipa and Scalar.
    • Handles Discord OAuth2 flow and Sui Wallet signature verification.
  • Frontend (src/frontend):

Quick Start

Prerequisites

  • Rust (latest stable)
  • Node.js & Bun
  • Just (optional, strictly recommended for task running if added later)
  • Discord Application Credentials (see Discord Setup)

Backend Setup

  1. Navigate to src/backend.

  2. Copy .env.example to .env and populate required variables:

    DATABASE_URL=sqlite:void-eid.db
    DISCORD_CLIENT_ID=your_discord_client_id
    DISCORD_CLIENT_SECRET=your_discord_client_secret
    DISCORD_REDIRECT_URI=http://localhost:5038/api/auth/discord/callback
    JWT_SECRET=your_jwt_secret_minimum_32_characters
    IDENTITY_HASH_PEPPER=your_random_pepper_string
    INTERNAL_SECRET=your_random_internal_secret
    PORT=5038

    Generate secrets using: openssl rand -base64 32

    If running Mumble, also set:

    ICE_SECRET_READ=your_ice_read_secret
    ICE_SECRET_WRITE=your_ice_write_secret
  3. Run the backend:

    cargo run

    The API will be available at http://localhost:5038. API Documentation is available at http://localhost:5038/docs.

Frontend Setup

  1. Navigate to src/frontend.
  2. Install dependencies:
    bun install
  3. Run the development server:
    bun run dev
    The app will be available at http://localhost:5173.

Documentation Index

About

Void eID — EVE Frontier Tribe Management Portal based around open standards and technology, designed to unify products and services within the ecosystem.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors