<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Ao oneslate</title>
    <description>The latest articles on DEV Community by Ao oneslate (@onojunichiro).</description>
    <link>https://dev.to/onojunichiro</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3913278%2F74af01a9-8729-4259-830a-d34763394620.png</url>
      <title>DEV Community: Ao oneslate</title>
      <link>https://dev.to/onojunichiro</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/onojunichiro"/>
    <language>en</language>
    <item>
      <title>Building a Calendly alternative on the side: 14 features in one day with Claude</title>
      <dc:creator>Ao oneslate</dc:creator>
      <pubDate>Tue, 05 May 2026 06:55:06 +0000</pubDate>
      <link>https://dev.to/onojunichiro/building-a-calendly-alternative-on-the-side-14-features-in-one-day-with-claude-4ckj</link>
      <guid>https://dev.to/onojunichiro/building-a-calendly-alternative-on-the-side-14-features-in-one-day-with-claude-4ckj</guid>
      <description>&lt;h2&gt;
  
  
  Why I'm building OneSlate
&lt;/h2&gt;

&lt;p&gt;Calendly is great if you're a freelancer with one calendar.&lt;/p&gt;

&lt;p&gt;It breaks if you're an executive with shared calendars from your &lt;br&gt;
team — which is exactly my situation. I run a small company and &lt;br&gt;
have shared calendars from ~10 colleagues. When I create a Calendly &lt;br&gt;
link, every "shared" event gets treated as my own busy time.&lt;/p&gt;

&lt;p&gt;The result: my Calendly booking page often shows zero available &lt;br&gt;
slots. People who try to schedule with me give up. I've had to &lt;br&gt;
manually email back-and-forth more times than I can count.&lt;/p&gt;

&lt;p&gt;OneSlate solves this with a simple but specific filter: only &lt;br&gt;
calendars where &lt;code&gt;calendar_kind&lt;/code&gt; is &lt;code&gt;primary&lt;/code&gt; or &lt;code&gt;owned&lt;/code&gt; count &lt;br&gt;
toward your busy time. Shared calendars are visible to you in &lt;br&gt;
the dashboard, but they don't pollute your booking page's &lt;br&gt;
availability.&lt;/p&gt;

&lt;p&gt;That single insight is the core differentiator. Everything else &lt;br&gt;
in OneSlate — multi-account integration (Google + Microsoft), &lt;br&gt;
mobile-first UX, scheduling links — is built on top of solving &lt;br&gt;
that specific executive problem.&lt;/p&gt;
&lt;h2&gt;
  
  
  The setup
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Solo founder&lt;/strong&gt;, ~1 month into OneSlate's development&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Day job&lt;/strong&gt;: building MVPs for early-stage startups&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Stack&lt;/strong&gt;: Next.js 14, Supabase, Tailwind CSS, SWR&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;AI tools&lt;/strong&gt;:

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Claude&lt;/strong&gt; (&lt;a href="https://claude.ai" rel="noopener noreferrer"&gt;claude.ai&lt;/a&gt;) — design, strategy, 
prompt engineering, decision support&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;cowork&lt;/strong&gt; (Anthropic's coding agent) — implementation, testing, 
git operations, deployment&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hosting&lt;/strong&gt;: Vercel (auto-deploy from main)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Repository&lt;/strong&gt;: just me, pushing to main with feature flags&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;
  
  
  The 14 features I shipped that day
&lt;/h2&gt;
&lt;h3&gt;
  
  
  Morning session (3 hours)
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;CreateEventModal&lt;/strong&gt; — multi-calendar event creation with 
recurrence, attachments, video conferencing URL auto-generation&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Public booking page bug fixes&lt;/strong&gt; — 4 critical issues including 
timezone display, all-day events blocking slots, and grid hardcoding&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Logged-in viewer feature&lt;/strong&gt; — when an OneSlate user views 
someone else's booking page, their own calendars overlay 
automatically (no OAuth needed). This is the Calendly-killer.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Scheduling-pages regression fix&lt;/strong&gt; — PATCH 400 error from a 
PostgreSQL time format mismatch&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Colleague calendar exclusion&lt;/strong&gt; — the &lt;code&gt;calendar_kind&lt;/code&gt; filter 
I described above. Applied across PC dashboard, mobile, and 
public booking page.&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;
  
  
  Afternoon session (3 hours, between client calls)
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Mobile UI specification v2&lt;/strong&gt; — comprehensive 5-phase plan, 
created with Claude over coffee&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Phase 1: Mobile foundation&lt;/strong&gt; — MobileLayout, MobileBottomNav, 
MobileHeader, FAB, safe-area utilities&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Phase 2: Mobile dashboard&lt;/strong&gt; — including a 6-hour debugging 
detour that I'll describe below&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Feature Flag system&lt;/strong&gt; — &lt;code&gt;lib/feature-flags.ts&lt;/code&gt; with 
&lt;code&gt;ALPHA_EMAILS = ['onojun.s@gmail.com']&lt;/code&gt; for safe rollout&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Preview/main deployment workflow&lt;/strong&gt; — operational rules for 
cowork to push directly to main with alpha gating&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;
  
  
  Late evening session (2 hours)
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Phase 3a: Team project mobile UI&lt;/strong&gt; — project list, member 
management, invitation flow&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Phase 3b-1: Availability + bookings tabs&lt;/strong&gt; — team scheduling 
coordination&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Phase 3b-2: Personal scheduling links mobile&lt;/strong&gt; — the 
Calendly-replacement core, now mobile-first&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;UI polish&lt;/strong&gt; — toggle position fixes, Outlook HTML tag stripping 
(Outlook returns &lt;code&gt;body.contentType="html"&lt;/code&gt; by default), past event 
handling&lt;/li&gt;
&lt;/ol&gt;
&lt;h2&gt;
  
  
  The collaboration pattern
&lt;/h2&gt;

&lt;p&gt;This is the part most people get wrong when they try to use AI &lt;br&gt;
agents.&lt;/p&gt;
&lt;h3&gt;
  
  
  Layer 1: Strategy with Claude
&lt;/h3&gt;

&lt;p&gt;I'd open claude.ai during a coffee break or between calls. &lt;br&gt;
We'd discuss:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;UX edge cases (what happens with Outlook all-day events?)&lt;/li&gt;
&lt;li&gt;Prioritization (Phase 2 mobile dashboard vs. UX polish?)&lt;/li&gt;
&lt;li&gt;Technical trade-offs (sticky header vs. flex-col restructure?)&lt;/li&gt;
&lt;li&gt;Edge cases (what if the user's primary calendar isn't the 
default selected?)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The output of these conversations was a detailed cowork prompt &lt;br&gt;
— often 200-400 lines — with specific files to touch, &lt;br&gt;
acceptance criteria, what NOT to break, and operational rules.&lt;/p&gt;
&lt;h3&gt;
  
  
  Layer 2: Implementation with cowork
&lt;/h3&gt;

&lt;p&gt;I'd paste the prompt into cowork. It would:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Read the relevant files&lt;/li&gt;
&lt;li&gt;Write the code&lt;/li&gt;
&lt;li&gt;Run &lt;code&gt;npx next build&lt;/code&gt; to verify type checks&lt;/li&gt;
&lt;li&gt;Commit with a descriptive message&lt;/li&gt;
&lt;li&gt;Push to main&lt;/li&gt;
&lt;li&gt;Wait for Vercel to deploy&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Total time: 30-60 minutes per feature, depending on complexity.&lt;/p&gt;

&lt;p&gt;While this ran, I'd go back to client work. Two streams &lt;br&gt;
running in parallel.&lt;/p&gt;
&lt;h3&gt;
  
  
  Layer 3: Real device verification
&lt;/h3&gt;

&lt;p&gt;After cowork reported "done," I'd verify on iPhone. This is &lt;br&gt;
where the magic — and the bugs — surfaced.&lt;/p&gt;

&lt;p&gt;PC testing missed:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Outlook events showing raw HTML tags in descriptions&lt;/li&gt;
&lt;li&gt;Past events polluting the "today" view&lt;/li&gt;
&lt;li&gt;Toggle UI overflow on the right edge of cards&lt;/li&gt;
&lt;li&gt;Mobile event creation reflecting in colleague's calendar 
but not the creator's own&lt;/li&gt;
&lt;li&gt;Mobile event detail tap doing nothing (no onClick handler)&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Real device testing caught all of these. The pattern: design &lt;br&gt;
in Claude, implement in cowork, verify on iPhone, iterate.&lt;/p&gt;
&lt;h2&gt;
  
  
  Key moments — the wins
&lt;/h2&gt;
&lt;h3&gt;
  
  
  The "colleague calendar leak" insight
&lt;/h3&gt;

&lt;p&gt;This is OneSlate's reason to exist.&lt;/p&gt;

&lt;p&gt;I noticed it because &lt;em&gt;I have the problem&lt;/em&gt;. When I tried using &lt;br&gt;
Calendly for myself, it showed me as busy 24/7 because of &lt;br&gt;
shared calendars I never even attend.&lt;/p&gt;

&lt;p&gt;So I built a &lt;code&gt;calendar_kind&lt;/code&gt; enum: &lt;code&gt;primary&lt;/code&gt;, &lt;code&gt;owned&lt;/code&gt;, or &lt;br&gt;
&lt;code&gt;shared&lt;/code&gt;. The availability calculation only considers the first &lt;br&gt;
two. Shared calendars are visible to me in the dashboard for &lt;br&gt;
context, but they don't pollute my booking page.&lt;/p&gt;

&lt;p&gt;This took ~30 minutes to design with Claude and ~1 hour to &lt;br&gt;
implement with cowork. Calendly has been around since 2013 &lt;br&gt;
and still doesn't solve this. It's a small change with big &lt;br&gt;
implications.&lt;/p&gt;
&lt;h3&gt;
  
  
  The Calendly-killer feature
&lt;/h3&gt;

&lt;p&gt;When you're logged into OneSlate and view another OneSlate &lt;br&gt;
user's booking page, your calendars automatically overlay on &lt;br&gt;
their availability — no OAuth dance, no extra clicks. You &lt;br&gt;
see in real-time when both of you are free.&lt;/p&gt;

&lt;p&gt;Calendly can't do this because they don't have your account &lt;br&gt;
context when you're booking on someone else's page. OneSlate &lt;br&gt;
does, because both of you are users.&lt;/p&gt;

&lt;p&gt;This is the kind of feature you only think of when you're &lt;br&gt;
both the user and the builder.&lt;/p&gt;
&lt;h3&gt;
  
  
  Feature Flags as a force multiplier
&lt;/h3&gt;

&lt;p&gt;After the PostCSS event (described below), I built a feature &lt;br&gt;
flag system in 30 minutes:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight typescript"&gt;&lt;code&gt;&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;ALPHA_EMAILS&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;onojun.s@gmail.com&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;];&lt;/span&gt;

&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="kd"&gt;const&lt;/span&gt; &lt;span class="nx"&gt;FEATURE_FLAGS&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="na"&gt;MOBILE_DASHBOARD&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;mobile_dashboard&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="na"&gt;MOBILE_TEAM&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;mobile_team&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="na"&gt;MOBILE_SCHEDULING_PAGES&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;mobile_scheduling_pages&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
  &lt;span class="na"&gt;MOBILE_SETTINGS&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="s1"&gt;mobile_settings&lt;/span&gt;&lt;span class="dl"&gt;'&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt; &lt;span class="k"&gt;as&lt;/span&gt; &lt;span class="kd"&gt;const&lt;/span&gt;&lt;span class="p"&gt;;&lt;/span&gt;

&lt;span class="k"&gt;export&lt;/span&gt; &lt;span class="kd"&gt;function&lt;/span&gt; &lt;span class="nf"&gt;isFeatureEnabled&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;flag&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="nx"&gt;FeatureFlag&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt; &lt;span class="nx"&gt;email&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="kr"&gt;string&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
  &lt;span class="k"&gt;return&lt;/span&gt; &lt;span class="nx"&gt;ALPHA_EMAILS&lt;/span&gt;&lt;span class="p"&gt;.&lt;/span&gt;&lt;span class="nf"&gt;includes&lt;/span&gt;&lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="nx"&gt;email&lt;/span&gt;&lt;span class="p"&gt;);&lt;/span&gt;
&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;This single pattern unblocked everything. I could push experimental &lt;br&gt;
features to production main without risking regular users. New &lt;br&gt;
mobile UI? Gated to my email. Test, iterate, refine, then expand.&lt;/p&gt;

&lt;p&gt;This used to require a staging environment, OAuth redirects, &lt;br&gt;
and a complex deployment workflow. With feature flags, it &lt;br&gt;
requires one if-statement.&lt;/p&gt;
&lt;h2&gt;
  
  
  Key moments — the failures
&lt;/h2&gt;
&lt;h3&gt;
  
  
  The PostCSS event (lost 6 hours)
&lt;/h3&gt;

&lt;p&gt;After implementing Phase 2 mobile dashboard, production CSS &lt;br&gt;
dropped to 2.1KB. The site loaded but had zero Tailwind styles. &lt;br&gt;
Times font, no spacing, completely broken visual.&lt;/p&gt;

&lt;p&gt;I spent 6 hours debugging:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Tailwind config? Looked fine.&lt;/li&gt;
&lt;li&gt;Component imports? All correct.&lt;/li&gt;
&lt;li&gt;Vercel deployment? Reporting success.&lt;/li&gt;
&lt;li&gt;Build cache? Cleared multiple times.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Root cause: &lt;code&gt;postcss.config.mjs&lt;/code&gt; was missing entirely from the &lt;br&gt;
project. Tailwind directives were never being processed during &lt;br&gt;
build. Locally, Vercel's CDN was serving cached CSS, masking &lt;br&gt;
the problem.&lt;/p&gt;

&lt;p&gt;The cowork agent had been writing Tailwind classes for weeks &lt;br&gt;
without ever checking that the PostCSS config existed.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Lesson&lt;/strong&gt;: AI agents work within the assumptions of the project. &lt;br&gt;
They don't always verify those assumptions. Always check the &lt;br&gt;
build pipeline yourself when something breaks unexpectedly.&lt;/p&gt;
&lt;h3&gt;
  
  
  The Outlook HTML rendering bug
&lt;/h3&gt;

&lt;p&gt;iPhone testing revealed event descriptions showing raw HTML &lt;br&gt;
tags:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight html"&gt;&lt;code&gt;&lt;span class="nt"&gt;&amp;lt;html&amp;gt;&amp;lt;head&amp;gt;&amp;lt;meta&lt;/span&gt; &lt;span class="na"&gt;http-equiv=&lt;/span&gt;&lt;span class="s"&gt;"Content-Type"&lt;/span&gt;
&lt;span class="na"&gt;content=&lt;/span&gt;&lt;span class="s"&gt;"text/html; charset=utf-8"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;
&lt;span class="nt"&gt;&amp;lt;meta&lt;/span&gt; &lt;span class="na"&gt;name=&lt;/span&gt;&lt;span class="s"&gt;"Generator"&lt;/span&gt; &lt;span class="na"&gt;content=&lt;/span&gt;&lt;span class="s"&gt;"Microsoft
Exchange Server"&lt;/span&gt;&lt;span class="nt"&gt;&amp;gt;&lt;/span&gt;...
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Microsoft Graph API returns event bodies with &lt;br&gt;
&lt;code&gt;contentType: "html"&lt;/code&gt; by default. We were rendering the raw &lt;br&gt;
string as text. Looked terrible on a phone.&lt;/p&gt;

&lt;p&gt;Fix: a small HTML-to-text utility that strips tags, preserves &lt;br&gt;
line breaks, and falls back to "(no description)" for empty &lt;br&gt;
HTML payloads.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Lesson&lt;/strong&gt;: Real device testing is non-negotiable. PC simulators &lt;br&gt;
treat content like the developer expects. Phones treat content &lt;br&gt;
like users expect.&lt;/p&gt;

&lt;h3&gt;
  
  
  The position: sticky disaster (a separate day)
&lt;/h3&gt;

&lt;p&gt;This is the painful one.&lt;/p&gt;

&lt;p&gt;I tried to add sticky calendar headers — the basic Google Calendar &lt;br&gt;
feature where the day labels stay visible while you scroll. &lt;br&gt;
This took me five attempts across two sessions, and I never &lt;br&gt;
got it working.&lt;/p&gt;

&lt;p&gt;What I tried:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;code&gt;position: sticky&lt;/code&gt; on the header group&lt;/li&gt;
&lt;li&gt;Restructuring to flex-col with extracted header&lt;/li&gt;
&lt;li&gt;Changing parent &lt;code&gt;overflow: hidden&lt;/code&gt; to &lt;code&gt;overflow: clip&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Discovering a hidden &lt;code&gt;overflow: hidden&lt;/code&gt; on a &lt;code&gt;hidden md:block&lt;/code&gt; wrapper&lt;/li&gt;
&lt;li&gt;Increasing hour cell height so scroll would actually trigger&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The root cause was a chain of &lt;code&gt;overflow: hidden&lt;/code&gt; ancestors that &lt;br&gt;
break sticky positioning, combined with a containing block &lt;br&gt;
hierarchy I never fully mapped.&lt;/p&gt;

&lt;p&gt;After 6+ hours of debugging across the day, I reverted everything &lt;br&gt;
and shipped without sticky headers. It's still on the backlog.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Lesson&lt;/strong&gt;: Sometimes "ship the working version" beats "perfect &lt;br&gt;
it now." Sunk cost is real even with AI tools — maybe especially &lt;br&gt;
with AI tools, because each retry feels like it should be the &lt;br&gt;
last one.&lt;/p&gt;

&lt;h2&gt;
  
  
  What I actually learned
&lt;/h2&gt;

&lt;p&gt;After a month of building OneSlate this way, here's what's &lt;br&gt;
clear:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Side projects benefit massively from AI agents&lt;/strong&gt;. &lt;br&gt;
The 30-60 minute cowork sessions fit perfectly into the &lt;br&gt;
gaps in client work. I'm not "coding all day" — I'm &lt;br&gt;
directing AI agents in 5-minute chunks throughout the day.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Clear specs compound&lt;/strong&gt;. &lt;br&gt;
Detailed Claude conversations make cowork output &lt;br&gt;
dramatically better. A 200-line prompt with acceptance &lt;br&gt;
criteria produces 90% correct code. A vague prompt &lt;br&gt;
produces something that compiles but misses the point.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Feature flags = freedom to ship&lt;/strong&gt;. &lt;br&gt;
Alpha gating lets you push to main without risking anyone. &lt;br&gt;
This pattern alone changed how aggressive I am with &lt;br&gt;
shipping.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Real device testing is non-negotiable&lt;/strong&gt;. &lt;br&gt;
PC simulators miss too much. Especially on mobile. &lt;br&gt;
Especially with edge cases like Outlook events or &lt;br&gt;
timezone-sensitive UI.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Know when to walk away&lt;/strong&gt;. &lt;br&gt;
I burned 6 hours on sticky header. Reverting was the &lt;br&gt;
right call. AI tools don't change the fact that some &lt;br&gt;
problems are not worth solving today.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Solo founder ≠ alone&lt;/strong&gt;. &lt;br&gt;
Claude is the design partner. cowork is the implementation &lt;br&gt;
team. This used to require 3 people. Now it requires me &lt;br&gt;
and a coffee shop.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  What's next
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Beta&lt;/strong&gt;: currently at 1 user (a friend), scaling cautiously 
to 5-10 over the next two weeks&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Bilingual launch&lt;/strong&gt;: English and Japanese (built-in, with 
locale detection at the OGP layer)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Pricing&lt;/strong&gt;: free during beta, subscription tiers planned 
post-validation&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Looking for feedback from:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Indie hackers building scheduling tools&lt;/li&gt;
&lt;li&gt;Executives who've felt the Calendly pain&lt;/li&gt;
&lt;li&gt;Anyone building solo with AI agents&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Try it
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://oneslate.tech" rel="noopener noreferrer"&gt;oneslate.tech&lt;/a&gt; — free during beta, &lt;br&gt;
sign up takes 30 seconds.&lt;/p&gt;

&lt;p&gt;If any of this resonates, I'd love to hear from you. &lt;br&gt;
Reach out on X: &lt;a href="https://x.com/onojunichiro" rel="noopener noreferrer"&gt;@onojunichiro&lt;/a&gt;&lt;/p&gt;




&lt;p&gt;*About me: CEO ONESLATE LLC([&lt;a href="https://oneslate.tech/%5D" rel="noopener noreferrer"&gt;https://oneslate.tech/]&lt;/a&gt;), &lt;br&gt;
building MVPs for startups in Japan and globally. &lt;br&gt;
OneSlate is what happens when I get tired of my own &lt;br&gt;
calendar problems. X account is @Ao_ai_schedule.&lt;br&gt;
*&lt;/p&gt;

</description>
      <category>claude</category>
      <category>productivity</category>
      <category>showdev</category>
      <category>sideprojects</category>
    </item>
  </channel>
</rss>
