2.2 KiB
Domains json file
The way you register your own domain name is through a pull request.
To register my-domain.is-a.dev, you need to create a domains/my-domain.json file
Filename
The file name must pass the following criteria -
- Must be alpha-numeric in lowercase with dashes as seperators
- Must be more than 2 characters long
- Must have a
.jsonfile extension
The file needs to have the following fields -
owner (required)
You need to specify some information about yourself here. This is so that you can be contacted if required.
In the owner object, the fields username and email are required. You can however add more information in this object if you need.
{
"owner": {
"username": "github-username",
"email": "any@email"
}
}
If you don't wish to share your email address here, please share your twitter or any other social media account.
{
"owner": {
"username": "github-username",
"email": "",
"twitter": "twitter-handle"
}
}
description
Describe your domain name and your usage. This is purely for documentation purpose and is optional.
repo
This is a link to your website repository or your github account. This is purely for documentation purpose and is optional.
record (required)
This is where you specify the DNS records you wish to use.
The supported record types are: CNAME, A, URL, MX and TXT
Here's a few different use cases for the given record types -
- CNAME
CNAME must be a host name (Eg -
something.tld). CNAME cannot be used in conjunction with any other record types.
{
"record": {
"CNAME": "username.github.io"
}
}
- A record A record must be a list of ips
{
"record": {
"A": [
"999.999.991.999",
"999.999.992.999",
"999.999.993.999",
"999.999.994.999"
]
}
}
- URL redirection
{
"record": {
"URL": "https://my-other-website.com"
}
}
- MX MX must be a list of host names
{
"record": {
"MX": [
"mx1.improvmx.com",
"mx2.improvmx.com"
]
}
}
- TXT TXT can be any string value
{
"record": {
"TXT": "hello world"
}
}