Skip to content

Latest commit

 

History

42 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RESET — Stop. Reset. Continue Life.

A minimalist iOS app that interrupts overthinking loops and returns users to real life in under 60 seconds. Built with SwiftUI, Groq LLM, and SwiftData.

Screenshots

What it does

When stuck in a thought loop, users type one repeating thought and receive a personalized Body/Mind/Action reset powered by AI. The app then encourages them to close it and return to life.

RESET is intentionally anti-engagement — no feed, no notifications, no streaks. Every screen has one action and leads toward closing the app.

Core Flow

  1. User taps RESET NOW
  2. Types one repeating thought
  3. AI analyzes the loop and generates a personalized intervention
  4. User receives three reset cards: Body, Mind, Action
  5. App encourages them to leave the phone

Technical Highlights

AI Integration Integrated Groq's LLM API (llama-3.1-8b-instant) via URLSession with a custom prompt engineering system. Responses are structured as JSON and decoded into typed Swift models.

RAG-style Personalization Built a context-aware prompt pipeline that fetches the user's last 5 sessions from SwiftData and injects them as context into each new AI request. Responses improve in relevance over time without a vector database.

Local Persistence Used SwiftData to store reset sessions on-device. No backend or user account required — privacy-first by design.

Architecture MVVM with a single shared ViewModel injected via @EnvironmentObject. Navigation is driven by a NavigationPath owned by the ViewModel, keeping all routing logic out of views.

Anti-engagement Design Intentionally designed to get users off their phone. Every screen has one action and leads toward closing the app.

Tech Stack

  • Swift + SwiftUI (iOS 17+)
  • MVVM architecture
  • NavigationStack with enum-based routing
  • Groq LLM API (llama-3.1-8b-instant)
  • SwiftData for local session persistence
  • async/await for all network and data operations

Architecture Decisions

  • Single shared ViewModel injected via @EnvironmentObject — avoids prop drilling across 5 screens
  • Linear NavigationPath owned by ViewModel — all routing logic stays out of views
  • Local-first storage with SwiftData — no backend, no auth, no privacy concerns
  • Session history injected into AI prompt — personalization without vector database complexity

How to Run

  1. Clone the repo
  2. Create Config.xcconfig and add your Groq API key: GROQ_API_KEY = ""
  3. Run on iOS 17+ simulator or device

Why I Built It

Most wellness apps maximize engagement. RESET is built around the opposite idea — use it briefly, feel better, move on. I wanted to build a tool that helps people disengage from thought loops instead of deepening them.

About

A minimalist iOS app that interrupts overthinking loops in under 60 seconds. Type one repeating thought → get a personalized AI reset → close the app and return to life.

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages