Skip to content

Meriem-BM/heartbeatring

Repository files navigation

HeartbeatRing

HeartbeatRing is an on-chain accountability protocol on Rootstock. This repo contains contracts, a web interface, a liquidator bot, and a subgraph.

Use Cases

  • Habit/accountability groups with stake-backed check-ins
  • DAO/team liveness tracking with clear inactivity penalties
  • Community experiments with periodic on-chain participation rules

Repo Structure

  • contracts/ - Foundry contracts and deployment scripts
  • interface/ - Next.js app
  • liquidator/ - liquidation bot CLI
  • heartbeatring/ - The Graph subgraph

Requirements

  • Bun 1.3+
  • Foundry (forge, cast, anvil)
  • Rootstock RPC access

Quick Setup

  1. Clone and init submodules:
git clone <your-repo-url>
cd heartbeatring
git submodule update --init --recursive
  1. Install dependencies:
bun --cwd interface install
bun --cwd liquidator install
  1. Create env files:
cp contracts/.env.example contracts/.env
cp interface/.env.example interface/.env.local
cp liquidator/.env.example liquidator/.env
  1. Fill required values in each env file.

Typical Dev Flow

  1. Build/test/deploy contracts in contracts/.
  2. Configure interface/.env.local with deployed addresses.
  3. Run the interface from interface/.
  4. Run the subgraph from heartbeatring/ (optional but recommended).
  5. Run the liquidator from liquidator/.

Component Docs

About

On-chain accountability protocol on Rootstock where users join stake-based rings, submit periodic heartbeats, and delinquent members are liquidated automatically.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors