SYSTEM ACTIVE

Take Command of Your Focus with Reality

The Best Focus & Discipline App | Military-Grade Android Blocker

Reality is not another bypassable app timer. It is a local-first, zero-tamper productivity operating system featuring secure on-device analytics, BYOC sync, and private AI.

1443+ Downloads
vPre-Release v1.1.1-beta
Reality Life OS Dashboard Mockup showcasing focus statistics and AMOLED-optimized productivity scores
Local-First Guard Active
The Reality Ecosystem

How Everything Connects

A seamless, local-first ecosystem where your Android device acts as the central hub, deeply integrated with Google Workspace and Tapasya Web.

App Blocker & Nightly

Military-grade blocking, automated evening reflection, and wakeup math.

Intelligence Assistant

On-device context engine using MCP to route actions and analyze logs.

Reality Hub

The Android core powering the entire ecosystem securely offline.

Google Workspace

BYOC Drive Sync, Calendar, Tasks, and Gemini Docs integration.

Tapasya Web

Connected web portal for distraction-free deep work and analytics.

Architecture Blueprints

Technical Connections & Visual Flows

Complete visual mappings explaining Reality's security policies, database ORM relations, on-device managers, and Cloudflare Worker endpoints.

Block Verification & Tamper Loop

Reality secures your focus using a combination of local system hooks and remote verification to prevent tampering:

  • Accessibility Watchdog: Instantly hooks layout update triggers to scan package titles against forbidden paths.
  • Secure Time Verification: Reality requires an internet connection to sync with Cloudflare NTP, ensuring users cannot bypass blocks by changing device time.
Window Callback
AppBlockerServiceO(1) SettingsBoxCloudflare NTP TimeDevice Admin
Render Lockscreen

Database schema (Room ORM)

Reality records local state using Room ORM mapping directly to an isolated database file, while relying on cloud connectivity for secure AI features and verifiable time syncs:

  • Alarms & Tasks: Store scheduled times, snooze counts, and bidirectional task identifiers.
  • AI Memories & Reflections: Log sliding-window facts and user introduction variables required for remote AI processing.
RealityDatabase
TaskEntityGoogle Sync ID
AlarmEntityMath Difficulty
MemoryEntityFact Vectors

Google Drive Encrypted Backups

Your backups stay in your control. The application encrypts local data packages before initiating uploads directly to the user's Drive folder:

  • Local Encryption: Database schemas and shared preferences are compiled and encrypted on-device.
  • Drive Transfer: Interacts directly with the personal Google Drive API endpoint.
Local SQLite+ Preferences
JIT Encryption(AES key seed)
Google Drive(/appDataFolder)

Google Calendar & Tasks Handshake

Integrates calendar routines and tasks securely on your terms. Direct client-side OAuth handles authentication without middle servers:

  • Credentials Validation: Interacts with Google Auth server using your client ID configs.
  • Synchronized writing: Automates tasks/events updates in Google Tasks and Calendar.
Reality App
Google ServerOAuth 2.0 AuthAccess/Refresh
Workspace APICalendar / Tasks

Cloudflare Edge: Secure Time & AI Model

Provides critical cloud infrastructure for Reality, ensuring high performance, security, and tamper resistance:

  • Secure Edge AI Model: Runs the Reality Intelligence Assistant securely on Cloudflare Workers with generous usage limits, protecting prompt logic.
  • Cryptographic JIT Identity: Processes user-specific identity maps via server-side HMAC-SHA256, protecting AES key seeds from client-side exploitation.
  • Time Verification: Uses Cloudflare NTP to guarantee accurate session times independent of the device clock.
Reality App(Device)
Cloudflare EdgeSecure AI ModelHMAC-SHA256NTP Verification
AI/Time ResponseVerified Data

Tapasya focus logic

Tapasya monitors work blocks dynamically. If focus is interrupted, penalties are applied and the active work chunk is reset:

  • Effective Focus Calculation: Aggregates focus in strict 15-minute segments.
  • Tamper penalty: Distraction activities trigger penalty lockouts.
Focus Start
TapasyaManager15-min segment mathApp-switch checks
Grade / Penalty

Math Alarm Difficulty Scaling

Alarms dynamically scale question complexity depending on the hour to prevent snooze-skips on early mornings:

  • Time Check Trigger: AlarmManager checks current hour.
  • Scale multiplier: Earlier hours generate complex arithmetic challenges.
Alarm Ring(Triggered)
Hour Checker4-6 AM (Hard)7-9 AM (Normal)
Math Challenge

Model Context Protocol (MCP) Tool Routing

Reality Intelligence Assistant operates on the Model Context Protocol (MCP) to run tools securely based on user instructions:

  • Command Parsing: Chat prompts are parsed to identify tool requirements.
  • Registry execution: Binds actions directly to `ToolRegistry.kt` for automation.
User PromptVoice / Text
ToolRegistrySchema validationget_tool_schema
App Block / Alarm

Appearance & Theme Engine

Handles the user's customized UI. Styling setups dynamically map XML layouts and vector fonts:

  • Theme Mapping: Applies custom vector resources and layouts to the UI elements.
  • Fonts Integration: Injects customizable assets to style dashboard consoles.
Theme Selection
Appearance EngineLoad custom fontsMap XML colors
Cinematic UI
Data Privacy Model

Direct Local-First Architecture

No servers between your device and your personal cloud storage.

On-Device Privacy

All credentials, usage databases, and authentication logs are saved locally inside EncryptedSharedPreferences and an encrypted SQLite database. You configure your own personal Google Cloud project credentials for background integrations, ensuring your private events and documents are never shared.

Bypass & Tamper Prevention

Reality prevents time manipulation and force-stops using background verification loops. If a settings-level override attempt is detected, Strict Mode blocks the request and initiates custom lockout penalties.

Host Your Own Workspace Sync

Bring Your Own Cloud (BYOK) for ultimate control.

OAuth Project Architecture

To ensure no centralized database has access to your files, you connect Reality directly to your Google Cloud Console project. All Google Tasks, Calendar events, and Drive files are created straight from your device using local OAuth tokens.

Required OAuth Scopes

  • https://www.googleapis.com/auth/calendar.events
  • https://www.googleapis.com/auth/drive.file
  • https://www.googleapis.com/auth/tasks
  • https://www.googleapis.com/auth/userinfo.email
  • https://www.googleapis.com/auth/userinfo.profile
  • openid

1. Configure Google Cloud Console

Go to the Google Cloud Console, create a project, and enable the Google Calendar API, Google Drive API, and Google Tasks API.

2. Set Up OAuth Consent Screen

Set up an External OAuth Consent Screen. Add your Google account email as a Test User. Add the scopes listed above.

3. Generate Desktop Credentials

Go to Credentials > Create Credentials > OAuth client ID. Select Desktop application as the Application type, name it, and copy the generated Client ID and Client Secret.

4. Save in Reality App

Open Reality App > Go to Elite Page or Profile Page > Tap the Settings icon in the top right. Paste your Client ID and Client Secret, and tap Save. You can now tap Connect on any service to authenticate!

Want an AI to guide you?

Copy this prompt and paste it into ChatGPT or Google Gemini. It will walk you through the entire Google Cloud Console setup step-by-step.

Help me set up a Google Cloud Console project for a local-first Android app called "Reality".

Walk me through these steps one by one. Don't give me the next step until I say "done".

Step 1: Go to Google Cloud Console and create a new project.
Step 2: Enable the following APIs: Google Calendar API, Google Tasks API, Google Drive API.
Step 3: Setup the "OAuth Consent Screen" as "External". Fill in the mandatory app details.
Step 4: In the "Scopes" section of the consent screen, add exactly these 6 scopes:
- https://www.googleapis.com/auth/calendar.events
- https://www.googleapis.com/auth/drive.file
- https://www.googleapis.com/auth/tasks
- https://www.googleapis.com/auth/userinfo.email
- https://www.googleapis.com/auth/userinfo.profile
- openid
Step 5: Set the publishing status to "Testing" and add my own email to the "Test Users" list.
Step 6: Go to "Credentials" -> "Create Credentials" -> "OAuth Client ID".
Step 7: Choose Application Type: "Desktop app". (This is critical because the app uses a local 127.0.0.1 redirect).
Step 8: Give me the Client ID and Client Secret.

Once I have the keys, tell me to open the Reality App -> Go to the Elite Page or Profile Page -> Tap the Settings icon in the top right -> Paste the Client ID and Secret and click Save.

"Your data. Your focus. Your life.
On YOUR terms."

Built by someone who lost control of their own fingers. Designed for those who want it back.

— Pawan Washudev