Skip to content

refactor: clients section to dynamically fetch from sunshine.json#5380

Open
eduardomozart wants to merge 3 commits into
LizardByte:masterfrom
eduardomozart:feat/refactor-clients
Open

refactor: clients section to dynamically fetch from sunshine.json#5380
eduardomozart wants to merge 3 commits into
LizardByte:masterfrom
eduardomozart:feat/refactor-clients

Conversation

@eduardomozart

@eduardomozart eduardomozart commented Jul 5, 2026

Copy link
Copy Markdown
Contributor

Description

This PR refactors the gh-pages-template to dynamically fetch client information from the centralized sunshine.json directory rather than relying on a static clients.yml file.

  • Emptied gh-pages-template/_data/clients.yml as its static data is no longer necessary.
  • Updated gh-pages-template/index.html to fetch https://app.lizardbyte.dev/app-directory/sunshine.json and build the client DOM dynamically using JavaScript.
  • Added front-end heuristics to retain identical visual parity (dynamically computing styles for correct badges for Google Play, Apple App Store, Amazon, F-Droid, and precise download icons) without modifying or requiring non-standard fields in the strict sunshine.json schema.

Note: This PR requires LizardByte/app-directory#40 to be merged first, as it relies on the newly defined icons and downloads schema in sunshine.json.

Screenshot

image

Issues Fixed or Closed

Roadmap Issues

Type of Change

  • feat: New feature (non-breaking change which adds functionality)
  • fix: Bug fix (non-breaking change which fixes an issue)
  • docs: Documentation only changes
  • style: Changes that do not affect the meaning of the code (white-space, formatting, missing semicolons, etc.)
  • refactor: Code change that neither fixes a bug nor adds a feature
  • perf: Code change that improves performance
  • test: Adding missing tests or correcting existing tests
  • build: Changes that affect the build system or external dependencies
  • ci: Changes to CI configuration files and scripts
  • chore: Other changes that don't modify src or test files
  • revert: Reverts a previous commit
  • BREAKING CHANGE: Introduces a breaking change (can be combined with any type above)

Checklist

  • Code follows the style guidelines of this project
  • Code has been self-reviewed
  • Code has been commented, particularly in hard-to-understand areas
  • Code docstring/documentation-blocks for new or existing methods/components have been added or updated
  • Unit tests have been added or updated for any new or modified functionality

AI Usage

  • None: No AI tools were used in creating this PR
  • Light: AI provided minor assistance (formatting, simple suggestions)
  • Moderate: AI helped with code generation or debugging specific parts
  • Heavy: AI generated most or all of the code changes

@ReenigneArcher ReenigneArcher left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

Thanks for the PR!

I will wait to run CI as there is an ongoing issue with sonar at the moment. https://community.sonarsource.com/t/sonar-seems-to-now-be-including-submodules-when-scanning-please-revert/184681

Could you also update the featured apps section in the web-ui to use the download images (like for Microsoft Store and Apple Store) when available?

Comment thread gh-pages-template/_data/clients.yml Outdated
@eduardomozart eduardomozart changed the title Refactor clients section to dynamically fetch from sunshine.json refactor: clients section to dynamically fetch from sunshine.json Jul 5, 2026
@eduardomozart

Copy link
Copy Markdown
Contributor Author

Done!

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.

2 participants