# Config as code options for Discourse?

**URL:** <https://meta.discourse.org/t/config-as-code-options-for-discourse/279036>\
**Category:** Feature\
**Tags:** migrations-tooling\
**Created:** [September 14, 2023, 5:05pm UTC](https://meta.discourse.org/t/config-as-code-options-for-discourse/279036 "2023-09-14T17:05:31Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![simon](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/simon/32/339122_2.png) [@simon](https://meta.discourse.org/u/simon)\
**Post date:** [September 14, 2023, 6:06pm UTC](https://meta.discourse.org/t/config-as-code-options-for-discourse/279036/2 "2023-09-14T18:06:16Z")

</div>

> [@jrack](#):
>
> Is there a pattern out there for maintaining an instance using some declarative format? Categories, tags, policies, etc.

I think the expectation is that sites will use the pre-seeded #Contribute > Site feedback category for this. Its description is: “Discussion about this site, its organization, how it works, and how we can improve it.”

> [@jrack](#):
>
> Was thinking it would be nice for our technical users to recommend changes via PR vs topic threads and manual fulfillment,

That’s an interesting idea. What benefit would it have over just having users suggest changes in regular topics? Is the goal to have a way of keeping track of changes that have been made to the site’s configuration over time?

Site settings, categories, tags, policies etc, can be configured with the Discourse API. It might be possible to have a script that managed your site’s configuration via the API in a git repo. The script could be run when a PR on the repo is accepted. From my point of view this would be more difficult than manually making changes to the site’s config via the UI though.

---

_[View the full topic](https://meta.discourse.org/t/config-as-code-options-for-discourse/279036)._
