Skip to main content
Thank you for contributing to Dzaleka Online Services! This guide will help you create properly formatted content that integrates seamlessly with the platform.

Getting Started

1

Choose a Collection

Determine which collection best fits your content. See the Collections Overview for details on each type.
2

Review the Schema

Check the Schema Reference for required and optional fields for your collection.
3

Create Your File

Follow the file naming and formatting guidelines below.
4

Submit Your Content

Submit via pull request or contact the platform administrators.

File Naming Conventions

General Rules

  • Use lowercase letters
  • Replace spaces with hyphens (-)
  • Use descriptive, meaningful names
  • Avoid special characters except hyphens
  • Keep names concise but clear

Examples

Collection-Specific Guidelines

Include event name and year:
  • tumaini-festival-2025.md
  • refugee-self-advocacy-november-2025.md
Use job title or role:
  • secondary-school-teachers.md
  • programs-manager.md
  • digital-archivist.md
Use business name:
  • zawadie-solutions.md
  • mama-joys-kitchen.md
  • dowa-bakery.md
Use product/service name:
  • refugee-for-life-book.md
  • kibebe-baby-products.md
Use person or group name:
  • christian-piniero.md
  • shakers-dance-crew.md

Frontmatter Requirements

Structure

All content files must start with YAML frontmatter between triple dashes:

Required vs Optional Fields

Required fields must be present in every file. Missing required fields will cause validation errors.
Optional fields can be omitted entirely. Don’t include them with empty values unless necessary.

Field Formatting

Strings

Simple strings can be unquoted:
Quote strings with special characters:

Dates

Use ISO 8601 format for date-time:
Or simple date format:

Booleans

Arrays

Objects

Arrays of Objects

Enums (Specific Values)

Some fields only accept specific values. Check the schema for allowed values:

Markdown Content

Basic Formatting

After the frontmatter, write your content in Markdown:

Heading Levels

Start with ## (h2) for main sections. The # (h1) level is typically reserved for the page title.

Lists

Emphasis

Blockquotes

Great for testimonials:

Code

Inline code: `code here` Code blocks:

Image Guidelines

Image Paths

Store images in the public/images/ directory:
The /images/ path maps to public/images/ in the project.

Image Optimization

File Size

  • Aim for under 500 KB per image
  • Use compression tools
  • Consider WebP format

Dimensions

  • Logos: 200-400px wide
  • Thumbnails: 600-800px wide
  • Cover images: 1200-1600px wide

Format

  • Photos: JPG/JPEG
  • Graphics/logos: PNG or WebP
  • Avoid BMP, TIFF

Naming

  • Use descriptive names
  • Lowercase with hyphens
  • Example: tumaini-festival-2025.jpg

Organizing Images

Create subdirectories for better organization:
Then reference:

Content Best Practices

Writing Style

  • Write clear, concise descriptions
  • Use active voice
  • Be specific and factual
  • Proofread for spelling and grammar
  • Use proper capitalization

Accessibility

  • Write descriptive alt text (coming soon)
  • Use clear heading hierarchy
  • Ensure sufficient contrast for images
  • Make links descriptive (“Visit Zawadie Solutions” not “click here”)

SEO Considerations

  • Use relevant keywords in titles and descriptions
  • Keep titles under 60 characters
  • Keep descriptions under 160 characters
  • Use descriptive file names for images
  • Include location information where relevant
Important Privacy Guidelines
  • Only include photos with proper consent
  • Verify all contact information is correct
  • Don’t share sensitive personal information
  • For minors, ensure guardian consent
  • Respect cultural sensitivities

Common Examples

Service Listing

Event Listing

Job Posting

Validation & Testing

Before Submitting

1

Check Required Fields

Ensure all required fields are present for your collection
2

Validate YAML

Use a YAML validator to check frontmatter syntax
3

Review Content

Proofread for spelling, grammar, and clarity
4

Test Links

Verify all URLs are working
5

Check Images

Ensure image paths are correct and images load

Common Errors

Error: Required field missingSolution: Check the schema for required fields and add them to your frontmatter
Error: Invalid dateSolution: Use ISO 8601 format: 2025-10-30T09:00:00Z or simple date: 2025-10-30
Error: Invalid enum valueSolution: Check allowed values in schema. For example, job type must be one of: full-time, part-time, contract, volunteer, internship
Error: YAML parsing failedSolution: Check for:
  • Proper indentation (use spaces, not tabs)
  • Matching quotes
  • Correct array/object syntax
  • No special characters without quotes
Error: Image validation failedSolution: For photos collection, ensure image path starts with /images/ or is a valid URL

Submission Process

Via GitHub

  1. Fork the repository
  2. Create your content file in the appropriate collection folder
  3. Add images to public/images/ if needed
  4. Commit with descriptive message
  5. Submit pull request

Via Email

Send your content file and any images to: content@dzaleka.com Include:
  • Collection name
  • Content file (.md)
  • Images (if any)
  • Your contact information

Getting Help

Collections Reference

Learn about each collection type

Schema Reference

Detailed field specifications

Example Files

Browse existing content for examples

Contact Support

Email us for assistance

Tips for Success

Start SimpleBegin with required fields only, then add optional fields as needed.
Copy From ExamplesBrowse existing content files in the repository and use them as templates.
Test LocallyIf possible, run the project locally to see how your content appears before submitting.
Ask QuestionsDon’t hesitate to reach out if you’re unsure about formatting or requirements.

Thank You!

Your contributions help build a comprehensive resource for the Dzaleka community. Every story, service, event, and resource you add makes a difference!