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:
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. 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?
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.
Modify Component Features
Next, customize existing components to match your specific needs.Example: Patient Dashboard ModificationModify 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?
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:
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.
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
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. 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
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.