Blockchain logistics platform for West Africa — Hyperledger Fabric 2.5 | Alpha 6, Dakar, Senegal
# AlphaChain
Blockchain logistics platform for West Africa — built on Hyperledger Fabric 2.5.
Alpha 6 | Dakar, Senegal
## What this repo contains
AlphaChain provides end-to-end shipment lifecycle tracking on an immutable ledger, plus:
- auto-release payment when delivery is confirmed by an authorized party
- a utility token (ACT) for transaction fees / incentives
- an off-chain index (PostgreSQL) to power API + dashboard search
- a React dashboard for stakeholders
Phase 1 pilot: China → Dakar athletic gear import.
## Architecture
```
alphachain/
chaincode/ Fabric smart contracts (shipment + ACT token, Node.js chaincode)
api/ Node.js + Express REST API
dashboard/ React 18 + Tailwind CSS stakeholder dashboard
network/ Fabric network config (docker-compose + scripts)
token/ AlphaChain Token (ACT) chaincode
```
## Modules (high level)
### chaincode/
Node.js Fabric chaincode (see `chaincode/README.md`):
- CreateShipment — register a new shipment
- UpdateShipmentStatus — update shipment status with custody change events
- ConfirmDelivery — mark delivered; triggers payment release
- GetShipment / GetShipmentHistory
### token/
Node.js token chaincode using the Hyperledger Fabric Token SDK (see `token/README.md`):
- ACT utility token (AlphaChain Token)
- Mint / Transfer / BalanceOf
### api/
Express REST API bridging the chaincode to web clients (see `api/README.md`):
- wallet-based Fabric client (`FABRIC_WALLET_PATH`)
- uses `connection-profile.json` + `FABRIC_MSP_ID`
- rate limiting + structured logging
Key endpoints (most used by the dashboard):
- POST /api/shipments
- GET /api/shipments/:id
- PUT /api/shipments/:id/status
- POST /api/shipments/:id/confirm
- GET /api/shipments/:id/history
- GET /api/shipments/:id/qrcode
### dashboard/
React stakeholder dashboard consuming the API; shows shipment list, detail, status timeline, and QR code scanning info. Configure API base URL via environment.
### network/
Hyperledger Fabric …