git404hub

what is vaultpay fr?

dgreegman/vaultpay — explained in plain English

Analysis updated 2026-05-18

1GoAudience · developerComplexity · 4/5Setup · moderate

tl;dr

A fictional Nigerian style digital wallet backend built to demonstrate correct, auditable money-movement engineering rather than to sign up real users.

vibe map

mindmap
  root((vaultpay))
    What it does
      Fictional wallet infrastructure
      Wallets move mock money
      Documented payments API
    Tech stack
      Go and Fiber
      PostgreSQL
      Redis
      RabbitMQ planned
    Core design
      Append only ledger
      Row locking for safety
      Kobo integer money
    Use cases
      Study fintech backend engineering
      Learn double entry ledger design
      Portfolio project for engineers
    Audience
      Backend developers
      Fintech engineers
      Job applicants building portfolios

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

what do people make with this?

VIBE 1

Study a documented example of double entry ledger design for money systems.

VIBE 2

Learn how to prevent double spends and duplicate charges under concurrency.

VIBE 3

Reference how a Nigerian fintech might model held versus settled balances.

VIBE 4

Use as a portfolio project demonstrating backend engineering discipline.

what's the stack?

GoFiberPostgreSQLRedisRabbitMQDocker

how it stacks up fr

dgreegman/vaultpayadvayc/wrappedaegrail/aegrail-engine
Stars111
LanguageGoGoGo
Setup difficultymoderateeasyhard
Complexity4/52/55/5
Audiencedevelopergeneralops devops

Figures from each repo's GitHub metadata at analysis time.

how do i run it?

Difficulty · moderate time til it works · 30min

Requires Go 1.22+, Docker, and golang-migrate, ports 5433 and 6380 must be free or adjusted in the env file.

The README does not state a license, so terms of use are not specified.

in plain english

VaultPay is a fictional digital wallet system built as a portfolio project to show how a real Nigerian fintech company would build its backend, rather than as a product meant to sign up real users. It lets a business create wallets for its customers, move money between them, and connect payments through a documented API, but it handles no real money, no real customer data, and connects to no real bank, since every outside integration is a mock. The project's stated goal is to prove the author understands the hard problems unique to systems that move money, such as double charges from retried requests, balances that quietly drift from reality, and fraud that only shows up under adversarial use, instead of just wiring simple create, read, update, and delete endpoints to a database. Its central design rule is that no code is ever allowed to directly subtract from a balance. Instead every movement of money writes at least two entries, a debit and a credit, into an append only ledger that always nets to zero, and a wallet's balance is treated as something rebuilt from that ledger rather than a number you edit directly. Other documented engineering choices include storing money as whole number kobo or cents instead of decimals to avoid rounding drift, using row level database locking so two simultaneous transfers against the same wallet cannot both succeed if funds cannot cover both, and writing database changes together with outgoing events in the same transaction so a queue outage delays notifications instead of losing them. The design also reflects specifics of how money actually moves in Nigeria, including modeling a held or escrow balance the way the country's real instant payment network settles funds later even though a recipient sees them immediately. The system is built in Go using the Fiber web framework, PostgreSQL for its database, and Redis for caching and rate limiting only, with RabbitMQ, Prometheus, and Grafana planned for a later phase. To run it locally a developer needs Go, Docker, and the golang-migrate tool, then can start the stack with a few make commands. The README lays out a phased roadmap, with early scaffolding and core wallet features further along than later fraud detection and multi currency support, which are still planned.

prompts (copy fr)

prompt 1
Explain why VaultPay stores money as integer kobo instead of decimal values.
prompt 2
Walk me through how VaultPay's append only ledger keeps wallet balances accurate.
prompt 3
Help me set up VaultPay locally using Docker and golang-migrate.
prompt 4
Explain the difference between VaultPay's liveness and readiness health checks.
prompt 5
Summarize VaultPay's roadmap and what phase the project is currently at.

Frequently asked questions

what is vaultpay fr?

A fictional Nigerian style digital wallet backend built to demonstrate correct, auditable money-movement engineering rather than to sign up real users.

What language is vaultpay written in?

Mainly Go. The stack also includes Go, Fiber, PostgreSQL.

What license does vaultpay use?

The README does not state a license, so terms of use are not specified.

How hard is vaultpay to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is vaultpay for?

Mainly developer.

peek the repo → explain another one

This repo across BitVibe Labs

double-check against the repo, no cap.