Real numbers from the codebase. No rounding. No marketing. Verified on launch day.
Marks, Files, and Memory Recall were invented and built from scratch. No other AI chat app has these systems. They are the product.
| Marks system (structured memory) | built from scratch |
| Files system (AI-generated documents) | built from scratch |
| Memory Recall (3-layer search) | built from scratch |
| Platforms | iPhone · iPad · Web |
| Web app | free tier, syncs with iPhone & iPad |
| Localization languages | 34 |
Memory Recall runs three layers in sequence: exact match, semantic similarity, vector proximity. If nothing qualifies, it returns empty. No hallucinated connections.
iOS app in Swift. Backend API + Website in TypeScript. Five months, no weekends.
| iOS app (Swift) | 93,554 lines |
| Backend API (TypeScript) | 187,907 lines |
| Website (TypeScript / React) | 52,310 lines |
| Total | ~333,000 lines |
| Developers | 1 |
| Time to build | ~5 months |
The average indie iOS app ships at 10,000–30,000 lines. Thremark is 10× larger, built by one person in 5 months.
The same person who wrote the code designed the app: icons, screens, App Store visuals, and motion. No design agency. No handoffs.
| Designer background | 10 years in 3D & visual design |
| Every screen | tested on a real device before shipping |
| App Store screenshots | designed in-house |
| App icon | custom, no template |
| Design language | liquid glass from day one |
| Design handoffs to a third party | 0 |
liquid glass requires precise balance of blur, opacity, and safe area insets. One wrong value shows immediately on a real device.
Every prompt change triggers an automated quality check. An AI judge scores 2,248+ scenarios across 22 quality categories. Below 80% — it doesn’t ship.
| Automated eval scenarios | 2,248+ |
| Quality categories tracked | 22 |
| Testing layers (unit → E2E) | 12 |
| Minimum pass rate to ship | 80% |
| Prompt changes shipped without eval | 0 |
A separate AI model acts as judge, scoring every response independently. It doesn’t know which model produced the output.
Every part of the system has a letter grade. An open bug automatically caps the grade. You can’t self-grade to A+ with known issues open.
| Reliability | A- |
| Operational Excellence | A+ |
| Security & Data Governance | A |
| Architecture Health | A |
| AI / ML Output Quality | B+ |
| Prompt & Eval Architecture | A |
| User Experience | A- |
| Open P0 bugs | 0 |
| Open P1 bugs | 0 |
| Overall composite | A |
Methodology: AWS Well-Architected · Google SRE. An open P0 bug automatically caps the grade. No self-grading to A+ with known issues open.
All 234 event names are typed constants. The compiler catches typos before they reach PostHog. Funnels and dashboards never silently break.
| Named event constants | 234 |
| Bare string event literals in code | 0 |
| Conversion funnels instrumented | 19 |
| Dedicated PostHog dashboards | 11+ |
| Cohorts & retention segments | active |
Before: ~50 bare strings scattered across callsites. One typo = silent broken funnel, invisible until the dashboard flatlines. Now the compiler catches it.
Crashes, hangs, and network errors are tagged and routed. Simulator traffic is isolated. Production numbers reflect real users only.
| Error monitoring | Sentry |
| Tagged issue categories | ~54 |
| Simulator data in prod dashboards | 0 |
| Environments tracked | production · staging · simulator |
| Production data isolation axes | 4 |
App hangs are tracked separately from crashes. A frozen UI that never crashes is harder to catch. It requires explicit hang detection, not just a crash reporter.
Most people chat with AI without thinking about where their data goes. In Thremark, privacy decisions were made at the architecture level, before the first line shipped.
| Your name or email sent to AI providers | never |
| AI providers training on your data | none (API tier, contractual) |
| No-account usage | anonymous device ID, no Apple ID required |
| Delete all data from server | one tap in Settings |
| Sentry captures message content or marks | never |
| GDPR / CCPA compliant | yes |
| Data sold to third parties | never |
Consumer ChatGPT, Gemini, and Claude train on conversations by default. The paid API tiers Thremark uses do not. It’s a contractual difference, not a policy preference.
Pin tests lock exact behavior. If that line ever changes, CI fails loudly before anything ships. Deploys that skipped CI: 0.
| Total test assertions | 16,751 |
| Test files | 588 |
| Pin tests (behavior locks) | 252 |
| Bug regression pins | 24 |
| iOS UI tests (XCUITest) | 56 scenarios |
| Deploys that skipped CI | 0 |
252 pin tests = 252 behaviors frozen in code. Refactor freely. If the output shifts even slightly, CI fails before anything merges.
“I built this because I kept forgetting things I told ChatGPT. Five months later, here we are.”
— Konstantin, June 2026
Get 3 months Plus free
Reply memory on X / Twitter. First 20 get an offer code via DM.
Ends July 23, 2026. No purchase required.