Inspiration
Autism affects over 70 million people worldwide, yet most productivity and communication tools are built entirely for neurotypical users. We kept coming back to one specific problem: autistic individuals often know exactly what they need a quieter workspace, a different meeting format, a sensory accommodation but the act of communicating that need to another person can feel impossible. The anxiety of being perceived as "difficult" or "demanding" creates a barrier that stops people from advocating for themselves, even when the solution is simple.
We also thought about what happens in the moments right before a meltdown or shutdown. There is no app that says: here is what to do right now, in plain language, step by step, built for the way your brain works in a crisis. We wanted to build that.
Spectra started from a simple question: what if support tools were designed for the moment when communication feels hardest?
Many autistic and neurodivergent people already understand their needs. They may know that bright lights are draining them, that a meeting format is overwhelming, or that they need time to recover after sensory overload. The problem is not awareness. The problem is having to explain those needs clearly while anxious, exhausted, or close to shutdown.
We wanted to build something that helps in that exact gap. Spectra gives users a calm space to track what they experience, understand their patterns, and turn difficult thoughts into clear self-advocacy.
Our goal was to create a tool that does not try to change the person. Instead, it supports the way they already think, feel, and communicate, helping them protect their energy and ask for what they need with confidence.
## What it does
Spectra is a sensory companion app with four core features:
Sensory Diary — Users log sensory experiences throughout the day: type (sound, light, smell, touch, temperature), intensity on a 1–10 scale, location, and how it affected their ability to function. Over time this builds a personal map of triggers.
Meltdown Log — A private, judgment-free space to document meltdown and shutdown events after they happen. Users record what triggered it, how severe it was, how long it lasted, and what helped them recover. The dashboard surfaces patterns across both logs so users can connect the dots between daily sensory load and breaking points.
AI Script Generator — Powered by Claude. Users describe what they need to communicate — in messy, anxious, unfiltered language — and Spectra transforms it into a clear, professional, self-advocating message. It covers workplace accommodations, medical appointments, family conversations, school requests, and more. The output sounds like a real person, not a corporate template. No em dashes. No filler phrases. Just a message someone can actually send.
Safe Mode — A calm, low-stimulation crisis page for moments of overwhelm. Users describe what they are feeling right now and Claude generates a personalized regulation plan: a validation of what they are experiencing, a breathing exercise chosen for their specific state (box breathing, 4-7-8, or slow breathing depending on severity), three to four grounding steps written for their situation, and a closing affirmation. The page also includes pre-written communication cards users can copy or display full-screen to show another person without needing to speak.
## How we built it
Backend: Python and FastAPI serve both the REST API and the frontend from a single process. SQLite stores all user data locally with no setup required. python-dotenv handles environment configuration.
AI: All Claude interactions use the claude-sonnet-4-6 model via the Anthropic Python SDK. Both the Script Generator and Safe Mode use prompt caching ( cache_control: ephemeral ) on system prompts to reduce latency on repeated calls. The Safe Mode prompt is carefully engineered to select the appropriate breathing technique based on the severity of what the user describes — it chooses between box breathing, 4-7-8, and slow breathing automatically.
Frontend: Vanilla HTML, CSS, and JavaScript with no framework and no build step. A custom client-side router handles navigation between the five pages. The breathing animation in Safe Mode is driven entirely by a JavaScript timer that updates a CSS-animated circle through each phase in real time.
Deployment: The app is deployed on Render and connected directly to the GitHub repository for continuous deployment.
## Challenges we ran into
Getting Claude to sound human. The first version of the Script Generator produced polished but cold, corporate-sounding emails. We had to be very specific in the prompt — banning em dashes, forbidding filler phrases like "I hope this finds you well," and explicitly instructing Claude to write like a real person on a Tuesday afternoon. The difference in output quality was significant.
Designing for the right user state. Safe Mode is used when someone is overwhelmed and cannot think clearly. Every design decision — font size, number of elements on screen, the order of sections, the color palette — had to account for a user who may not be able to read long sentences or make decisions. Striking the balance between being helpful and being visually calm was harder than expected.
Breathing technique selection. We wanted Claude to choose the right breathing pattern for the situation rather than always defaulting to box breathing. Getting the model to reliably map emotional states to specific techniques required several iterations of the system prompt before it consistently chose 4-7-8 for high panic and slower techniques for general anxiety.
Process management during development. Uvicorn's reload mode spawned child processes that did not terminate cleanly, leaving ghost processes holding port 8000 across restarts. We ended up disabling reload for stability.
## Accomplishments that we're proud of
The Safe Mode feature working end to end is the one we are most proud of. A user types one or two sentences about what they are feeling, and within seconds they have a named, validated description of their experience, a breathing exercise calibrated to their state, and a personal step-by-step grounding plan. That entire pipeline — from raw emotional input to structured, actionable support — runs through a single Claude API call with a carefully crafted prompt.
We are also proud that the entire app runs with a single command and zero infrastructure. No Docker, no cloud database, no build pipeline. A caregiver or clinician could set this up for a patient in under five minutes.
## What we learned
Claude is most powerful when the prompt does not just describe the task but describes the emotional context of the person the output is for. The Script Generator output improved dramatically once we stopped describing what to write and started describing who was going to read it — a scared person who just wants to send one email without sounding demanding.
We also learned that accessibility and simplicity are not constraints on good design. The decision to use no frontend framework, no complex build pipeline, and a calm minimal color palette made the app faster, more accessible, and easier to demo than a heavier stack would have been.
## What's next for Spectra
Personalized trigger profiles — Let users save their known triggers and sensory sensitivities so the AI can reference them directly. The Script Generator knows you are noise-sensitive before you explain it, and Safe Mode already knows your top coping strategies.
Pattern-based alerts — When the Sensory Diary detects three high-intensity entries in one day, Spectra proactively suggests opening Safe Mode before a shutdown occurs.
Caregiver and support network sharing — Let users generate a one-page sensory profile to share with a manager, therapist, or family member — a plain-language document explaining their triggers, communication preferences, and what helps them regulate.
Voice input for Safe Mode — When someone is in crisis, typing is hard. A voice-to-text input that lets users describe their state out loud would make Safe Mode accessible in more critical moments.
Mobile app — The core Safe Mode feature belongs on a phone, available in one tap from the lock screen.
Built With
- anthropic
- css3
- fastapi
- html5
- javascript
- python
- python-package-index
- sqlite
- uvicorn
Log in or sign up for Devpost to join the conversation.