tr4mpass
Free, open-source iCloud activation lock bypass tool. Remove iCloud lock from iPhone 5s through iPhone 15 Pro (iOS 12-26.1). Fully offline -- no servers, no payments. Supports checkm8 (A5-A11) and ses
翻訳待ち
No updates detected yet. GitHub releases will appear here.
Multilingual scam checker for immigrant families and seniors in CA-14 (Congressional App Challenge 2026)
翻訳待ち
Loading the full README.
Read the full README ↗A multilingual scam checker for immigrant families and seniors in California's 14th district. Paste a message or upload a screenshot. Check First tells you, in your own language, how risky it is, which red flags it found, and exactly how to verify it with official sources before you pay anyone.
Congressional App Challenge 2026 entry (CA-14) by Viraj Mutti.
Live app: https://check-first-sepia.vercel.app
Families in Fremont, Union City and Hayward get scam texts, WhatsApp forwards and phone calls every week:
The people targeted most are often the least able to check. They may not read English well, may not know which government websites are real, and may be pressured to pay right now. Most scam-checking tools are English-only.
CA-14 is one of the most diverse districts in the country, with large Punjabi, Hindi-speaking, Spanish-speaking, Chinese and Afghan (Dari-speaking) communities, many of them seniors or recent immigrants. Check First works in all six of those languages, on a phone, with no account and no data saved.
.gov links matched to the scam type (21 links, each opened in a browser to confirm it loads).flowchart TD
U[User on phone] -->|paste text or screenshot| UI[Next.js page<br/>components/Checker.tsx]
UI -->|Layer 1: instant, offline| R[Rules engine<br/>lib/redFlags.ts]
UI -->|Layer 2: POST /api/analyze<br/>8 second timeout| API[Server route<br/>app/api/analyze/route.ts]
API -->|rate limit + zod input check| API
API -->|text and/or image| C[Claude or Gemini<br/>structured JSON output]
C --> API
API -->|zod-validated JSON| UI
R --> M[combineResults<br/>lib/combine.ts]
UI --> M
M -->|final risk = higher of the two| RC[Result card<br/>red flags, steps, official links, share]
L[locales/*.json<br/>6 languages] --> UI
D[data/resources.json<br/>official .gov links] --> RC
lib/redFlags.ts runs in the browser. It scores the message 0–100 using weighted keyword and pattern rules across nine categories (threats, unusual payments, government impersonation, guarantees, upfront fees, secrecy, notarios, prizes, suspicious links) in all six languages. It needs no internet and no API key, and every result is explainable: the screen shows the exact words that matched.app/api/analyze/route.ts sends the message (and screenshot, if any) to an AI on the server: Claude if an Anthropic key is set, otherwise Gemini (which has a free tier). Each provider lives in its own small file (lib/ai/claude.ts, lib/ai/gemini.ts) and shares one prompt (lib/ai/prompt.ts). The AI must answer in strict JSON: {risk, scamType, redFlags[{flag, explanation}], nextSteps[], summary}, written in the user's language. The server checks that JSON again with zod before trusting it.This is the beginning of the README. Read the rest at the original. Read the full README ↗