dumbtv
dumbtv가 ADB로 Fire TV에서 광고·추적·업데이트 알림을 제거, 루트·앱 변경 없이, 무료 오픈소스
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
ProofAPI — Tamper-Evident Receipts for AI Answers
ProofAPI puts a digital seal on every AI answer. The input, the answer and the settings are fingerprinted and recorded by our own Solana program. Anyone with the link can check that nothing was changed — no account, no crypto wallet.
All code in this repository was written during the hackathon (first commit on 30 September 2026). It uses open-source libraries listed under Tech Stack.README 전문 보기 ↗ProofAPI puts a digital seal on every AI answer. The input, the answer and the settings are fingerprinted and recorded by our own Solana program. Anyone with the link can check that nothing was changed — no account, no crypto wallet.
Live Demo · Video Demo · Video Pitch · Presentation · Docs · npm · X
| Name | Role | Contact |
|---|---|---|
| Bekarys | CEO | [email protected] · X |
| Nurdaulet | CTO | GitHub |
| Submission material | Link |
|---|---|
| Pitch video | Watch the pitch |
| Product demo video | Watch the demo |
| Live application | proofapi.vercel.app |
| Presentation | Google Slides |
| Contact email | [email protected] |
All code in this repository was written during the hackathon (first commit on 30 September 2026). It uses open-source libraries listed under Tech Stack.
| Genuine | After someone edits the AI answer |
|---|---|
What a certificate does not prove: that the AI answer is correct, or which model really ran (the model is declared by the caller). It proves the recorded data hasn't changed since it was sealed.
Clock, so records can't be back-dated.POST /api/v1/seal with API keys, TypeScript SDK on npm (npm install proofapi), playground, console with keys, usage and recordsproofapi-mcp) with seal_answer, seal_hashes, verify_record and get_evidence; machine-readable llms.txt and openapi.jsonverifier.html that checks it against Solana directly| Layer | Technology |
|---|---|
| On-chain program | Rust · Anchor (built and deployed with Solana Playground) |
| Chain client | TypeScript · @solana/web3.js v1 · hand-written Anchor encoding |
| Web app and API | Next.js 15 (App Router) · React 19 · Tailwind CSS 4 · shadcn/ui (Base UI) |
| Auth | Auth.js (NextAuth) with GitHub · hashed API keys |
| Database | Prisma 6 · SQLite locally · Postgres (Neon) in production |
| SDK and MCP | TypeScript ESM package proofapi · Model Context Protocol SDK |
| AI | Google Gemini with structured output; deterministic mock without a key |
| Independent verifier | Single HTML file · WebCrypto · Solana JSON-RPC |
| Testing | Vitest (135 tests) · byte-level fake of the program · devnet end-to-end script · GitHub Actions |
| Hosting | Vercel (fra1) |
AI agent (MCP) · SDK · HTTP API · Browser
│ input + answer (or fingerprints only)
▼
┌─────────────────────────── Next.js app ───────────────────────────┐
│ API key / session → limits → canonical JSON → salted SHA-256 x3 │
│ (input, output, metadata) │
│ │
│ Postgres: users, API keys, records, salt ProofService │
└───────────────────────────────────┬───────────────────────────────┘
│ create_proof(proof_id, 3 hashes)
▼
┌──────────────── Solana program proof_registry ────────────────────┐
│ Issuer PDA ["issuer", authority] writer key, active, count, │
│ last_record_hash │
│ ProofRecord ["proof", issuer, seq] hashes, prev_record_hash, │
│ record_hash, timestamp │
│ record_hash = SHA256("proofapi-v1" ‖ fields ‖ prev ‖ timestamp) │
└───────────────────────────────────┬───────────────────────────────┘
│ getAccountInfo (any RPC)
▼
Certificate page · History audit · verifier.html (offline)
Program: programs/proof_registry/src/lib.rs — instructions register_issuer, set_writer, set_active, create_proof. There is no instruction to edit or delete a record.
Devnet deployment: program 5ffvduJkfxLgFiJEoZ9Pjq7oPVW1aKCgfqzmEto1FqjU. Details in programs/proof_registry/README.md.
npm install proofapi
import { ProofAPI } from 'proofapi';
const proofapi = new ProofAPI({ apiKey: process.env.PROOFAPI_API_KEY }); // key from /console/keys
const record = await proofapi.seal({ input: prompt, output: answer, model: 'your-model' });
console.log(record.certificateUrl); // share this link
Connect an AI agent through MCP (Claude, Cursor and other clients):
{
"mcpServers": {
"proofapi": {
"command": "npx",
"args": ["-y", "-p", "proofapi", "proofapi-mcp"],
"env": { "PROOFAPI_API_KEY": "pk_live_..." }
}
}
}
Prerequisites: Node.js 20+. No Rust toolchain is needed: the program is built in Solana Playground.
git clone https://github.com/Kriazer078/proofapi
cd proofapi
npm install
cp .env.example .env
npm run db:push
npm test
npm run dev
Open http://localhost:3000. By default CHAIN_MODE=memory runs a local simulation of the program. Set AUTH_DEV_LOGIN=1 to try the console without a GitHub app (ignored in production).
On Solana devnet:
npm run setup # creates server keys in .keys/ (git-ignored)
# fund the printed writer address at https://faucet.solana.com
# set PROGRAM_ID and CHAIN_MODE=anchor in .env (or deploy your own copy, see programs/proof_registry/README.md)
npm run register-issuer
npm run chain:status
npm run e2e:devnet # create, verify, tamper, audit, and write an evidence pack
Production settings: GEMINI_API_KEY for AI review, AUTH_GITHUB_ID and AUTH_GITHUB_SECRET for GitHub sign-in (callback /api/auth/callback/github). The sign-in secret is derived from IP_HASH_SALT unless AUTH_SECRET is set.
MIT — see LICENSE