Contributing Guidelines
How to contribute content to Dzaleka Online Services
Code of Conduct
As a contributor to Dzaleka Online Services, you are expected to uphold our community values:
- Respect the cultural diversity and heritage of the Dzaleka community
- Maintain confidentiality of sensitive information and personal data
- Ensure content accuracy and cultural sensitivity in all contributions
- Support community empowerment through your work
- Follow ethical guidelines for content creation and sharing
- Respect intellectual property rights and proper attribution
- Maintain professional communication in all interactions
- Contribute to a safe and inclusive environment for all community members
By participating in this project, you agree to uphold these values and contribute positively to the Dzaleka community.
Content Structure
Content Collections
All content is organized in the src/content directory with 13 different collections:
Core Collections
news/- News articles with categories: business-spotlight, announcement, success-story, business-guide, news, educationevents/- Community events with registration and panelistsservices/- Organization directory with 100+ active servicesresources/- 140+ educational resources, PDFs, and guidesdocs/- Platform documentation and help content
Community Content
photos/- Photo gallery with photographer creditsstories/- Community stories and photo essaysinspirational-stories/- Personal success storiescommunity-voices/- Community perspectives
Talent & Skills
profiles/- Skills exchange and service provider profilesjobs/- Employment opportunities and job listingstalents/- Showcase of artists, dancers, and poets
Additional Content
artists/,dancers/,poets/- Individual talent profilesprojects/- Community projects and initiativessites/- Site register and location data
File Organization
- Use kebab-case for filenames (e.g.,
refugee-self-advocacy-november-2025.md) - Place files in their appropriate collection directory
- Use descriptive filenames that reflect the content
- Include proper frontmatter for all content files
- Validate content using the schema defined in
src/content/config.ts
Content Guidelines
Frontmatter Templates
Each content type requires specific frontmatter. Here are the most common templates:
News Articles
--- title: "Your Article Title" description: "Brief summary for SEO and previews" date: 2025-11-17 category: news # or business-spotlight, announcement, success-story, business-guide, education featured: true # optional image: "/images/article-cover.jpg" # optional author: "Author Name" # optional tags: ["tag1", "tag2"] # optional --- Your article content here...
Events
---
title: "Event Title"
description: "Event description"
date: 2025-11-27T15:00:00+02:00
endDate: 2025-11-27T16:00:00+02:00 # optional
location: "Dzaleka Refugee Camp" # or "Online (Zoom)"
category: "Advocacy" # or Education, Arts, Sports, etc.
organizer: "Organization Name"
status: "upcoming" # or "past"
featured: true # optional
image: "/images/event-cover.jpg" # optional
registration:
required: true
url: "https://registration-link.com"
contact:
email: "contact@email.com"
phone: "+265..."
panelists: # optional
- name: "Panelist Name"
role: "Role"
organization: "Organization"
bio: "Brief bio"
tags: ["refugees", "advocacy"]
---
Event details... Services
--- title: "Organization Name" description: "What the organization does" category: "Education" # or Healthcare, Business, Arts, etc. featured: false # optional verified: true # optional logo: "/images/logos/org-logo.png" # optional contact: email: "info@org.com" phone: "+265..." whatsapp: "+265..." location: address: "Dzaleka Refugee Camp" city: "Dowa" socialMedia: website: "https://website.com" facebook: "https://facebook.com/page" instagram: "@handle" tags: ["education", "youth"] --- Organization details...
Photos
--- title: "Photo Title" description: "Photo description or story" date: "2024-03-15" image: "/images/photo.jpg" # or Cloudinary URL photographer: name: "Photographer Name" bio: "Brief bio" instagram: "@handle" website: "https://website.com" location: "Dzaleka Refugee Camp" # optional featured: true # optional tags: ["community", "daily-life"] --- Photo story or context...
Resources
--- title: "Resource Title" description: "What this resource provides" category: "Legal" # or Education, Health, etc. date: 2024-01-15 downloadUrl: "/resources/pdf/document.pdf" resourceUrl: "https://external-link.com" # optional alternative fileType: "PDF" fileSize: "2.5 MB" author: "Author/Organization" # optional languages: ["English", "French"] # optional tags: ["legal", "rights"] --- Resource description...
Writing Guidelines
- Accuracy: Verify all facts, dates, and information before publishing
- Clarity: Use clear, concise language accessible to all readers
- Cultural Sensitivity: Be respectful of diverse backgrounds and perspectives
- Attribution: Always credit sources, photographers, and quoted individuals
- SEO: Write descriptive titles and meta descriptions (150-160 characters)
- Accessibility: Use descriptive headings, alt text for images, and semantic HTML
Content Quality Standards
- Proofread for grammar, spelling, and punctuation errors
- Use active voice and present tense where appropriate
- Break long paragraphs into shorter, readable sections
- Include relevant internal and external links
- Add visual elements to enhance understanding
- Ensure mobile-friendly formatting
Media Guidelines
Image Requirements
- Format: JPG, PNG, or WebP (WebP preferred for better compression)
- Resolution: Minimum 800x600 pixels (1200x800 recommended for hero images)
- File size: Maximum 2MB before upload (will be optimized automatically)
- Aspect ratio: 16:9 or 4:3 for consistency
- Alt text: Required for all images - describe what's in the image
- Attribution: Always credit photographers and sources
Image Hosting Options
Option 1: Cloudinary (Recommended)
- Upload images to Cloudinary for automatic optimization
- Images are automatically resized and converted to WebP
- Use the Cloudinary URL in your content frontmatter
- Faster loading times and better performance
- Example:
https://res.cloudinary.com/account/image/...
Option 2: Local Storage
- Store images in
public/images/directory - Use descriptive filenames (e.g.,
dzaleka-art-festival-2024.jpg) - Organize by content type:
public/images/events/,public/images/services/ - Optimize images before uploading (compress to reduce file size)
- Reference as:
/images/events/your-image.jpg
Image Best Practices
- Use high-quality, well-lit photographs
- Ensure images are culturally appropriate and respectful
- Obtain permission before photographing individuals
- Avoid images with sensitive or personal information
- Use landscape orientation for hero images
- Include diverse representation in visual content
Video Content
- Embed videos from YouTube, Vimeo, or other platforms
- Do not upload large video files directly to the site
- Include video transcripts for accessibility
- Add descriptive captions and titles
PDF and Document Files
- Store PDFs in
public/resources/pdf/ - Maximum file size: 10MB
- Use descriptive filenames
- Ensure PDFs are accessible (searchable text, not scanned images)
- Include file size in resource frontmatter
Review & Publication Process
Before Submission Checklist
- ✓ Content follows community values and guidelines
- ✓ Frontmatter is complete with all required fields
- ✓ Images are optimized, attributed, and have alt text
- ✓ All links are working and relevant
- ✓ Cultural sensitivity and respect are maintained
- ✓ Grammar, spelling, and punctuation are correct
- ✓ Content is accurate and fact-checked
- ✓ Proper permissions obtained for photos/quotes
- ✓ Mobile-friendly formatting verified
Submission Methods
Method 1: Direct File Creation (For Technical Staff)
- Create markdown file in appropriate
src/content/directory - Add complete frontmatter using the templates above
- Write content in markdown format
- Test locally using
npm run dev - Commit to GitHub with descriptive message
- Create pull request for review (if applicable)
Method 2: Web Forms (For All Staff)
- Events: Use Event Submission Form
- Services: Use Service Registration Form
- Photos: Use Photo Submission Form
- Community Voices: Use Voice Submission Form
- News: Use Blogger Dashboard
Review Timeline
- Web Form Submissions: Reviewed within 24-48 hours
- Direct File Submissions: Reviewed upon pull request creation
- Urgent Content: Contact staff for expedited review
Publication Workflow
- Draft: Content created and submitted
- Review: Staff reviews for quality and compliance
- Feedback: Revisions requested if needed
- Approval: Content approved for publication
- Published: Content goes live on the platform
- Promotion: Content shared on social media (if featured)
Common Rejection Reasons
- Incomplete or missing frontmatter
- Poor image quality or missing attribution
- Factual errors or unverified information
- Grammar and spelling issues
- Cultural insensitivity or inappropriate content
- Missing required permissions or consents
- Duplicate or outdated content
Helpful Tools & Resources
Image Optimization Tools
- TinyPNG - Compress images without quality loss
- Squoosh - Browser-based image compression
- Remove.bg - Remove image backgrounds
Writing Tools
- Hemingway Editor - Improve readability
- Grammarly - Grammar and spell checking
- Word Counter - Count words and characters
Markdown Resources
- Markdown Guide - Complete markdown reference
- StackEdit - Online markdown editor
- Dillinger - Another markdown editor
Internal Resources
- Training Materials - Comprehensive platform guides
- FAQ - Common questions and answers
- Documentation - Platform documentation
- Knowledge Base - Additional resources
Need Help?
If you have questions about contributing or need assistance:
- Contact the team via Help Desk
- Check the FAQ for common questions
- Review Training Materials for detailed guides
- Email us at dzalekaconnect@gmail.com