{"id":22914462,"url":"https://github.com/communitysolidserver/configuration-generator","last_synced_at":"2025-04-01T11:52:56.038Z","repository":{"id":154160516,"uuid":"616908368","full_name":"CommunitySolidServer/configuration-generator","owner":"CommunitySolidServer","description":"A tool to help creating valid configurations for the Community Solid Server","archived":false,"fork":false,"pushed_at":"2024-05-24T11:19:40.000Z","size":1293,"stargazers_count":1,"open_issues_count":3,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-02-07T06:44:25.655Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://communitysolidserver.github.io/configuration-generator/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/CommunitySolidServer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-03-21T10:28:43.000Z","updated_at":"2024-05-24T11:19:17.000Z","dependencies_parsed_at":"2023-10-12T22:11:41.535Z","dependency_job_id":"8ccd1300-e60e-4e44-8e94-c3e2f901d922","html_url":"https://github.com/CommunitySolidServer/configuration-generator","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CommunitySolidServer%2Fconfiguration-generator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CommunitySolidServer%2Fconfiguration-generator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CommunitySolidServer%2Fconfiguration-generator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/CommunitySolidServer%2Fconfiguration-generator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/CommunitySolidServer","download_url":"https://codeload.github.com/CommunitySolidServer/configuration-generator/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246635950,"owners_count":20809331,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-12-14T05:15:08.727Z","updated_at":"2025-04-01T11:52:55.992Z","avatar_url":"https://github.com/CommunitySolidServer.png","language":"TypeScript","readme":"# Community Solid Server configuration generator\n\nA tool made to help users in creating their own custom configurations for the \n[Community Solid Server](https://github.com/CommunitySolidServer/CommunitySolidServer).\n\nA live version can be found at \u003chttps://communitysolidserver.github.io/configuration-generator/v5/\u003e.\n\n## Modifying the UI and output using query parameters\n\nIf you have an external CSS component, you can link to the generator in such a way\nthat it can be used to generate configurations that work with your new component.\nAll of these options can be combined.\n\nThe site takes 3 query parameters as input to further modify the options and results users get to see:\n  * `config` can be used to add additional data to the output, in case your component needs additional configuration.\n  * `options` limits the options available to a user, in case some would conflict with your component.\n  * `removeImports` removes the chosen imports from the output, in case your component replaces some of the imports.\n\nFor example, [this page](https://communitysolidserver.github.io/configuration-generator/v5/?options={%22index%22:[]}\u0026removeImports=[%22css:config/util/index%22]\u0026config=[%20%22https://raw.githubusercontent.com/CommunitySolidServer/Recipes/main/mashlib/config-mashlib.json%22,%20%22https://raw.githubusercontent.com/CommunitySolidServer/hello-world-component/main/hello-world-file.json%22])\nallows you to generate configurations that also include the necessary components\nto support the [mashlib configurations](https://github.com/CommunitySolidServer/Recipes/tree/main/mashlib)\nof the CSS Recipes repository and the component of the \n[Hello World tutorial repository](https://github.com/CommunitySolidServer/hello-world-component).\nYou would still need to install the necessary dependencies to use such a configuration though.\n\n### Adding data to the output\n\nThe `config` parameter can be used to append data to the generated configuration.\nA JSON body containing 3 (optional) fields is expected: `@context`, `import` and `@graph`.\nThese will be merged with the output configuration.\nDuplicate context values will be filtered out,\nand imports that correspond to one of the standard CSS imports will be removed.\n\nThe actual value of the parameter can be one of the following:\n  * A JSON serialization of the expected body.\n  * A URL pointing to such a JSON serialization.\n  * A JSON serialization of an array of URL strings, each of those pointing to such serializations.\n    These will be merged together.\n\nThis [example](https://communitysolidserver.github.io/configuration-generator/v5/?config=%7B%0A%20%20%22%40context%22%3A%20%20%22https%3A%2F%2Flinkedsoftwaredependencies.org%2Fbundles%2Fnpm%2Fhello-world-module%2F%5E5.0.0%2Fcomponents%2Fcontext.jsonld%22%2C%0A%20%20%22import%22%3A%20%5B%20%20%22hello-world%3Aconfig%2Fhello-world.json%22%20%5D%0A%7D%0A)\nadds a new context and import to the result.\n\nSimilarly, this [example](https://communitysolidserver.github.io/configuration-generator/v5/?config=https%3A%2F%2Fraw.githubusercontent.com%2FCommunitySolidServer%2Fhello-world-component%2Fmain%2Fhello-world-file.json)\nadds all entries from the config found [here](https://raw.githubusercontent.com/CommunitySolidServer/hello-world-component/main/hello-world-file.json)\nto the result.\n\n### Limiting the options available to users\n\nThe `options` parameter expects a JSON key/value object with the keys being the choices for which you want to limit the options,\nand the values being a string or an arrays of strings containing the options that are still valid.\n\nTo know what strings to use for the available choices and strings, you can have a look at the HTML source of the generator, \nor the objects in \u003chttps://github.com/CommunitySolidServer/configuration-generator/tree/main/src/choices/specifics\u003e.\n\nFor example, the following page only allows the backend to be the in-memory or file options:\n\u003chttps://communitysolidserver.github.io/configuration-generator/v5/?options=%7B%22backend%22%3A%5B%22memory%22%2C%22file%22%5D%7D\u003e\n\nIf only 1 option is provided for a given choice, it will be removed from the page and instead embedded as a hidden input.\n\nIf no options are provided, the entire block is removed,\nbut you should also make sure to remove the corresponding imports as mentioned below to prevent unexpected behaviour.\n\n### Removing imports\n\nThe `removeImports` parameter expects a string or an array of strings. \nAny import that contains that string or any of the strings in the array will be removed.\nThis is applied after adding the imports from the `config` parameter.\n\nFor example, the following page will remove all storage related imports from the output configuration:\n\u003chttps://communitysolidserver.github.io/configuration-generator/v5/?removeImports=%5B%22css%3Aconfig%2Fstorage%2F%22%5D\u003e\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcommunitysolidserver%2Fconfiguration-generator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcommunitysolidserver%2Fconfiguration-generator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcommunitysolidserver%2Fconfiguration-generator/lists"}