A real NEAR testnet equipment library governed by a Sputnik DAO. Two council approvals are required to settle disputes and withdraw treasury credits.
Explore first — no wallet needed
Start with the library's Start here guide, the 60-second tour, or the recorded normal return and dispute case. These pages explain the roles and let you inspect evidence without signing or using the demo accounts.
The completed proofs are booking #10 (normal return, 21 checks) and #11 (DAO dispute, 27 checks). Booking #13 adds six mobile-reservation checks: a phone-width Chrome review followed by real Meteor approval, not a physical-phone test or completed return. Saved screenshots document the session; fresh RPC results verify execution.
Ready to borrow?
Use your own Meteor Web account in Chrome or another full browser and select Testnet. You need testnet funds for the quoted deposit and gas, and the library's council must admit your account before you can reserve. Connecting alone does not grant membership. Open equipment to review its quote, then choose Connect Meteor. Connection does not submit a booking; review and wallet approval are separate steps.
Operator rehearsal accounts
The accounts below belong to the demo operator; they are public identifiers, not shared login credentials. To rehearse all roles, use only accounts you are authorized to control. Private keys never belong in CommonKit or a chat message.
Role
Testnet account
Borrower
borrower.commonkit-mw7dph80.testnet
Custodian + council voter 2
custodian.commonkit-mw7dph80.testnet
Council voter 1
commonkit-mw7dph80.testnet
Open the wallet button in the top-right corner of CommonKit, then choose Connect Meteor → Meteor Web. Select the account and approve the connection. To change roles, reopen the wallet button, disconnect from CommonKit, switch accounts in Meteor, and reconnect. If Meteor exposes more than one account, use the account selector inside the wallet dialog. The dialog shows the full connected account and its on-chain roles. Both demo council accounts are controlled by the demo operator.
Normal borrowing cycle
Connect the borrower. In Library, open Campus camera kit to reveal the booking drawer (a bottom sheet on mobile). Choose a pickup time a few minutes ahead, select Review booking, verify the account, time and costs, then Confirm in wallet. The current demo deposit is 0.111 testnet NEAR: 0.001 fee + 0.01 refundable bond + 0.1 retained storage. Always use the live quote shown in the app.
Connect the custodian. In Bookings, select the new booking. At pickup time, expand Handover & decision evidence and select pickup evidence or paste its hash. Click Confirm pickup and approve in Meteor.
Connect the borrower. In Bookings, select the same booking, supply return evidence in its evidence section, and Request return.
Connect the custodian and Accept return. The booking closes, crediting 0.01 NEAR to the borrower and 0.001 NEAR to the DAO.
Connect the borrower. In Bookings, use Withdraw available credit. Inspect Activity & transaction receipts and the library ledger.
In Council, a council member chooses Propose treasury withdrawal. Each council account approves that proposal once. The second approval executes the withdrawal automatically; verify the final receipt and the DAO payment. This completes the normal borrowing cycle, including the community fee.
Dispute and council settlement
Repeat reserve, pickup and return request with a new booking.
As custodian, supply damage evidence and Report damage / dispute. The booking shows Council review; its principal stays in escrow.
As either council account, select that disputed booking in Bookings. Go to Council → Propose a library change → Resolve selected dispute. Check the displayed booking ID, then enter the separate Decision evidence SHA-256 or select a decision evidence file in that council form. Propose a settlement withholding 0.003 NEAR. Proposal creation attaches a refundable 0.01 NEAR DAO bond.
In The council’s decision, inspect the target, method, booking ID and amount. Approve once as the first council account: the proposal shows Awaiting votes and funds remain escrowed.
Disconnect, connect the other council account, and approve the same proposal. The second approval automatically executes settlement; there is no separate Execute button. Verify the final contract receipts and refreshed booking. Successful settlement closes it, crediting 0.007 NEAR to the borrower and 0.004 NEAR to the DAO.
The borrower withdraws their credit. A council member proposes a treasury withdrawal; both council members approve. The DAO receives its available fees and damage credits.
Later demos can leave other reservations in escrow. Verify the selected booking’s withdrawals and the balanced whole-library ledger; do not expect every aggregate balance to be zero.
Evidence for a rehearsal
These files are clearly labeled synthetic fixtures, not proof of physical events. Save them locally and select the relevant file when asked for evidence: pickup, return, damage, decision. CommonKit hashes files locally; it does not upload them.
If a step stalls
Allow the wallet popup. Complete or cancel the request in Meteor, then return to CommonKit.
If a transaction has a receipt but is unconfirmed, open Activity & transaction receipts and use Check confirmation. Do not send it again until you inspect wallet activity and on-chain state.
Use Refresh in the live-status row after changing wallet accounts. Only admitted members can reserve; only the assigned custodian can accept returns.
Pickup opens at the reservation start time. Closed and cancelled reservations do not block a later borrowing cycle.
Testnet only. Gas, retained storage charges and DAO proposal bonds are separate from the fee-and-bond principal ledger. Public visitors can inspect state; only authorized wallets can perform their roles.