Skip to content

πŸ›οΈ Hermes is a high-availability blockchain voting database that acts as a distributed storage and event processor for voting events, proposals, and actions.

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT
Notifications You must be signed in to change notification settings

input-output-hk/hermes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Hermes

Hermes is a high-performance WebAssembly (WASM) application engine that provides secure, sandboxed execution of modular applications.

Quick Start

  1. Github token:

    GitHub Token Setup

  2. Install Just command runner:

    cargo install just
    # Or: sudo apt install just
    # Or: brew install just
  3. See all available commands and documentation:

    just --list
  4. Build and run:

    # First time setup (run once)
    just check-local-build
    
    # Choose your build approach:
    just build-run-dev-fastest  # πŸš€ Daily dev (local, fastest)
    just build-run-dev          # 🐳 Team consistency (containerized)
    just build-run-all          # πŸ“¦ Production (full assets)

Build System

This project uses Just with two build approaches:

Approach When to Use Requirements
πŸš€ Local Daily development, rapid iteration Local Rust + wasm32-wasip2
🐳 Containerized Team consistency, CI/CD, final testing Docker/Podman + Earthly

All detailed documentation is in the justfile. Run just --list to see all commands.

Key Commands

Build Commands

Main workflows:

  • just build-run-dev-fastest - πŸš€ Daily development (local builds, fastest)
  • just build-run-dev - 🐳 Team consistency (containerized, matches CI)
  • just build-run-all - πŸ“¦ Production (full assets, deployments)

Quick rebuilds:

  • just dev-athena-fast - WASM only (development)
  • just dev-athena - WASM only (production)

Setup:

  • just check-local-build - Verify local Rust (run once)

Other Commands

  • just status - Show build status
  • just clean-hfs - Clean application state
  • just --list - See all available commands

For detailed help: just --show <command>

Development

For development guidelines, tooling information, and best practices, see DEVELOPMENT.md.

Contributing

We welcome contributions from the community! Please read our CONTRIBUTING for guidelines on how to contribute.

License

Licensed under either of Apache License, Version 2.0 or MIT license at your option.

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this crate by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

About

πŸ›οΈ Hermes is a high-availability blockchain voting database that acts as a distributed storage and event processor for voting events, proposals, and actions.

Topics

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks