From 2558da9810baffad2a961046b405a01b5cb061b6 Mon Sep 17 00:00:00 2001 From: Sean O'Connor Date: Fri, 14 Feb 2025 09:33:02 -0500 Subject: [PATCH] Redesign web interface with custom CSS and simplified layout --- README.md | 38 ++++---- docs/schema.md | 7 +- index.html | 229 ++++++++++++++++++++++++++++++++++-------------- repository.json | 6 +- 4 files changed, 190 insertions(+), 90 deletions(-) diff --git a/README.md b/README.md index 308e49b..2d55c4c 100644 --- a/README.md +++ b/README.md @@ -13,17 +13,17 @@ plugins/ # Directory containing all plugin files plugin2.json # Individual plugin definition ... assets/ # Optional directory for repository assets - icon.png # Repository icon - banner.jpg # Repository banner - logo.svg # Repository logo + repository-icon.png # Repository icon + repository-logo.png # Repository logo + repository-banner.png # Repository banner ``` ## Web Interface -The repository includes a built-in web interface (`index.html`) that provides a user-friendly way to view repository information. When hosting your repository on GitHub Pages or any web server, this interface will automatically: +The repository includes a built-in web interface (`index.html`) that provides a user-friendly way to view repository information. When hosting your repository, this interface will automatically: - Display repository name, description, and metadata -- Show repository statistics (plugin count, downloads, stars) +- Show repository statistics (plugin count) - List author information and compatibility details - Display repository tags and categories - Show repository assets (icon, banner, logo) @@ -39,7 +39,12 @@ The `repository.json` file contains the repository's metadata and configuration: "id": "unique-repository-id", "name": "Repository Name", "description": "Repository description", - "url": "https://example.com/repository", + "urls": { + "repository": "https://example.com/repository", + "git": "https://github.com/user/repo.git" + }, + "official": false, + "trust": "community", "author": { "name": "Author Name", "organization": "Organization Name", @@ -52,18 +57,16 @@ The `repository.json` file contains the repository's metadata and configuration: }, "ros2": { "distributions": ["humble", "iron"], - "recommended": "humble" + "recommended": "iron" } }, "assets": { - "icon": "assets/icon.png", - "banner": "assets/banner.jpg", - "logo": "assets/logo.svg" + "icon": "assets/repository-icon.png", + "banner": "assets/repository-banner.png", + "logo": "assets/repository-logo.png" }, "stats": { - "plugins": 0, - "downloads": 0, - "stars": 0 + "plugins": 0 }, "tags": ["robots", "simulation", "education"] } @@ -77,13 +80,12 @@ For detailed information about plugin structure and requirements, see the [Plugi ## Contributing -1. Fork this repository -2. Create your plugin branch (`git checkout -b my-new-plugin`) +1. Fork or clone this repository +2. Create your plugin branch 3. Add your plugin JSON file to the `plugins` directory 4. Update `plugins/index.json` to include your plugin -5. Commit your changes (`git commit -am 'Add new plugin'`) -6. Push to the branch (`git push origin my-new-plugin`) -7. Create a new Pull Request +5. Test your changes locally +6. Submit your changes ## License diff --git a/docs/schema.md b/docs/schema.md index 85f9437..dee191e 100644 --- a/docs/schema.md +++ b/docs/schema.md @@ -11,7 +11,10 @@ The repository itself is defined by a `repository.json` file with the following "id": string, "name": string, "description": string?, - "url": string (URL), + "urls": { + "repository": string (URL), + "git": string (URL)? + }, "official": boolean, "author": { "name": string, @@ -48,8 +51,6 @@ The repository itself is defined by a `repository.json` file with the following }, "tags": string[], "stats": { - "downloads": number, - "stars": number, "plugins": number }? } diff --git a/index.html b/index.html index 3ae66aa..e217bde 100644 --- a/index.html +++ b/index.html @@ -4,99 +4,198 @@ HRIStudio Robot Plugins - - - -
+ +
Loading repository data...
-