Skip to content

📅 Implement Photographer Calendar with Notifications for Upcoming Events #23

@ArjunDivraniya

Description

@ArjunDivraniya

Currently, photographers and clients have no way to view past work dates or upcoming bookings in a structured format. Additionally, photographers do not receive notifications for upcoming events, which may lead to missed appointments.

To enhance usability and efficiency, a Photographer Calendar with Notifications should be implemented. This feature will allow logged-in users to:

✅ View Past Work Dates – Display completed shoots in a structured calendar.
✅ See Future Bookings – Highlight upcoming bookings with proper time slots.
✅ Receive Notifications – Automatic reminders for photographers before scheduled events.
✅ Color-Coded Status – Differentiate between past work (gray), booked dates (red), and available slots (green).
✅ Editable Calendar – Allow photographers to manage their schedule (mark availability, edit bookings, etc.).

🔹 Implementation Approach
🚀 Frontend:

Use React Calendar (react-calendar or FullCalendar.js) for a dynamic and user-friendly interface.
Display dates with different colors based on past/future work and availability.
🚀 Backend:

Use MongoDB + Express.js to store past work dates, bookings, and availability slots.
Implement real-time updates when a booking is confirmed.
🚀 Real-Time Notifications:

Use Firebase Cloud Messaging (FCM) or Socket.io for real-time event notifications.
Send email reminders (NodeMailer) & push notifications to photographers 1 day & 1 hour before the event.
🚀 Authentication & Permissions:

Ensure only logged-in photographers can access & edit their calendar.
Clients can view availability but cannot modify schedules.
🚀 Expected Outcome
📌 Photographers stay updated with automatic event reminders.
📌 Clients can check availability before booking.
📌 No scheduling conflicts with real-time updates.
📌 More efficient workflow for photographers managing their bookings.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions