Skip to content

Build Ecosystem Organization Add Form (/ecosystem/add) #11

Description

@LRxDarkDevil

Build Ecosystem Organization Add Form (/ecosystem/add)

Overview

Create multi-step form for adding new incubators, accelerators, hubs, or other ecosystem organizations to the directory.

Scope

  • Create /ecosystem/add multi-step form:
    • Step 1: Organization info (name, type, description, website)
    • Step 2: Contact & location (email, phone, city, address, coordinates)
    • Step 3: Services offered (sectors, stage focus, investment range)
    • Step 4: Review and submit
  • Save to Firestore ecosystemOrganizations collection
  • Optional verification workflow for new organizations
  • Organizations appear on map (if location feature exists)
  • Enable filtering by type, city, and sectors

Acceptance Criteria

  • Form validates all required fields
  • Organization type: incubator, accelerator, hub, university, VC, government, other
  • Location field supports city selection from predefined list (Karachi, Lahore, Islamabad, etc.)
  • Contact info validated: email format, phone number
  • Website URL validated and clickable
  • Description supports rich text or Markdown
  • Logo/image upload optional (defaults to placeholder)
  • Sectors: multi-select from list (fintech, AI, e-commerce, etc.)
  • Stage focus: seed, series A, etc., optional
  • Investment range: min-max amounts in PKR
  • Organization saved to Firestore
  • Appears in directory after submission (or admin approval if verification enabled)
  • Submitter receives confirmation email
  • Admin gets notification of new submission

Related Files

  • app/ecosystem/add/page.tsx — create if missing
  • lib/services/ecosystem.ts — add organization submission logic
  • app/ecosystem/page.tsx — display listed organizations

Data Model

ecosystemOrganizations {
  name: string
  type: string
  description: string
  website: string
  email: string
  phone: string
  city: string
  address: string
  coordinates: { lat: number, lng: number }
  sectors: string[]
  stageFocus: string[]
  investmentRangeMin: number
  investmentRangeMax: number
  logoUrl?: string
  status: "submitted" | "verified" | "rejected"
  createdAt: timestamp
}

Future Enhancements

  • Map view of organizations by city
  • Ratings and reviews from startup founders
  • Event hosting capability

Why This Matters

  • Improves ecosystem visibility
  • Helps startups find support services
  • Network effects (more orgs → more startups discover them)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions