Overview
The Events Calendar showcases the vibrant cultural life of Dzaleka Refugee Camp - from festivals and performances to educational workshops and community gatherings. The platform helps organizers promote events and helps community members discover what’s happening.Events automatically categorize as “upcoming” or “past” based on their date, with TBA (To Be Announced) events handled specially.
User Workflows
Discovering Events
Browse Upcoming Events
View chronologically sorted upcoming events on
/events homepage or dedicated /events/upcoming/[page] pages.Explore Past Events
Browse event history at
/events/past to see photos and recaps of previous gatherings.Filter by Type
Navigate to
/events/[type]/[page] to see events by category (cultural, educational, workshop, etc.).Event Detail Page
Each event (/events/[slug]) displays:
- Hero image with event title and date
- Event details: Description, location, organizer info
- Date & time: Start and end times with timezone
- Registration: Link to RSVP or registration form (if required)
- Contact: Organizer email, phone, and WhatsApp
- Category badge: Visual indicator of event type
- Status indicator: Upcoming, past, or TBA designation
Automatic Status
Events automatically transition from “upcoming” to “past” based on date
TBA Support
Handle events with dates “To Be Announced” without breaking chronological sorting
Rich Media
Feature high-quality images to promote visual engagement
Schema Markup
Google Calendar and search engine integration via structured data
Content Schema
Events are stored insrc/content/events/ as Markdown files with the following schema:
Real Example from Source
FromMiss Culture Dzaleka 2024.md:
How to Add an Event
Date Handling & Sorting
Upcoming vs Past Events
The platform automatically determines event status:Event Status Logic
TBA Event Handling
Events marked as TBA are always sorted last:TBA Sorting Logic
Submit Event Flow
Users can submit events via/events/organize:
- Form Submission: Fill out event details through web form
- Image Upload: Provide event poster/photo (uploaded to cloud storage)
- Email Notification: Admin receives submission details
- Review: Admin verifies information and creates content file
- Publication: Event appears on the platform
- Promotion: Featured events highlighted on homepage
Technical Implementation
Dynamic Routes
Events use multiple dynamic routing patterns:SEO & Rich Snippets
Events include comprehensive Schema.org markup for Google Calendar integration:Event Structured Data
Event Categories
Supported event types:- Cultural Event - Festivals, pageants, cultural celebrations
- Workshop - Educational sessions, training programs
- Webinar - Online presentations and discussions
- Performance - Music, dance, theater shows
- Community Meeting - Gatherings, town halls, forums
- Sports - Tournaments, competitions, games
- Fundraiser - Charity events, donation drives
- Other - Miscellaneous community events
Best Practices
Use High-Quality Images
Recommended size: 1200x630px (16:9 aspect ratio) for optimal display across devices.
Clear Event Titles
Make titles descriptive and searchable. Include the main topic/activity.
Accurate Dates & Times
Always use ISO 8601 format with timezone (UTC):
2025-03-15T14:00:00ZDetailed Descriptions
Include what attendees will learn/experience, who should attend, and what to bring.
Troubleshooting
Event not showing in upcoming list
Event not showing in upcoming list
- Verify the date is in the future:
date: 2025-XX-XXT00:00:00Z - Check that
statusis set to"upcoming"(not required but recommended) - Ensure the date format is valid ISO 8601
- Rebuild the site:
npm run build
Registration link not clickable
Registration link not clickable
Ensure the registration section has proper YAML formatting:The URL must be a complete, valid link.
Image not displaying
Image not displaying
Images can be:
- Relative paths:
/images/event.jpg(stored inpublic/images/) - Absolute URLs:
https://example.com/image.jpg
Related Features
Services
Organizations that host events
Community Voices
Share event stories and recaps
Marketplace
Sell event tickets or merchandise

