Files
is-a-dev/docs/domains-json.md
T
2020-11-19 01:20:39 +05:30

89 lines
1.9 KiB
Markdown

# 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 `.json` file 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.
```json
{
"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.
```json
{
"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 how you want to link to your server/webpage.
Currently, only `CNAME`, `A`, `URL` record types are supported.
Here's a few different use cases for the given record types -
* **CNAME**
CNAME must be a host name (Eg - `something.tld`)
```json
{
"record": {
"CNAME": "username.github.io"
}
}
```
* **A record**
A record must be a list of ips
```json
{
"record": {
"A": [
"999.999.991.999",
"999.999.992.999",
"999.999.993.999",
"999.999.994.999"
]
}
}
```
* **URL redirection**
```json
{
"record": {
"URL": "https://my-other-website.com"
}
}
```