Home›Shipped›JourneeX

JourneeX

Write your day. Hear it back.

View the live product
JourneeX
msCold load time globally via Cloudflare edge
Word cap on AI summaries to keep them human
Infrastructure cost at current scale
Single file. The entire app is one index.html

Overview

JourneeX came to us in the state most projects like this do: the team knew something wasn't working, but every function had a different theory about why.

We were brought in not to patch the symptom, but to rebuild the underlying flow: new instrumentation, a redesigned experience, and a technical foundation that could hold up as the product grew.

The Challenge

The blank page is intimidating. Most journaling apps are either too minimal or too feature-heavy, and neither addresses the core problem: writing into a void feels pointless. These were the specific challenges:

  • Getting the AI tone right: early Claude responses read like clinical summaries, not a friend listening
  • Building a full app inside a single index.html with no bundler, no framework, no build step
  • Designing a native-feeling mobile experience entirely in vanilla CSS and JavaScript
  • An API key was accidentally exposed during development and had to be revoked immediately
Did you know?

Cloudflare Workers runs at the edge in over 300 cities worldwide, which means users get a response from a server physically close to them. Combined with a single-file architecture, this makes load times dramatically faster than a traditional server setup.

Our Approach

The product philosophy was restraint. One job: write, get a thoughtful summary back. Everything else was deliberately left out.

1. The prompt is the product

The hardest work was not the code. It was the prompt. Multiple iterations were required to get Claude to write in natural, conversational prose under 250 words, without headers, without bullet points, in second person, the way a thoughtful friend would speak.

2. Single-file as a feature

Building everything into one index.html was intentional. Cloudflare Workers serves static assets extremely efficiently, and a single file means zero deployment complexity. Every decision had to be deliberate.

3. Mobile first, no framework

A bottom tab navigation system was designed and built from scratch in vanilla CSS and JavaScript to give the app a native feel on mobile without any framework overhead.

JourneeX in progress
An early working version, a few weeks into the project.
JourneeX: an AI journal that writes back like a thoughtful friend, not a therapy bot.
Tip

The insight behind JourneeX was simple: writing into a void feels pointless. What if your journal could write back not with affirmations, but with a genuine reflection of what you actually wrote?

Results

The AI summary experience works. In testing, summaries consistently felt warm and personal rather than clinical or generic.

  • End-to-end journaling flow live: write, save, receive AI summary
  • AI summaries consistently praised in testing for feeling warm and non-clinical
  • Mobile bottom-tab navigation gives the app a native feel on all screen sizes
  • Cold load time under 800ms globally via Cloudflare edge deployment
  • Zero infrastructure cost at current scale

Key Takeaways

JourneeX taught me lessons that now inform every AI product decision I make.

The prompt is the product. In AI-powered products, the hardest work is not the code. It is figuring out exactly what to say to the model to get it to behave the way a human would. Tone, length, constraints: all of it matters enormously.

Constraints can be features. The single-file constraint forced every decision to be deliberate. There was no room for bloat. The result is an app that does one thing and does it well.

Security is not optional. An API key was accidentally exposed during development and had to be revoked immediately. A hard lesson, learned once. All secrets now live in Cloudflare Workers environment variables, never in code.

“

This project taught me that in AI-powered products, the prompt is the product. Tone, word choice, constraints, length limits: all of it matters enormously. I also learned to respect the single-file constraint as a feature, not a limitation.

Neeraj Raisinghani, Builder, JourneeX

Looking Forward

The next phase is multi-entry context: letting the AI summarise a week of entries together, not just one at a time. The goal is to surface patterns in how you think and feel over time, not just reflect a single day back at you.

Related projectDivisio→
--:--Gurugram
0000 X 0000 Y