Skip to content

Create ProjectTitle component #4

@SAUMILDHANKAR

Description

@SAUMILDHANKAR

Issue created with ChatGPT models help¹

Parent: Epic Feature – Project Detail View (Map Interaction + Title & Info Panels)³


Description

Create a reusable ProjectTitle React component that appears when a user clicks on a map marker and the project detail view is activated¹. This component represents the top header bar (as shown in Figma) and displays the project title dynamically based on the clicked marker label².

The component should visually match the Figma design. The primary goal of this issue is to implement the UI structure and styling, while keeping the component flexible for future integration with routing and backend services⁴.

Image

Goals

  • Create reusable ProjectTitle component¹
  • Dynamically display project title from marker click event²
  • Match Figma layout and styling exactly³
  • Keep component extensible for future routing/service integration¹

Implementation Instructions

  • Create ProjectTitle.tsx (or .jsx) component¹
  • Accept props such as title (string) and optional onSave handler²
  • Render title text dynamically from selected map marker³
  • Apply exact Figma layout specs (see below)¹
  • Use flex layout for alignment and spacing²
  • Ensure component integrates cleanly with parent layout (map + info panel)³
  • Please use MUI components where possible.
  • (Optional) Add basic state handling for saved/unsaved UI toggle⁴

Layout Specs (Figma)

  • Width: 1188px¹
  • Height: 73px²
  • Gap: 12px³
  • Padding: 20px (top/bottom), 24px (left/right)⁴
  • Border-bottom: 2px solid #E8E8E8¹
  • Background: #FFFFFF²
  • Display: Flex (row, space-between alignment recommended)³

Behavior

  • Title updates dynamically based on clicked marker label¹
  • Component should render only when a project is selected⁴

Acceptance Criteria

  • ProjectTitle component renders with correct layout and styling¹
  • Title updates dynamically from selected marker²
  • Component visually matches Figma design⁴
  • Component is reusable and accepts props cleanly¹

Consider helping after PR for this issue is merged


Resources

¹ https://react.dev/learn/passing-props-to-a-component
² https://react.dev/learn/conditional-rendering
³ https://developer.mozilla.org/en-US/docs/Web/CSS/flex
https://developer.mozilla.org/en-US/docs/Web/CSS/padding

Figma Design: https://www.figma.com/proto/e9z8edludVssFYABGEWsoI/OpenNature-Map--Hackathons-?node-id=1-1465&viewport=787%2C545%2C0.11&t=Xwc2asfn9Qksi99P-8&scaling=scale-down&content-scaling=fixed&starting-point-node-id=1%3A896&page-id=0%3A1&hide-ui=1


Image

Metadata

Metadata

Assignees

No one assigned

    Type

    No fields configured for Task.

    Projects

    Status

    Ready

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions