| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Name | Name | Last commit date | ||
|---|---|---|---|---|
ShipCheck is a GenLayer Bradbury Intelligent Contract dApp for checking whether submitted projects are real, deployed, technically aligned, and supported by public evidence.
Instead of asking reviewers to manually jump between GitHub, a live app, contract proof, and scattered evidence links, ShipCheck creates a public verification case. GenLayer validators independently fetch the submitted evidence, inspect repository implementation files, render the deployed app, check contract proof, reason over the submission with an LLM, and finalize a structured verdict through consensus.
This is not a simple checklist app with an AI summary bolted on. The core value is the non-deterministic verification path: each validator can evaluate live public evidence that changes from project to project, while the finalized result is stored as an auditable on-chain record.
| Surface | Value |
|---|---|
| Web app | https://shipcheck-gen.vercel.app |
| Network | GenLayer Bradbury Testnet |
| Chain ID | 4221 |
| RPC | https://rpc-bradbury.genlayer.com |
| Explorer | https://explorer-bradbury.genlayer.com |
| Contract | 0xdF7e884276edE0e7441024D6AC9D63f30eb79e05 |
| Deploy tx | 0x191612ff6370b0c3b45be8a6fb923a3aaa8deca2b0c0b329818752e1818cb8fd |
The production app reads from and writes to the live Bradbury contract.
submit_project
submitter -----------------> verification case
(repo + app + contract proof) |
v
add_evidence
optional public URLs
|
v
verify_case
GenLayer consensus
|
+-------------------------+-------------------------+
| | |
v v v
repository scan deployment render contract proof
README + package live app text address / proof page
tree + source files public UI state deployed source check
| | |
+-------------------------+-------------------------+
|
v
validator reasoning
gl.nondet.web + gl.nondet.exec_prompt
each validator repeats evidence review
|
v
final verdict
score + risk flags + evidence summary
source coverage + public proof page
ShipCheck separates three evidence layers:
| Layer | What It Proves |
|---|---|
| Implementation evidence | The repository contains actual contract/frontend source for the claimed project. |
| Deployment evidence | The submitted app and contract target are publicly reachable. |
| Runtime evidence | Specific transactions show users or reviewers interacted with the deployed contract. |
Contract addresses are strong deployment proof, but transaction links are needed when a reviewer wants to prove live usage after deployment.
| Verdict | Score Range | Meaning |
|---|---|---|
| VERIFIED | 85-100 | Evidence strongly supports the submitted claim. |
| NEEDS_REVIEW | 60-84 | The project has meaningful evidence, but some gaps need human review. |
| HIGH_RISK | 0-59 | Material evidence is missing, contradictory, or weak. |
| INCONCLUSIVE | 0 | Available evidence was inspected but cannot support a reliable directional verdict. |
The rubric totals 100 points:
| Category | Points |
|---|---|
| Originality | 25 |
| Working deployment | 20 |
| Required technology integration | 25 |
| Repository quality | 15 |
| Documentation clarity | 10 |
| Evidence consistency | 5 |
ShipCheck depends on validator consensus over public evidence that cannot be reduced to a single deterministic on-chain value.
+------------------------------------------------------------------+
| frontend/src |
| React + Vite + TypeScript reviewer workspace |
| Dashboard, submit flow, case detail, compare view, public proof |
+-------------------------------+----------------------------------+
| genlayer-js read/write
v
+------------------------------------------------------------------+
| contracts/ShipCheckVerifier.py |
| GenLayer Intelligent Contract |
| Case registry, evidence fetch, LLM adjudication, consensus result |
+-------------------------------+----------------------------------+
| HTTPS public evidence
v
+------------------------------------------------------------------+
| GitHub, deployed apps, Bradbury explorer, proof pages |
| README, package files, selected implementation files, tx evidence |
+------------------------------------------------------------------+
ShipCheck includes the main surfaces a serious reviewer needs:
contracts
ShipCheckVerifier.py
GenLayer Intelligent Contract and direct contract tests
frontend/src
React reviewer workspace, wallet flow, case views, proof pages,
evidence coverage UI, GenLayer read/write integration
scripts
genvm-lint and gltest wrappers used by npm scripts
tests/e2e
Playwright smoke coverage for the live application shell
For the cleanest ShipCheck result, submit public evidence in this shape:
GitHub repository:
https://github.com/<owner>/<repo>
Deployed application:
https://your-project.vercel.app
Contract proof:
https://explorer-bradbury.genlayer.com/address/<contract_address>
Extra evidence:
https://explorer-bradbury.genlayer.com/tx/<deployment_tx_hash>
https://explorer-bradbury.genlayer.com/tx/<frontend_write_tx_hash>
https://explorer-bradbury.genlayer.com/tx/<verification_tx_hash>
Use Bradbury explorer links for Bradbury submissions. Studio import links are useful for StudioNet work, but they should not be mixed into a Bradbury evidence package unless the project is intentionally demonstrating both networks.
Requirements: Node.js 20+, npm 10+, Python 3.11+, genvm-lint, and gltest.
npm install
npm run devLocal app:
http://localhost:5179
Create a root .env from .env.example:
VITE_GENLAYER_RPC_URL=https://rpc-bradbury.genlayer.com
VITE_GENLAYER_CONTRACT_ADDRESS=0xdF7e884276edE0e7441024D6AC9D63f30eb79e05
VITE_GENLAYER_EXPLORER_URL=https://explorer-bradbury.genlayer.com
Never put a private key in a VITE_* variable.
genlayer config set network=testnet-bradbury
genlayer deploy --contract contracts/ShipCheckVerifier.py --rpc https://rpc-bradbury.genlayer.comAfter deploying a new contract, update:
VITE_GENLAYER_CONTRACT_ADDRESS=<new_bradbury_contract_address>
GenLayer contract state is immutable per deployed address, so a fresh deployment starts with an empty case list.
vercel deploy --prod --yes --project shipcheck-genThe production Vercel project stores these build variables:
VITE_GENLAYER_RPC_URL
VITE_GENLAYER_CONTRACT_ADDRESS
VITE_GENLAYER_EXPLORER_URL
npm run typecheck
npm run test
npm run build
npm run contract:lint
npm run contract:test
npm run test:e2eFull local check:
npm run checkBuilt by ycee for a GenLayer Bradbury testnet submission.
MIT.
| Back | FazBrowse Home | New Git URL |