Skip to content

Add community configuration system #1

@victoria-lo

Description

@victoria-lo

We’d like to make this tool more community-agnostic and easily reusable by other tech groups (for example: open source meetups, developer community organisations, hackathon groups, etc). Right now it is branded and structured around ragTechDev, but with a few adjustments it could serve a wider audience.

Goals:

  • Allow other tech communities to add their own brand (names, logos, colours) without needing deep code changes.
  • Provide a clear onboarding path for new communities to fork/customise the project.
  • Make configuration of templates (templates for social posts, event banners, etc) more flexible so communities can adapt text/layout/logo easily.
  • Keep the core functionality (canvas export, platform sizes, etc) intact, but separate “branding assets” from core logic.

Sub-issues:

We’d like to make this tool more community-agnostic and easily reusable by other tech groups (for example: open source meetups, developer community organisations, hackathon groups, etc). Right now it is branded and structured around ragTechDev, but with a few adjustments it could serve a wider audience.

Goals:

  • Allow other tech communities to add their own brand (names, logos, colours) without needing deep code changes.
  • Provide a clear onboarding path for new communities to fork/customise the project.
  • Make configuration of templates (templates for social posts, event banners, etc) more flexible so communities can adapt text/layout/logo easily.
  • Keep the core functionality (canvas export, platform sizes, etc) intact, but separate “branding assets” from core logic.

Sub-issues:

#1 Add community configuration system

Goal: Introduce a structured configuration file for community branding settings.

Description:
Create a community.config.json (or .yaml) file that defines community name, logos, colors, fonts, and social links.
The app should load and validate this file at runtime, making values accessible across templates through a helper (e.g. getBrandConfig()).

Acceptance criteria:

  • Config file supports: name, logo URLs, colors, fonts, and social handles.
  • App loads and validates config successfully.
  • A single utility function provides config values to templates.
  • Default values fallback to ragTechDev branding if no config provided.

Dependencies: None

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