Skip to main content

Your Development Workflow

When you open Specode, you start with a complete healthcare application foundation including all available components. Your job is to shape this foundation into your specific vision. Here’s how successful builders approach it:
1

Explore the Foundation

Start by understanding what you have. Specode provides a fully-functional healthcare app with patient, provider, and admin portals already connected.Review our Components Documentation to understand each component’s capabilities.
2

Define Your Vision

Before making changes, think about who you’re building for and what problem you’re solving.Key questions to answer:
  • Who are your primary users? (e.g., mental health patients aged 18-35)
  • What’s the core service? (e.g., therapy sessions, chronic care management)
  • What’s the main user flow? (e.g., book appointment → intake → video session → follow-up)
Example vision prompt:
I'm building a mental health platform for young adults. 
The main flow is: patient logs in →patient accesses dashboard → patients find therapists 
→ complete intake → schedule video sessions → track mood between sessions.
What components should I focus on?
3

Remove What You Don't Need

Simplify by removing components that don’t serve your vision. Less is often more.Example removal prompts:
Remove the lab results component - we don't handle lab work
Remove the cart, shop, and orders tabs, we won't be using e-commerce. 
4

Modify Component Features

Next, customize existing components to match your specific needs.Example: Patient Dashboard Modification
Modify the patient dashboard:
- Hide the "Shop" tab in the header
- Hide the "My Orders" tab in the header
 - Add a section called "Previous Appointments" below the "My Appointments" table
  This section should list the user's previously completed appointments.
Follow-up refinement:
"In the patient dashboard:
- Make the "My Appointments" table display providers in a 3-column format
- Make the "Previous Appointments" section
- Remove the footer, it makes the page excessively long."
Second Follow-up refinement:
"In the patient dashboard:
- The "My Appointments" table is showing providers in a 2-column format, 
not a 3 column format. Please fix this. Also add the footer back."
Third Follow-up refinement:
"Thanks! The providers are now showing in a 3-column format. Can you decrease
 the vertical and horizontal heights and widths, respectively, of each card by 2pt?
5

Apply Branding

Finally, add your visual identity. Save this for last to avoid redoing work.Branding prompt sequence:
Update the color scheme:
- Primary color: #007AFF
- Secondary: #5856D6
- Keep the existing neutral grays
"Add our branding:
- Logo: [upload file]
- Clinic name: "Mindful Health"
- Update email templates with our logo and colors"
Pro Tip: Save major visual changes for the end. It’s easier to iterate on functionality without worrying about maintaining custom styling, and you’ll avoid having to redo design work as components change.

How to Build Advanced Components

For more complex features that require custom functionality beyond the existing components:
1

Start with the Core Feature

Begin with the basic functionality, then layer on complexity.Initial prompt:
I want to add automated follow-up reminders when providers send 
messages to patients. If a patient doesn't read their provider's 
message within 2 hours, send them a reminder through CometChat.
2

Add the Data Model

Once Specode shows the initial implementation, refine the data requirements.Follow-up prompt:
Add reminder preferences to the patient settings:
- Toggle for chat reminders on/off
- Reminder delay time (default 2 hours, adjustable 30 min to 24 hours)
- Quiet hours (don't send reminders between certain times)
- Track message read status
3

Implement the Webhook Logic

Now add the actual reminder trigger using CometChat webhooks and scheduled jobs.Next prompt:
When a provider sends a message:
1. Set up a CometChat webhook to track message delivery
2. Start a timer based on patient's reminder delay preference
3. Check if message has been read when timer expires
4. If unread and within active hours, send reminder

The reminder should say:
- "You have an unread message from [Provider Name]"
- Include message timestamp
- Mark as system message to differentiate from provider messages
Scheduling reminders: For scheduled reminder checks, you’ll need a cron job service. Consider using cron-job.org - it’s free and simple to set up with your webhook endpoints.
4

Configure CometChat Integration

Set up the CometChat configuration for automated messages.Integration prompt:
Configure CometChat for automated reminders:
- Use the existing CometChat instance
- Create a system bot account for sending reminders
- Bot name: "Care Team Assistant"
- Bot avatar: use our clinic logo
- Messages should appear in the same chat thread but styled differently
5

Handle Edge Cases

Finally, address error handling and special scenarios.Refinement prompt:
Add smart reminder logic:
- Cancel reminder if patient reads message before timer expires
- Don't send reminders for automated system messages
- Maximum one reminder per message (no repeat reminders)
- If patient is currently online, delay reminder by 30 minutes
- Group reminders if multiple unread messages from same provider
Important: Complex features rarely work perfectly on the first try. Build incrementally, test each step, and refine based on what you observe. This iterative approach leads to more robust implementations.
I