Outsider Stage 0.5
Replay and verify a real, sealed Outsider Stage 0.5 intervention chain.
Translation pending
Passwords locked to your face. No account, no server, works offline.
Translation pending
SecurityJavaScript · DartGitHub @chay1504OnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗Two private Flutter apps for a single phone at a time. TBD Vault stores encrypted account details. TBD Codes supplies an eight-digit code that changes every 5–10 seconds. Both apps are designed to work without an internet connection.
This is custom password-manager software. Do not put irreplaceable passwords in it until the iPhone pairing, backup recovery, and security review have been completed on a real device. A code generated by another app on the same phone is an extra check, not a truly separate second factor.
web/ holds TBD Vault and TBD Codes as two installable offline websites (PWAs). No App Store, APK or Mac needed. See web/README.md for building, deploying and installing. The Flutter apps in apps/ are kept but no longer the main path.
Automated tests pass (core, backup, vault lockout and replay). Android end-to-end testing, signed release APKs and all iPhone testing are not finished. See SECURITY-REVIEW.md and MAC-IPHONE-CHECKLIST.md. Do not store real passwords yet.
| Folder | Purpose |
|---|---|
apps/vault | iPhone and Android vault app |
apps/codes | iPhone and Android code app |
packages/tbd_core | Shared vault format, AES-256-GCM encryption, Argon2id backup, and code generation |
packages/tbd_platform | Device-protected key access and app pairing |
design | SVG icons, rendered previews, and bundled-font licenses |
The fonts and icon assets are bundled in the apps. There are no accounts, analytics, remote APIs, or app-managed network calls. Android release manifests contain no INTERNET permission. The operating system's file picker may still offer cloud locations; select local storage for strictly offline backups.
To move to a new phone, install both apps, choose Restore Encrypted Backup in TBD Vault, select the .tbdbackup file, enter its backup password, pair TBD Codes, and enter the new code. iPhone and Android use the same backup format. There is no server or forgotten-password recovery.
Flutter 3.47.7 / Dart 3.13.5 was used for this source. From each app folder run flutter pub get, then flutter analyze. From packages/tbd_core, run dart test. The shared tests cover the RFC 6238 SHA-256 code vector, vault encryption, altered backup rejection, and repeat file saves.
Building and installing the iPhone apps requires a Mac with Xcode, an Apple Developer membership, and the friend's iPhone registered for private distribution. Both app IDs must belong to the same Apple team and have the shared Keychain group com.techboydeepak.tbd.shared. In Xcode, set the same Team for both Runner targets and confirm Runner.entitlements is included in each signing profile. Build both apps with --dart-define=TBD_TEAM_ID=YOUR_10_CHARACTER_TEAM_ID so the runtime uses the matching Keychain access group. Archive and distribute to the registered device as Ad Hoc apps. Do not change either bundle ID after storing real passwords without a tested migration.
iPhone builds, signing, installation, biometric prompts, and app-to-app pairing have not been verified on this Windows machine. They must be tested on the actual iPhone before daily use. Free Apple personal signing can expire after seven days; TestFlight builds expire after 90 days, which is why private registered-device distribution is planned.
The Android apps require Android 11 or newer. Debug builds of both apps from the same machine use the same debug signing certificate and can pair. Private release builds must be signed with the same release keystore. Set TBD_ANDROID_KEYSTORE, TBD_ANDROID_STORE_PASSWORD, TBD_ANDROID_KEY_ALIAS, and TBD_ANDROID_KEY_PASSWORD as environment variables before building each release APK. Never put the keystore or passwords in this repository. Do not distribute a debug-signed APK for password storage.
Android and iPhone data do not synchronize automatically. Move only the encrypted .tbdbackup file by a method you choose, such as a local file transfer, and restore it on the destination phone.
Visual colors and fonts follow techboydeepak.com: #080808, #f4f1ec, #f22d1c, Manrope, Bebas Neue, and IBM Plex Mono. Font licenses are in design/licenses. The two SVG icon sources are in design; rerender platform assets with python tools/render_icons.py after installing resvg-py.
The code interval is deliberately shorter than the RFC 6238 recommendation of 30 seconds, following the requested 5–10 second setting. Ten seconds is the default.