Creating domains
Domains are a great way to group your documentation into logical units that can be represented in your organization.
EventCatalog Domains are inspired by the Domain-Driven Design approach.
In EventCatalog a domain is a logical unit that contains related services, entities and other resources.
What do domains look like in EventCatalog?​

Adding a new domain​
To add a new domain create a new folder within the /domains folder with an index.mdx file.
/domains/{Domain Name}/index.mdx- (example
/domains/Orders/index.mdx)
- (example
The index.mdx contents are split into two sections, frontmatter and the markdown content.
Here is an example of what a domain markdown file may look like.
---
# id of your domain, used for slugs and references in EventCatalog.
id: Orders
# Display name of the domain, rendered in EventCatalog
name: Orders
# Version of the domain
version: 0.0.1
# Short summary of your domain
summary: |
Domain that contains order related information
# Optional owners, references teams or users
owners:
- dboyne
# Optional services. Groups services into this domain.
services:
- id: PaymentService
version: 0.0.1
# Optional badges, rendered to UI by EventCatalog
badges:
- content: New domain
backgroundColor: blue
textColor: blue
---
## Overview
Domain that contains all services that are related to the orders domain within FakeCompany.
<NodeGraph />
That's it!
Once you add your domain it will appear in your catalog.
Adding content​
Your domain page will render the markdown content you add to the file. To add content to your domain page, add markdown to the file.
---
id: Orders
version: 0.0.1
name: Orders
---
## Overview
This is your domain markdown....
You can add anything here...
Including EventCatalog components
<NodeGraph />
Using components​
EventCatalog supports MDX under the hood. This gives you the ability to use components inside your domain page.
You can find a list of EventCatalog components you can use here: EventCatalog components.