Skip to main content

Juniro Product Roadmap Matrix

Feature-by-feature status organized by portal navigation structure.

Last Updated: January 17, 2026


Status Legend​

StatusMeaning
DoneFully functional end-to-end
UI+APIBoth built, needs wiring
UI OnlyFrontend exists, API pending
API OnlyBackend exists, UI pending
PlannedOn roadmap, not started
—Not applicable

High-Level Roadmap Summary​

PhaseAreaWhat's Included
Pre-LaunchWaitlist & Marketing• Parent waitlist (juniro.com)
• Provider waitlist + onboard
• Viral Loops referral
• Loops email sequences
• PostHog analytics
• Attio CRM
MVPAuthentication• Signup/login/forgot password
• Google/Facebook OAuth
• Admin login (invite-only)
• Admin manages team/roles
MVPDiscovery• Search with filters (location, category, age, price, date)
• Results grid
• Activity detail
• Provider profile
MVPClasses• Create/edit activities
• Manage offerings (single/multi/camp/term)
• Create/edit sessions
• Capacity management
MVPBooking• Session selection
• Child selection
• Payment (Stripe/Razorpay)
• Confirmation
• View/cancel bookings
MVPChildren & Students• Add/edit children
• Child interests
• Student directory
• Enrollment history
MVPCalendar• Family calendar view (Parents)
• Week/month views (Providers)
MVPSettings• Profile editing
• Password change
• Business profile
• Locations
• Staff management
MVPOnboarding• Parent flow (child → interests)
• Provider flow (business → location → activity)
MVPStaff• Join via invite
• Login
• View/manage assigned classes
• View students
MVPAdmin• User management
• Provider verification
• Activities moderation
• Bookings management
• Manage countries/cities
• Manage categories
MVPReviews• Submit reviews
• Respond to reviews
• Moderate reviews
Phase 1Messaging• Send messages (Parent↔Provider)
• Inbox
• Threads
• Notifications
Phase 1Attendance• Mark attendance
• View list
• Reports
Phase 1Assignments• Create assignments
• View/submit
• Grade
Phase 1Analytics• Provider: booking trends, revenue
• Admin: platform KPIs, user growth
Phase 1Favorites• Add
• View
• Remove
Phase 1Support• Submit tickets
• Admin ticket management
• FAQ/Help center
Phase 1Mobile• iOS app
• Android app
• Push notifications
Phase 2AI Features• Semantic search
• Smart recommendations
• Chatbot assistant
Phase 2Children Accounts• Parent invites child from family management
• Child login (13+, linked to parent)
• Read-only: view classes, schedule, assignments
Phase 2+School (India-First)• Separate "Explore Schools" surface (not mixed with activities)
• Search by location, board (CBSE/ICSE/State/IB), grades
• School profiles (photos, facilities, fees, reviews)
• Inquiry forms & lead capture
• Admissions info & timelines
• Fee collection (admission, term, annual + receipts)
• Student rosters & enrollment tracking
• Attendance & assignments (optional modules)
• Parent-teacher messaging
• School dashboard & reports
Phase 2+Advanced• Subscription packages
• Waitlist for full classes
• Gift cards
• Multi-language

  • Parent: Discover ↔ Provider: Classes (Parents search what Providers create)
  • Parent: My Classes ↔ Provider: Bookings (Same booking, different views)
  • Parent: Calendar ↔ Provider: Schedule (Same sessions, different views)
  • Parent: Reviews ↔ Provider: Reviews (Parents write, Providers respond)
  • Parent: Assignments ↔ Provider: Assignments (Providers create, Parents/Children view)

Pre-Launch Phase ✅​

AreaPublicParentsProvidersAdminIntegrationStatus
Waitlist & Landing
Parent waitlistjuniro.com———Viral LoopsDone
Provider waitlistjuniro.com/providers———Loops emailDone
Provider application/providers/onboard———Attio CRMDone
Marketing Stack
Email sequences————LoopsDone
Analytics————PostHogDone
Referral tracking————Viral LoopsDone

Core Infrastructure​

AreaPublicParentsProvidersAdminIntegrationStatus
Authentication
Email/passwordLogin/RegisterLogin/RegisterLogin/RegisterLogin (invite only)Supabase AuthAPI Done
Google OAuthLogin buttonLogin buttonLogin button—Supabase AuthAPI Done
Facebook OAuthLogin buttonLogin button——Supabase AuthAPI Done
Forgot passwordReset flowReset flowReset flowReset flowSupabase AuthAPI Done
Invite team member———Admin createsSupabase AuthAPI Done
Infrastructure
Database————PostgreSQL + PrismaDone
API framework————Hono + OpenAPIDone
Transactional email————ResendDone
Error monitoring————SentryPlanned

MVP Phase - By Navigation Item​

1. Dashboard​

FeaturePublicParentsProvidersAdminAPIPhase
Parent Dashboard
Upcoming bookings—UI Only——DoneMVP
Recommended activities—UI Only——PlannedMVP
Quick actions—UI Only———MVP
Recent activity feed—UI Only——PlannedPhase 1
Provider Dashboard
Today's sessions——UI Only—DoneMVP
Recent bookings——UI Only—DoneMVP
Revenue summary——UI Only—PlannedPhase 1
Quick stats——UI Only—PlannedPhase 1
Admin Dashboard
System KPIs———UI OnlyPlannedMVP
Alerts & issues———UI OnlyPlannedPhase 1

2. Discover (Parents) ↔ Classes (Providers)​

Relationship: What Providers create in "Classes" appears in Parent "Discover"

FeaturePublicParentsProvidersAdminAPIPhase
Discovery (Parents)
Search barUI OnlyUI Only——DoneMVP
Location filterUI OnlyUI Only——DoneMVP
Category filterUI OnlyUI Only——DoneMVP
Age filterUI OnlyUI Only——DoneMVP
Price filterUI OnlyUI Only——DoneMVP
Date filterUI OnlyUI Only——DoneMVP
Search results gridUI OnlyUI Only——DoneMVP
Activity detail pageUI OnlyUI Only——DoneMVP
Provider profile pageUI OnlyUI Only——DoneMVP
Classes Management (Providers)
View my classes——UI OnlyUI OnlyDoneMVP
Create class/activity——UI OnlyUI OnlyDoneMVP
Edit class/activity——UI OnlyUI OnlyDoneMVP
Delete class——UI OnlyUI OnlyDoneMVP
Activity status toggle——UI OnlyUI OnlyDoneMVP
Upload images——UI Only—PlannedMVP
Offerings (Pricing)
View offerings—UI OnlyUI Only—DoneMVP
Create offering——UI Only—DoneMVP
Edit offering——UI Only—DoneMVP
Offering types (single/multi/camp/term)——UI Only—DoneMVP

3. Calendar (Parents) ↔ Schedule (Providers)​

Relationship: Sessions created in Provider "Schedule" appear in Parent "Calendar"

FeaturePublicParentsProvidersAdminAPIPhase
Calendar (Parents)
Family calendar view—UI Only——PlannedMVP
Upcoming sessions—UI Only——DoneMVP
Session details—UI Only——DoneMVP
Schedule (Providers)
View sessions calendar——UI Only—DoneMVP
Create session——UI Only—DoneMVP
Edit session——UI Only—DoneMVP
Delete session——UI Only—DoneMVP
Capacity management——UI Only—DoneMVP
Week/month view——UI Only—PlannedMVP

4. My Classes (Parents) ↔ Bookings (Providers)​

Relationship: Same booking viewed from different perspectives

FeaturePublicParentsProvidersAdminAPIPhase
My Classes / Bookings (Parents)
View my bookings—UI Only——DoneMVP
Booking detail—UI Only——DoneMVP
Cancel booking—UI Only——DoneMVP
Booking Flow (Parents)
Select sessionUI OnlyUI Only——DoneMVP
Select child—UI Only——DoneMVP
Review bookingUI OnlyUI Only———MVP
Submit booking—UI Only——DoneMVP
Confirmation pageUI OnlyUI Only——DoneMVP
Bookings (Providers)
View all bookings——UI OnlyUI OnlyDoneMVP
Booking detail——UI OnlyUI OnlyDoneMVP
Booking status——UI OnlyUI OnlyDoneMVP
Payments
Payment form (Stripe)UI OnlyUI Only——Config ReadyMVP
Payment form (Razorpay)—UI Only——Config ReadyMVP
Payment intent————PlannedMVP
Payment webhooks————PlannedMVP
Refunds———UI OnlyPlannedPhase 1
Admin Bookings
All bookings table———UI OnlyPlannedMVP
Process refund———UI OnlyPlannedPhase 1

5. Students (Providers) ↔ Children (Parents)​

Relationship: Parent's "Children" become Provider's "Students" when enrolled

FeaturePublicParentsProvidersAdminAPIPhase
Children Management (Parents)
View children—UI Only——DoneMVP
Add child—UI Only——DoneMVP
Edit child—UI Only——DoneMVP
Delete child—UI Only——DoneMVP
Child interests—UI Only——DoneMVP
Students (Providers)
Student directory——UI Only—DoneMVP
Student profile——UI Only—DoneMVP
Enrollment history——UI Only—DoneMVP
Contact parent——UI Only—PlannedPhase 1

6. Reviews (Parents ↔ Providers)​

Relationship: Parents write reviews, Providers respond

FeaturePublicParentsProvidersAdminAPIPhase
Reviews (Display)
View reviews (activity)UI OnlyUI Only——DoneMVP
View reviews (provider)UI OnlyUI Only——DoneMVP
Reviews (Parents)
Submit review—UI Only——DoneMVP
Edit my review—UI Only——DoneMVP
View my reviews—UI Only——DoneMVP
Reviews (Providers)
View my reviews——UI Only—DoneMVP
Respond to review——UI Only—DoneMVP
Reviews (Admin)
Moderate reviews———UI OnlyPlannedMVP

7. Attendance (Providers)​

FeaturePublicParentsProvidersAdminAPIPhase
Mark attendance——UI Only—PlannedPhase 1
View attendance list——UI Only—PlannedPhase 1
Attendance report——UI Only—PlannedPhase 1
Export attendance——Planned—PlannedPhase 1

8. Assignments (Parents ↔ Providers)​

Relationship: Providers create assignments, Parents/Children view and submit

FeaturePublicParentsProvidersAdminAPIPhase
Assignments (Providers)
Create assignment——Planned—PlannedPhase 1
View assignments——Planned—PlannedPhase 1
Grade submissions——Planned—PlannedPhase 1
Assignments (Parents)
View child assignments—Planned——PlannedPhase 1
Submit assignment—Planned——PlannedPhase 1
View grades—Planned——PlannedPhase 1

9. Favorites (Parents)​

FeaturePublicParentsProvidersAdminAPIPhase
Add to favoritesUI OnlyUI Only——PlannedPhase 1
View favorites—UI Only——PlannedPhase 1
Remove favorite—UI Only——PlannedPhase 1

10. Analytics (Parents & Providers)​

FeaturePublicParentsProvidersAdminAPIPhase
Parent Analytics
Activity spending—Planned——PlannedPhase 2
Child activity history—Planned——PlannedPhase 2
Provider Analytics
Booking trends——UI Only—PlannedPhase 1
Revenue analytics——UI Only—PlannedPhase 1
Student demographics——UI Only—PlannedPhase 1
Export reports——Planned—PlannedPhase 1
Admin Analytics
Platform KPIs———UI OnlyPlannedPhase 1
User growth———UI OnlyPlannedPhase 1
Revenue by region———UI OnlyPlannedPhase 1
Provider performance———UI OnlyPlannedPhase 1

11. Messages (Parents ↔ Providers)​

FeaturePublicParentsProvidersAdminAPIPhase
Send message—UI OnlyUI Only—PlannedPhase 1
View inbox—UI OnlyUI Only—PlannedPhase 1
Message thread—UI OnlyUI Only—PlannedPhase 1
Notifications—UI OnlyUI Only—PlannedPhase 1

12. Settings (Parents & Providers)​

FeaturePublicParentsProvidersAdminAPIPhase
Account Settings
Edit profile—UI OnlyUI Only—DoneMVP
Change email—UI OnlyUI Only—DoneMVP
Change password—UI OnlyUI Only—DoneMVP
Delete account—UI OnlyUI Only—DoneMVP
Notification Settings
Email preferences—UI OnlyUI Only—PlannedMVP
Push preferences—PlannedPlanned—PlannedPhase 1
WhatsApp opt-in—PlannedPlanned—PlannedPhase 1
Business Settings (Providers)
Business profile——UI Only—DoneMVP
Locations——UI Only—DoneMVP
Staff management——UI Only—DoneMVP
Business hours——UI Only—PlannedPhase 1
Booking policies——UI Only—PlannedPhase 1
Payment settings——UI Only—PlannedPhase 1

13. Onboarding (Post-Registration)​

FeaturePublicParentsProvidersAdminAPIPhase
Parent Onboarding
Welcome screen—UI Only———MVP
Add first child—UI Only——DoneMVP
Select interests—UI Only——DoneMVP
Location setup—UI Only——DoneMVP
Provider Onboarding
Welcome screen——UI Only——MVP
Business profile wizard——UI Only—DoneMVP
Add first location——UI Only—DoneMVP
Add first activity——UI Only—DoneMVP
Verification pending——UI Only—PlannedMVP

14. Staff (Provider Team Members)​

Relationship: Providers invite staff, staff manage their assigned classes

FeaturePublicParentsProvidersAdminAPIPhase
Staff Management (Providers)
Invite staff member——UI Only—DoneMVP
View staff list——UI Only—DoneMVP
Assign staff to classes——UI Only—PlannedMVP
Remove staff——UI Only—DoneMVP
Staff Experience
Accept invite——Join flow—PlannedMVP
Staff login——Login—PlannedMVP
View assigned classes——UI Only—PlannedMVP
View students——UI Only—PlannedMVP
Mark attendance——UI Only—PlannedPhase 1
Manage assignments——UI Only—PlannedPhase 1

15. Admin Operations​

FeaturePublicParentsProvidersAdminAPIPhase
User Management
Parents list & detail———UI OnlyPlannedMVP
Providers list & detail———UI OnlyPlannedMVP
Provider Verification
Pending queue———UI OnlyPlannedMVP
Verify provider———UI OnlyPlannedMVP
Reject provider———UI OnlyPlannedMVP
Content Management
Activities moderation———UI OnlyPlannedMVP
Categories management———UI OnlyDoneMVP
Countries/cities management———UI OnlyDoneMVP

16. Header Components (Top Bar)​

FeaturePublicParentsProvidersAdminAPIPhase
Navigation
Breadcrumbs—UI OnlyUI OnlyUI Only—MVP
Back button—UI OnlyUI OnlyUI Only—MVP
Notifications (Bell Icon)
Notifications dropdown—UI OnlyUI OnlyUI OnlyPlannedPhase 1
Unread count badge—UI OnlyUI OnlyUI OnlyPlannedPhase 1
Mark as read—PlannedPlannedPlannedPlannedPhase 1
Messages (Chat Icon)
Messages dropdown—UI OnlyUI Only—PlannedPhase 1
Unread count badge—UI OnlyUI Only—PlannedPhase 1
User Menu (Profile Dropdown)
User avatar/name—UI OnlyUI Only—DoneMVP
My Profile link—UI OnlyUI Only—DoneMVP
Settings link—UI OnlyUI Only—DoneMVP
Logout—UI OnlyUI Only—DoneMVP

Relationship: Footer links depend on Admin-managed content pages

FeaturePublicParentsProvidersAdminAPIPhase
Legal Pages
Privacy PolicyStaticFooter linkFooter linkManage content—MVP
Terms of ServiceStaticFooter linkFooter linkManage content—MVP
Cookie PolicyStaticFooter linkFooter linkManage contentPlannedPhase 1
Support Pages
Support CenterStaticFooter linkFooter linkSupport ticketsPlannedMVP
Help Center / FAQsStaticFooter linkFooter linkManage FAQsPlannedPhase 1
Contact UsContact formFooter linkFooter linkView submissionsPlannedMVP
Company Pages
About UsStaticFooter linkFooter linkManage content—MVP
CareersStatic——Manage jobsPlannedPhase 2
BlogBlog listing——Manage postsPlannedPhase 1
Footer Actions
Theme toggle—FooterFooterFooter—Done
CopyrightFooterFooterFooter——Done

18. Support & Help (Admin Dependent)​

FeaturePublicParentsProvidersAdminAPIPhase
Support Tickets
Submit support ticketFormFormForm—PlannedMVP
View my tickets—PlannedPlanned—PlannedPhase 1
Ticket status—PlannedPlanned—PlannedPhase 1
Admin: Support Management
View all tickets———UI OnlyPlannedMVP
Respond to ticket———UI OnlyPlannedMVP
Close ticket———UI OnlyPlannedMVP
Help Center
Browse FAQsStaticStaticStatic——MVP
Search help articlesPlannedPlannedPlanned—PlannedPhase 1
Admin: Help Content
Manage FAQ categories———UI OnlyPlannedPhase 1
Create/edit FAQs———UI OnlyPlannedPhase 1
Create/edit help articles———UI OnlyPlannedPhase 1

Communication & Notifications​

FeatureTriggerRecipientsChannelStatusPhase
Booking confirmationBooking createdParentEmailPartialMVP
Booking reminder24h beforeParentEmailPlannedMVP
New booking alertBooking createdProviderEmailPartialMVP
Review notificationReview submittedProviderEmailPlannedPhase 1
Message notificationMessage sentBothEmail + PushPlannedPhase 1
WhatsApp notificationsVariousBothWhatsAppPlannedPhase 1

Phase 1 (Post-MVP)​

AreaDescriptionStatus
Mobile Apps
iOS appNative React Native appPlanned
Android appNative React Native appPlanned
Push notificationsFirebase integrationPlanned

Phase 2 (Future)​

AreaDescriptionStatus
AI Features
AI-powered searchSemantic search with embeddingsPlanned
Smart recommendationsPersonalized activity suggestionsPlanned
Chatbot assistantHelp & support chatbotPlanned
Children Accounts
Parent invites childFrom family management sectionPlanned
Child login (13+)Linked to parent accountPlanned
Read-only accessView classes, schedule, assignmentsPlanned
School (Phase 2+ · India-First)
Phase 2a: Discovery + Trust
"Explore Schools" surfaceSeparate from activities, own navigationPlanned
School search & filtersLocation, Board (CBSE/ICSE/State/IB), GradesPlanned
School profilesOverview, photos, facilities, board, gradesPlanned
Admissions infoTimelines, requirements, fee rangesPlanned
School reviewsParents rate & review schoolsPlanned
Phase 2b: Inquiry Layer
Inquiry formsChild age, grade, contact info submissionPlanned
Lead notificationsEmail/WhatsApp to schools on inquiryPlanned
School lead dashboardView and manage parent inquiriesPlanned
Phase 2c: Fee Collection
Admission feesOne-time application/admission feesPlanned
Term/Annual feesRecurring tuition paymentsPlanned
Payment receiptsAutomatic confirmations, GST compliancePlanned
Phase 2d: Platformization
Student rostersBasic enrollment trackingPlanned
School announcementsMessages to parentsPlanned
Attendance trackingOptional module for schoolsPlanned
AssignmentsOptional module (homework, grades)Planned
School reportsFee collection, inquiry analyticsPlanned
Advanced Features
Subscription packagesRecurring payment bundlesPlanned
Waitlist for full classesJoin waitlist when fullPlanned
Gift cardsPurchase & redeemPlanned
Multi-languagei18n supportPlanned

MVP Critical Path​

Phase 1: Auth + Core Wiring
├── Wire Supabase Auth to all frontends
├── Create shared API client
├── Wire Discover/Search to API
└── Wire Activity detail to API

Phase 2: User Features
├── Wire Children management
├── Wire Provider Classes/Schedule
├── Wire Staff (invite, login, view classes)
├── Wire Reviews (submit, respond)
└── End-to-end testing

Phase 3: Admin Cleanup & Features
├── Align Admin portal with other portals (template, structure, components)
├── Wire Admin operations to API
├── Provider verification flow
├── Countries/cities/categories management
└── Bug fixes

Phase 4: Booking Flow
├── Wire session selection
├── Wire booking creation
├── Implement Stripe/Razorpay webhooks
├── Wire My Classes to API
├── Booking confirmation emails
└── Soft launch

Feature Management​

Feature Categories​

Not every feature needs a flag. Use this framework:

CategoryFeature Flag?RationaleExamples
Core (non-negotiable)NoBreaking = app unusableAuth, navigation, profile view, activity browse
New features (rollout)TemporaryControl rollout, quick rollbackReviews, Staff portal, new booking flow
Risky/experimentalYesMay need instant kill switchAI search, new payment provider
Regional/marketPermanentDifferent by geographyRazorpay (India), WhatsApp (India)
A/B testsTemporaryMeasure variantsTwo checkout flows, pricing display

Rule of thumb: If disabling it breaks the app, don't flag it. If you might want to turn it off, flag it.

PostHog Integration​

We use PostHog for feature flags. Flags are evaluated client-side and server-side.

Frontend usage:

import { useFeatureFlag } from 'posthog-js/react'

function BookingPage() {
const bookingEnabled = useFeatureFlag('booking-flow')
const showReviews = useFeatureFlag('reviews-enabled')

if (!bookingEnabled) {
return <ComingSoon feature="Booking" />
}

return (
<div>
<BookingFlow />
{showReviews && <ReviewsSection />}
</div>
)
}

Backend usage (API):

import { PostHog } from 'posthog-node'

const posthog = new PostHog(process.env.POSTHOG_API_KEY)

async function createBooking(userId: string, data: BookingData) {
const bookingEnabled = await posthog.isFeatureEnabled('booking-flow', userId)

if (!bookingEnabled) {
throw new Error('Booking is not available yet')
}

// proceed with booking...
}

Roadmap → Feature Flags​

Roadmap FeatureFlag NameTypeRollout Strategy
Core (No Flags)
Authentication—CoreAlways on
Navigation/routing—CoreAlways on
Activity browsing—CoreAlways on
Profile viewing—CoreAlways on
MVP (Flagged)
Booking flowbooking-flowRollout10% → 50% → 100%
Stripe paymentspayments-stripeRegionalUS users only
Razorpay paymentspayments-razorpayRegionalIndia users only
Reviewsreviews-enabledRolloutProviders first → all
Staff portalstaff-portalRolloutSelect providers → all
Admin v2 (post-cleanup)admin-v2RolloutInternal → all admins
Phase 1 (Flagged)
Messagingmessaging-enabledRolloutBeta users → all
Attendanceattendance-enabledRolloutSelect providers → all
Assignmentsassignments-enabledRolloutSelect providers → all
Mobile appsmobile-appRolloutTestFlight/Beta → public
Phase 2 (Flagged)
AI searchai-searchExperimentalInternal testing → beta
Children accountschildren-accountsRolloutBeta families → all
Phase 2+ School (Flagged · India-First)
School discoveryschool-discoveryRollout1-2 cities → India-wide
School inquiriesschool-inquiriesRolloutAfter discovery stable
School paymentsschool-paymentsRolloutAfter inquiries stable
School rostersschool-rostersRolloutSelect schools → all
School attendanceschool-attendanceOptionalPer school opt-in
School assignmentsschool-assignmentsOptionalPer school opt-in

Flag Lifecycle​

┌─────────────┐     ┌─────────────┐     ┌─────────────┐     ┌─────────────┐
│ Create │ ──► │ Rollout │ ──► │ 100% │ ──► │ Remove │
│ Flag │ │ Gradual │ │ Stable │ │ Flag │
└─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘
│ │ │ │
▼ ▼ ▼ ▼
Feature in 10% → 50% Monitor for Delete flag
development → 100% 2 weeks from code

When to create: Before merging feature to main When to remove: After 2 weeks at 100% with no issues

Flag Naming Convention​

{feature}-{qualifier}

Examples:
- booking-flow
- payments-stripe
- payments-razorpay
- reviews-enabled
- staff-portal
- admin-v2
- ai-search

Qualifiers:

  • -enabled for on/off features
  • -v2 for new versions
  • -{region} for regional (e.g., -india)

Summary by Phase​

PhaseTotal FeaturesDoneUI OnlyAPI OnlyPlanned
Pre-Launch88000
Core128040
MVP~804~650~11
Phase 1~450~200~25
Phase 2~1500015
Phase 2+ (School · India)~2000020

Key Insight: ~65 MVP features are "UI Only" - the frontend exists but isn't wired to the API. Wiring is the critical gap.


This document maps directly to the portal navigation structure. Update as features progress.