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: DiscoverProvider: Classes (Parents search what Providers create)
  • Parent: My ClassesProvider: Bookings (Same booking, different views)
  • Parent: CalendarProvider: Schedule (Same sessions, different views)
  • Parent: ReviewsProvider: Reviews (Parents write, Providers respond)
  • Parent: AssignmentsProvider: Assignments (Providers create, Parents/Children view)

Pre-Launch Phase ✅

AreaPublicParentsProvidersAdminIntegrationStatus
Waitlist & Landing
Parent waitlistjuniro.comViral LoopsDone
Provider waitlistjuniro.com/providersLoops emailDone
Provider application/providers/onboardAttio CRMDone
Marketing Stack
Email sequencesLoopsDone
AnalyticsPostHogDone
Referral trackingViral LoopsDone

Core Infrastructure

AreaPublicParentsProvidersAdminIntegrationStatus
Authentication
Email/passwordLogin/RegisterLogin/RegisterLogin/RegisterLogin (invite only)Supabase AuthAPI Done
Google OAuthLogin buttonLogin buttonLogin buttonSupabase AuthAPI Done
Facebook OAuthLogin buttonLogin buttonSupabase AuthAPI Done
Forgot passwordReset flowReset flowReset flowReset flowSupabase AuthAPI Done
Invite team memberAdmin createsSupabase AuthAPI Done
Infrastructure
DatabasePostgreSQL + PrismaDone
API frameworkHono + OpenAPIDone
Transactional emailResendDone
Error monitoringSentryPlanned

MVP Phase - By Navigation Item

1. Dashboard

FeaturePublicParentsProvidersAdminAPIPhase
Parent Dashboard
Upcoming bookingsUI OnlyDoneMVP
Recommended activitiesUI OnlyPlannedMVP
Quick actionsUI OnlyMVP
Recent activity feedUI OnlyPlannedPhase 1
Provider Dashboard
Today's sessionsUI OnlyDoneMVP
Recent bookingsUI OnlyDoneMVP
Revenue summaryUI OnlyPlannedPhase 1
Quick statsUI OnlyPlannedPhase 1
Admin Dashboard
System KPIsUI OnlyPlannedMVP
Alerts & issuesUI OnlyPlannedPhase 1

2. Discover (Parents) ↔ Classes (Providers)

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

FeaturePublicParentsProvidersAdminAPIPhase
Discovery (Parents)
Search barUI OnlyUI OnlyDoneMVP
Location filterUI OnlyUI OnlyDoneMVP
Category filterUI OnlyUI OnlyDoneMVP
Age filterUI OnlyUI OnlyDoneMVP
Price filterUI OnlyUI OnlyDoneMVP
Date filterUI OnlyUI OnlyDoneMVP
Search results gridUI OnlyUI OnlyDoneMVP
Activity detail pageUI OnlyUI OnlyDoneMVP
Provider profile pageUI OnlyUI OnlyDoneMVP
Classes Management (Providers)
View my classesUI OnlyUI OnlyDoneMVP
Create class/activityUI OnlyUI OnlyDoneMVP
Edit class/activityUI OnlyUI OnlyDoneMVP
Delete classUI OnlyUI OnlyDoneMVP
Activity status toggleUI OnlyUI OnlyDoneMVP
Upload imagesUI OnlyPlannedMVP
Offerings (Pricing)
View offeringsUI OnlyUI OnlyDoneMVP
Create offeringUI OnlyDoneMVP
Edit offeringUI OnlyDoneMVP
Offering types (single/multi/camp/term)UI OnlyDoneMVP

3. Calendar (Parents) ↔ Schedule (Providers)

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

FeaturePublicParentsProvidersAdminAPIPhase
Calendar (Parents)
Family calendar viewUI OnlyPlannedMVP
Upcoming sessionsUI OnlyDoneMVP
Session detailsUI OnlyDoneMVP
Schedule (Providers)
View sessions calendarUI OnlyDoneMVP
Create sessionUI OnlyDoneMVP
Edit sessionUI OnlyDoneMVP
Delete sessionUI OnlyDoneMVP
Capacity managementUI OnlyDoneMVP
Week/month viewUI OnlyPlannedMVP

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

Relationship: Same booking viewed from different perspectives

FeaturePublicParentsProvidersAdminAPIPhase
My Classes / Bookings (Parents)
View my bookingsUI OnlyDoneMVP
Booking detailUI OnlyDoneMVP
Cancel bookingUI OnlyDoneMVP
Booking Flow (Parents)
Select sessionUI OnlyUI OnlyDoneMVP
Select childUI OnlyDoneMVP
Review bookingUI OnlyUI OnlyMVP
Submit bookingUI OnlyDoneMVP
Confirmation pageUI OnlyUI OnlyDoneMVP
Bookings (Providers)
View all bookingsUI OnlyUI OnlyDoneMVP
Booking detailUI OnlyUI OnlyDoneMVP
Booking statusUI OnlyUI OnlyDoneMVP
Payments
Payment form (Stripe)UI OnlyUI OnlyConfig ReadyMVP
Payment form (Razorpay)UI OnlyConfig ReadyMVP
Payment intentPlannedMVP
Payment webhooksPlannedMVP
RefundsUI OnlyPlannedPhase 1
Admin Bookings
All bookings tableUI OnlyPlannedMVP
Process refundUI OnlyPlannedPhase 1

5. Students (Providers) ↔ Children (Parents)

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

FeaturePublicParentsProvidersAdminAPIPhase
Children Management (Parents)
View childrenUI OnlyDoneMVP
Add childUI OnlyDoneMVP
Edit childUI OnlyDoneMVP
Delete childUI OnlyDoneMVP
Child interestsUI OnlyDoneMVP
Students (Providers)
Student directoryUI OnlyDoneMVP
Student profileUI OnlyDoneMVP
Enrollment historyUI OnlyDoneMVP
Contact parentUI OnlyPlannedPhase 1

6. Reviews (Parents ↔ Providers)

Relationship: Parents write reviews, Providers respond

FeaturePublicParentsProvidersAdminAPIPhase
Reviews (Display)
View reviews (activity)UI OnlyUI OnlyDoneMVP
View reviews (provider)UI OnlyUI OnlyDoneMVP
Reviews (Parents)
Submit reviewUI OnlyDoneMVP
Edit my reviewUI OnlyDoneMVP
View my reviewsUI OnlyDoneMVP
Reviews (Providers)
View my reviewsUI OnlyDoneMVP
Respond to reviewUI OnlyDoneMVP
Reviews (Admin)
Moderate reviewsUI OnlyPlannedMVP

7. Attendance (Providers)

FeaturePublicParentsProvidersAdminAPIPhase
Mark attendanceUI OnlyPlannedPhase 1
View attendance listUI OnlyPlannedPhase 1
Attendance reportUI OnlyPlannedPhase 1
Export attendancePlannedPlannedPhase 1

8. Assignments (Parents ↔ Providers)

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

FeaturePublicParentsProvidersAdminAPIPhase
Assignments (Providers)
Create assignmentPlannedPlannedPhase 1
View assignmentsPlannedPlannedPhase 1
Grade submissionsPlannedPlannedPhase 1
Assignments (Parents)
View child assignmentsPlannedPlannedPhase 1
Submit assignmentPlannedPlannedPhase 1
View gradesPlannedPlannedPhase 1

9. Favorites (Parents)

FeaturePublicParentsProvidersAdminAPIPhase
Add to favoritesUI OnlyUI OnlyPlannedPhase 1
View favoritesUI OnlyPlannedPhase 1
Remove favoriteUI OnlyPlannedPhase 1

10. Analytics (Parents & Providers)

FeaturePublicParentsProvidersAdminAPIPhase
Parent Analytics
Activity spendingPlannedPlannedPhase 2
Child activity historyPlannedPlannedPhase 2
Provider Analytics
Booking trendsUI OnlyPlannedPhase 1
Revenue analyticsUI OnlyPlannedPhase 1
Student demographicsUI OnlyPlannedPhase 1
Export reportsPlannedPlannedPhase 1
Admin Analytics
Platform KPIsUI OnlyPlannedPhase 1
User growthUI OnlyPlannedPhase 1
Revenue by regionUI OnlyPlannedPhase 1
Provider performanceUI OnlyPlannedPhase 1

11. Messages (Parents ↔ Providers)

FeaturePublicParentsProvidersAdminAPIPhase
Send messageUI OnlyUI OnlyPlannedPhase 1
View inboxUI OnlyUI OnlyPlannedPhase 1
Message threadUI OnlyUI OnlyPlannedPhase 1
NotificationsUI OnlyUI OnlyPlannedPhase 1

12. Settings (Parents & Providers)

FeaturePublicParentsProvidersAdminAPIPhase
Account Settings
Edit profileUI OnlyUI OnlyDoneMVP
Change emailUI OnlyUI OnlyDoneMVP
Change passwordUI OnlyUI OnlyDoneMVP
Delete accountUI OnlyUI OnlyDoneMVP
Notification Settings
Email preferencesUI OnlyUI OnlyPlannedMVP
Push preferencesPlannedPlannedPlannedPhase 1
WhatsApp opt-inPlannedPlannedPlannedPhase 1
Business Settings (Providers)
Business profileUI OnlyDoneMVP
LocationsUI OnlyDoneMVP
Staff managementUI OnlyDoneMVP
Business hoursUI OnlyPlannedPhase 1
Booking policiesUI OnlyPlannedPhase 1
Payment settingsUI OnlyPlannedPhase 1

13. Onboarding (Post-Registration)

FeaturePublicParentsProvidersAdminAPIPhase
Parent Onboarding
Welcome screenUI OnlyMVP
Add first childUI OnlyDoneMVP
Select interestsUI OnlyDoneMVP
Location setupUI OnlyDoneMVP
Provider Onboarding
Welcome screenUI OnlyMVP
Business profile wizardUI OnlyDoneMVP
Add first locationUI OnlyDoneMVP
Add first activityUI OnlyDoneMVP
Verification pendingUI OnlyPlannedMVP

14. Staff (Provider Team Members)

Relationship: Providers invite staff, staff manage their assigned classes

FeaturePublicParentsProvidersAdminAPIPhase
Staff Management (Providers)
Invite staff memberUI OnlyDoneMVP
View staff listUI OnlyDoneMVP
Assign staff to classesUI OnlyPlannedMVP
Remove staffUI OnlyDoneMVP
Staff Experience
Accept inviteJoin flowPlannedMVP
Staff loginLoginPlannedMVP
View assigned classesUI OnlyPlannedMVP
View studentsUI OnlyPlannedMVP
Mark attendanceUI OnlyPlannedPhase 1
Manage assignmentsUI OnlyPlannedPhase 1

15. Admin Operations

FeaturePublicParentsProvidersAdminAPIPhase
User Management
Parents list & detailUI OnlyPlannedMVP
Providers list & detailUI OnlyPlannedMVP
Provider Verification
Pending queueUI OnlyPlannedMVP
Verify providerUI OnlyPlannedMVP
Reject providerUI OnlyPlannedMVP
Content Management
Activities moderationUI OnlyPlannedMVP
Categories managementUI OnlyDoneMVP
Countries/cities managementUI OnlyDoneMVP

16. Header Components (Top Bar)

FeaturePublicParentsProvidersAdminAPIPhase
Navigation
BreadcrumbsUI OnlyUI OnlyUI OnlyMVP
Back buttonUI OnlyUI OnlyUI OnlyMVP
Notifications (Bell Icon)
Notifications dropdownUI OnlyUI OnlyUI OnlyPlannedPhase 1
Unread count badgeUI OnlyUI OnlyUI OnlyPlannedPhase 1
Mark as readPlannedPlannedPlannedPlannedPhase 1
Messages (Chat Icon)
Messages dropdownUI OnlyUI OnlyPlannedPhase 1
Unread count badgeUI OnlyUI OnlyPlannedPhase 1
User Menu (Profile Dropdown)
User avatar/nameUI OnlyUI OnlyDoneMVP
My Profile linkUI OnlyUI OnlyDoneMVP
Settings linkUI OnlyUI OnlyDoneMVP
LogoutUI OnlyUI OnlyDoneMVP

Relationship: Footer links depend on Admin-managed content pages

FeaturePublicParentsProvidersAdminAPIPhase
Legal Pages
Privacy PolicyStaticFooter linkFooter linkManage contentMVP
Terms of ServiceStaticFooter linkFooter linkManage contentMVP
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 contentMVP
CareersStaticManage jobsPlannedPhase 2
BlogBlog listingManage postsPlannedPhase 1
Footer Actions
Theme toggleFooterFooterFooterDone
CopyrightFooterFooterFooterDone

18. Support & Help (Admin Dependent)

FeaturePublicParentsProvidersAdminAPIPhase
Support Tickets
Submit support ticketFormFormFormPlannedMVP
View my ticketsPlannedPlannedPlannedPhase 1
Ticket statusPlannedPlannedPlannedPhase 1
Admin: Support Management
View all ticketsUI OnlyPlannedMVP
Respond to ticketUI OnlyPlannedMVP
Close ticketUI OnlyPlannedMVP
Help Center
Browse FAQsStaticStaticStaticMVP
Search help articlesPlannedPlannedPlannedPlannedPhase 1
Admin: Help Content
Manage FAQ categoriesUI OnlyPlannedPhase 1
Create/edit FAQsUI OnlyPlannedPhase 1
Create/edit help articlesUI 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)
AuthenticationCoreAlways on
Navigation/routingCoreAlways on
Activity browsingCoreAlways on
Profile viewingCoreAlways 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.