For the complete documentation index, see llms.txt
Examples
Working Compact contract examples and full DApps. Each example demonstrates a specific feature or pattern.
Browse by type
Contracts
Standalone Compact contracts that isolate specific language features like witness functions, assertions, and on-chain verification.
DApps
Complete DApps with contract code, TypeScript integration, and deployment steps you can use as a starting point for your own project.
Find an example by feature
Not sure which example to start from? Pick the feature or problem you are trying to solve from the dropdown, and the matrix highlights the example DApps and contracts that demonstrate it. You can also narrow the grid to just DApps or just contracts. Every example links straight to its documentation.
Each column is a documented example (a full DApp or a standalone contract) and each row is a Compact or Midnight feature that example demonstrates. A Demonstrated marker means the example fully shows that feature, a Partial marker means it is in progress or only partially shown, and an empty cell means that example does not cover it.
| Feature / problem | Calculator | Token transfers | Private guest list | Election | Private reserve auction | Battleship | Bulletin board | ZK Loan |
|---|---|---|---|---|---|---|---|---|
| Witness functions (private inputs) | ||||||||
| Private state | ||||||||
| Public ledger state | ||||||||
| Privacy boundary (disclose) | ||||||||
| On-chain verification of off-chain compute | ||||||||
| Access control to circuits | ||||||||
| Ledger Counter | ||||||||
| Ledger Set | ||||||||
| Ledger Map | ||||||||
| Ledger List | ||||||||
| Sealed ledger fields | ||||||||
| Standard library Maybe | ||||||||
| Opaque string on the ledger | ||||||||
| DApp-specific public keys (untrackable identity) | ||||||||
| Commitments and persistent hashing | ||||||||
| ZK proof of identity without revealing it | ||||||||
| In-circuit signature verification | ||||||||
| Native token (NIGHT) operations | ||||||||
| Shielded token operations | ||||||||
| Intermediate witnesses | ||||||||
| Explicit state machine (enums) | ||||||||
| Multi-step approval or turn flow | ||||||||
| CLI tooling | ||||||||
| Web UI | ||||||||
| Wallet and proof server integration |
This matrix covers the examples that have published documentation. When a new example
is added to the docs, add it here too: coverage data lives in
src/components/CoverageMatrix/data.jsx. To contribute a new example, see the
contributing guide.