From b61fecc9d13f93e58c3f59ee91d81fcfd26cb062 Mon Sep 17 00:00:00 2001 From: Richard Macias Date: Mon, 2 Jun 2025 09:27:18 -0500 Subject: [PATCH] chore: update developer documentation --- README.md | 34 +++++++++++++++++++++++----------- pages/development.md | 34 +++++++++++++++++++++++----------- 2 files changed, 46 insertions(+), 22 deletions(-) diff --git a/README.md b/README.md index 6464669..c533104 100644 --- a/README.md +++ b/README.md @@ -135,27 +135,39 @@ You are welcome to make a PR with a contribution. #### 1. Making changes to the pack -You'll want to directly edit only things in either `./pages/` or `./src/`. Everything else should be designed to update -through scripts. Including the README! +##### Adding / Removing Applications -...why template out the README? Because that table is very cumbersome to update on every change. +To add, update or remove an application, you need to: + +1. make edits to `src/applications.json`. +1. run `make release` in the root directory #### 2. Pre-Commit Before you commit, make sure to run `make release`. This will: -- template the README +- template the README and update the table - update the minified json release file -### Development Tips +After running `make release`, please check for the following: + +- `obtainium-emulation-pack-latest.json` has been updated +- `README.md` has been updated. +- Does the README table generate a friendly application name? If not, see documentation for `nameOverride` +- Does the README table generate a friendly applicaation URL? If not, see documentation for `urlOverride` +- Is the application in beta? If so, please exclude it from the JSON using `meta.excludeFromExport` + +### Developer Documentation #### Meta field options -My scripts will do specific actions if a `meta` field is present +My scripts will do specific actions if specific application keys are present in the +`application.json` -| key | type | default | description | -| ---------------- | ------ | ------- | ------------------------------------------------------------------------- | -| exludeFromExport | bool | false | Excludes the app from the release export json. | -| exludeFromTable | bool | false | Excludes the app from the README table. | -| nameOverride | string | null | overwrite emulator name, useful if the default name is not human friendly | +| key | type | default | description | +| --------------------- | ------ | ------- | ------------------------------------------------------------------------------------------------------------------------- | +| meta.exludeFromExport | bool | false | Excludes the app from the release export json. | +| meta.exludeFromTable | bool | false | Excludes the app from the README table. | +| meta.nameOverride | string | null | Overwrite emulator name, useful if the default name is not human friendly | +| meta.urlOverride | string | null | Overwrite the application preview link. If empty, the readme table will use the application scraper link as the homepage. | diff --git a/pages/development.md b/pages/development.md index 615f94e..3073545 100644 --- a/pages/development.md +++ b/pages/development.md @@ -6,27 +6,39 @@ You are welcome to make a PR with a contribution. #### 1. Making changes to the pack -You'll want to directly edit only things in either `./pages/` or `./src/`. Everything else should be designed to update -through scripts. Including the README! +##### Adding / Removing Applications -...why template out the README? Because that table is very cumbersome to update on every change. +To add, update or remove an application, you need to: + +1. make edits to `src/applications.json`. +1. run `make release` in the root directory #### 2. Pre-Commit Before you commit, make sure to run `make release`. This will: -- template the README +- template the README and update the table - update the minified json release file -### Development Tips +After running `make release`, please check for the following: + +- `obtainium-emulation-pack-latest.json` has been updated +- `README.md` has been updated. +- Does the README table generate a friendly application name? If not, see documentation for `nameOverride` +- Does the README table generate a friendly applicaation URL? If not, see documentation for `urlOverride` +- Is the application in beta? If so, please exclude it from the JSON using `meta.excludeFromExport` + +### Developer Documentation #### Meta field options -My scripts will do specific actions if a `meta` field is present +My scripts will do specific actions if specific application keys are present in the +`application.json` -| key | type | default | description | -| ---------------- | ------ | ------- | ------------------------------------------------------------------------- | -| exludeFromExport | bool | false | Excludes the app from the release export json. | -| exludeFromTable | bool | false | Excludes the app from the README table. | -| nameOverride | string | null | overwrite emulator name, useful if the default name is not human friendly | +| key | type | default | description | +| --------------------- | ------ | ------- | ------------------------------------------------------------------------------------------------------------------------- | +| meta.exludeFromExport | bool | false | Excludes the app from the release export json. | +| meta.exludeFromTable | bool | false | Excludes the app from the README table. | +| meta.nameOverride | string | null | Overwrite emulator name, useful if the default name is not human friendly | +| meta.urlOverride | string | null | Overwrite the application preview link. If empty, the readme table will use the application scraper link as the homepage. |