mirror of
https://github.com/maelgangloff/domain-watchdog.git
synced 2025-12-17 17:55:42 +00:00
docs: update README.md
This commit is contained in:
parent
5bf2c2d9cb
commit
7d8436f138
121
INSTALL.md
121
INSTALL.md
@ -1,121 +0,0 @@
|
||||
# Installation and Update
|
||||
|
||||
## Installation
|
||||
|
||||
To deploy a Domain Watchdog instance, please refer to the Symfony documentation
|
||||
on [How to deploy a Symfony application](https://symfony.com/doc/current/deployment.html).
|
||||
|
||||
### Prerequisites
|
||||
|
||||
- PHP 8.4 or higher
|
||||
- PostgreSQL 16 or higher
|
||||
|
||||
In order to retrieve information about domain names, Domain Watchdog will query the RDAP server responsible for the TLD.
|
||||
It is crucial that the Domain Watchdog instance is placed in a clean environment from which these servers can be
|
||||
queried.
|
||||
In particular, the DNS servers and root certificates of the system must be trusted.
|
||||
|
||||
### Steps
|
||||
|
||||
Clone the repository:
|
||||
|
||||
```shell
|
||||
git clone https://github.com/maelgangloff/domain-watchdog.git
|
||||
```
|
||||
|
||||
#### Backend
|
||||
|
||||
1. Install dependencies:
|
||||
```shell
|
||||
composer install
|
||||
```
|
||||
2. Set up your environment variables:
|
||||
```shell
|
||||
cp .env .env.local
|
||||
```
|
||||
3. Generate the cryptographic key pair for the JWT signature
|
||||
```shell
|
||||
php bin/console lexik:jwt:generate-keypair
|
||||
```
|
||||
4. Run database migrations:
|
||||
```shell
|
||||
php bin/console doctrine:migrations:migrate
|
||||
```
|
||||
5. Start the Symfony server:
|
||||
```shell
|
||||
symfony server:start
|
||||
```
|
||||
6. Build assets:
|
||||
```shell
|
||||
php bin/console assets:install
|
||||
```
|
||||
7. Don't forget to set up workers to process the [message queue](https://symfony.com/doc/current/messenger.html)
|
||||
|
||||
#### Frontend
|
||||
|
||||
1. Install dependencies:
|
||||
```shell
|
||||
yarn install
|
||||
```
|
||||
2. Generate language files:
|
||||
```shell
|
||||
yarn run ttag:po2json
|
||||
```
|
||||
3. Make the final build:
|
||||
```shell
|
||||
yarn build
|
||||
```
|
||||
4. Add and modify the following files as you wish:
|
||||
~~~
|
||||
public/content/home.md
|
||||
public/content/privacy.md
|
||||
public/content/tos.md
|
||||
public/content/faq.md
|
||||
public/images/icons-512.png
|
||||
public/images/banner.png
|
||||
public/favicon.ico
|
||||
~~~
|
||||
|
||||
## Update
|
||||
|
||||
**Any updates are your responsibility. Make a backup of the data if necessary.**
|
||||
|
||||
Fetch updates from the remote repository:
|
||||
|
||||
```shell
|
||||
git pull origin master
|
||||
```
|
||||
|
||||
### Backend
|
||||
|
||||
1. Install dependencies:
|
||||
```shell
|
||||
composer install
|
||||
```
|
||||
2. Run database migrations:
|
||||
```shell
|
||||
php bin/console doctrine:migrations:migrate
|
||||
```
|
||||
3. Clearing the Symfony cache:
|
||||
```shell
|
||||
php bin/console cache:clear
|
||||
```
|
||||
4. Build assets:
|
||||
```shell
|
||||
php bin/console assets:install
|
||||
```
|
||||
|
||||
### Frontend
|
||||
|
||||
1. Install dependencies:
|
||||
```shell
|
||||
yarn install
|
||||
```
|
||||
2. Generate language files:
|
||||
```shell
|
||||
yarn run ttag:po2json
|
||||
```
|
||||
3. Make the final build:
|
||||
```shell
|
||||
yarn build
|
||||
```
|
||||
77
README.md
77
README.md
@ -3,7 +3,8 @@
|
||||
<p align="center">Your companion in the quest for domain names 🔍 <br/><a href="https://domainwatchdog.eu">domainwatchdog.eu »</a></p>
|
||||
<br/>
|
||||
|
||||
Domain Watchdog is an app that uses RDAP to collect publicly available info about domains, track their history, and purchase them.
|
||||
Domain Watchdog is an app that uses RDAP to collect publicly available info about domains, track their history, and
|
||||
purchase them.
|
||||
For more information please check out [the documentation](https://domainwatchdog.eu) !
|
||||
|
||||
## Why use it?
|
||||
@ -20,7 +21,7 @@ detailed history of events (ownership changes, renewals, etc.) is not feasible w
|
||||
## Install
|
||||
|
||||
> [!TIP]
|
||||
> For more details on the installation procedure, please refer to the documentation.
|
||||
> For more details on the installation procedure, please refer to [the documentation](https://domainwatchdog.eu).
|
||||
|
||||
### Docker Deployment
|
||||
|
||||
@ -42,55 +43,20 @@ docker compose up
|
||||
|
||||
By default, the container listens on http://localhost:8080, but you can configure this in environment variables.
|
||||
|
||||
## Features
|
||||
## Development and contributions
|
||||
|
||||
### Auto-purchase domain
|
||||
See [the documentation](https://domainwatchdog.eu) for information on setting up a development environment and making
|
||||
your contributions.
|
||||
To add a new provider, a [dedicated page](https://domainwatchdog.eu/en/developing/add-provider/) is available.
|
||||
|
||||
A connector is a way to order a domain name. It is important to mention that this project does not act as a payment
|
||||
intermediary.
|
||||
Indeed, the user's credentials are directly used to enable the purchase via the provider's API. To this end, the user
|
||||
gives his consent to define the legal framework in which the use of his account with the provider's API will be made.
|
||||
## Security
|
||||
|
||||
The table below lists the supported API connector providers:
|
||||
Please see [SECURITY.md](./SECURITY.md).
|
||||
|
||||
| Provider | Supported |
|
||||
|:--------------------------------------------------------------------------:|:----------------:|
|
||||
| [OVH](https://api.ovh.com) | **Yes** |
|
||||
| [GANDI](https://api.gandi.net/docs/domains/) | **Yes** |
|
||||
| [NAMECHEAP](https://www.namecheap.com/support/api/methods/domains/create/) | **Yes** |
|
||||
| [AUTODNS](https://cloud.autodns.com/) | **Yes** |
|
||||
| [NAME.COM](https://www.name.com/en-en/api-docs/) | **Yes** |
|
||||
| Custom EPP Server | **EXPERIMENTAL** |
|
||||
## License
|
||||
|
||||
If a domain has expired and a connector is linked to the Watchlist, then Domain Watchdog will try to order it via the
|
||||
connector provider's API.
|
||||
|
||||
Note: If the same domain name is present on several Watchlists, it is not possible to predict in advance which user will
|
||||
win the domain name. The choice is left to chance.
|
||||
|
||||
### Monitoring
|
||||
|
||||

|
||||
|
||||
|
||||
A watchlist is a list of domain names, triggers and possibly an API connector.
|
||||
|
||||
They allow you to follow the life of the listed domain names and send you a notification when a change has been
|
||||
detected.
|
||||
|
||||
A notification to the user is sent when a new event occurs on one of the domain names in the Watchlist. This can be an
|
||||
email or a chat via Webhook (Slack, Mattermost, Discord, ...). An iCalendar export of domain events is possible.
|
||||
|
||||
### RDAP search
|
||||
|
||||
The latest version of the WHOIS protocol was standardized in 2004 by RFC 3912.[^1] This protocol allows anyone to
|
||||
retrieve key information concerning a domain name, an IP address, or an entity registered with a registry.
|
||||
|
||||
ICANN launched a global vote in 2023 to propose replacing the WHOIS protocol with RDAP. As a result, registries and
|
||||
registrars will no longer be required to support WHOIS from 2025 (*WHOIS Sunset Date*).[^2]
|
||||
|
||||
Domain Watchdog uses the RDAP protocol, which will soon be the new standard for retrieving information concerning domain
|
||||
names.
|
||||
This source code of this project is licensed under *GNU Affero General Public License v3.0 or later*.
|
||||
Contributions are welcome as long as they do not contravene the Code of Conduct.
|
||||
|
||||
## Disclaimer
|
||||
|
||||
@ -100,20 +66,5 @@ names.
|
||||
caching system, etc.
|
||||
> * Please note that this project is NOT affiliated IN ANY WAY with the API Providers used to order domain names.
|
||||
> * The project installers are responsible for the use of their own instance.
|
||||
> * Under no circumstances will the owner of this project be held responsible for other cases over which he has no control.
|
||||
|
||||
## Useful documentation
|
||||
|
||||
> [!NOTE]
|
||||
> - [RFC 7482 : Registration Data Access Protocol (RDAP) Query Format](https://datatracker.ietf.org/doc/html/rfc7482)
|
||||
> - [RFC 7483 : JSON Responses for the Registration Data Access Protocol (RDAP)](https://datatracker.ietf.org/doc/html/rfc7483)
|
||||
> - [RFC 7484 : Finding the Authoritative Registration Data (RDAP) Service](https://datatracker.ietf.org/doc/html/rfc7484)
|
||||
|
||||
## Licensing
|
||||
|
||||
This source code of this project is licensed under *GNU Affero General Public License v3.0 or later*.
|
||||
Contributions are welcome as long as they do not contravene the Code of Conduct.
|
||||
|
||||
[^1]: RFC 3912 : WHOIS Protocol Specification. (2004). IETF Datatracker. https://datatracker.ietf.org/doc/html/rfc3912
|
||||
[^2]: 2023 Global Amendments to the Base gTLD Registry Agreement (RA), Specification 13, and 2013 Registrar
|
||||
Accreditation Agreement (RAA) - ICANN. (2023). https://www.icann.org/resources/pages/global-amendment-2023-en
|
||||
> * Under no circumstances will the owner of this project be held responsible for other cases over which he has no
|
||||
control.
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user