Skip to content

Conversation

@EmersonFras
Copy link
Contributor

@EmersonFras EmersonFras commented Jan 21, 2026

Summary

This PR transforms the Imageomics Catalog repository into a reusable template that other organizations can easily customize. The repository previously contained hardcoded organization names, colors, branding, and other settings throughout multiple files. All hardcoded values have been extracted into a centralized config.js configuration file, making it straightforward for users to personalize the catalog by editing a single file. The usage of a config.js file serves two purposes, first it simplifies the personalization step by requiring modifying only one file, and secondly a javascript file to take advantage of code comments to clarify each variable in the file.

Changes Made

  • Created config.js: New central configuration file containing all customizable settings including organization names, branding (title, description, logos), color scheme, API settings, and behavior options.

  • Refactored code to use config values:

    • Updated main.js to reference CONFIG object instead of hardcoded constants
    • Modified index.html to dynamically apply config values (with minimal inline script for immediate setup to avoid FOUC)
    • Updated style.css to use CSS custom properties that are populated from config\
  • Added documentation: Comprehensive "How to Use This Template" section in README with instructions on using the GitHub template feature and detailed personalization guide for config.js.


Closes #19

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR transforms the Imageomics Catalog into a reusable template by extracting hardcoded organization-specific values into a centralized configuration file. The changes enable other organizations to personalize the catalog by modifying a single config.js file instead of editing multiple files throughout the codebase.

Changes:

  • Created config.js with all customizable settings (organization names, branding, colors, API settings, and behavior options)
  • Refactored main.js, index.html, and style.css to consume configuration values dynamically instead of using hardcoded constants
  • Added comprehensive template usage documentation in README with detailed personalization instructions

Reviewed changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 10 comments.

Show a summary per file
File Description
config.js New centralized configuration file containing all customizable settings with inline documentation
main.js Updated to reference CONFIG object, added initializeUIFromConfig function, and made GitHub API calls use dynamic repository URLs
index.html Modified to load config.js and apply configuration values through inline scripts and DOMContentLoaded handlers
style.css Converted hardcoded colors to CSS custom properties populated from config.js at runtime
README.md Added "How to Use This Template" section with detailed instructions for personalizing config.js settings

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Member

@egrace479 egrace479 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Mostly just some notes on the instructions. Overall, looks good!

Copy link
Member

@egrace479 egrace479 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@EmersonFras EmersonFras linked an issue Jan 22, 2026 that may be closed by this pull request
7 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Turn into template repo

3 participants