A service to notify site owners of errors and typos. After integrating with the site, visitors are able to highlight an error or typo and report it to the administrator. The project works in Java.
Tasks can be discussed in the Telegram community.
Go to: https://hexlet.github.io/hexlet-correction/index.html
Highlight text and press Ctrl+Enter
Before you can build this project, you must install and configure the following dependencies on your machine:
- Java 21
- Docker, Docker Compose
To enable Yandex authorization, you need to register on Yandex ID OAuth and create your web application,
add ClientID and Client secret in your secret
YANDEX_CLIENT_ID=your_yadex_client_id_values
YANDEX_CLIENT_SECRET=your_yandex_client_secret_valuesFor registration or/and authorization account with GitHub:
- Create OAuth app https://docs.github.com/en/apps/oauth-apps/building-oauth-apps/creating-an-oauth-app.
- Get values the
Client IDandClient Secretand add to environment variables in any known way.
For example, you can create an .env file in the root of the project, where you can enter the names of variables
and their values as shown below:
GITHUB_CLIENT_ID=your_github_client_id_values
GITHUB_CLIENT_SECRET=your_github_client_secret_valuesA .env.example file has been created in the root of the project, which specifies the variables as they should be specified. For these variables, you need to specify the values you received.
You can copy this file and rename to .env, change and use.
### Packaging as uber-jar
To build the final jar:
```bash
make build
Install Vagrant and VM provider (Virtualbox).
Run commands:
make vagrant-build
make vagrant-runor just vagrant ssh, then cd /vagrant to run commands inside vm
To launch your application's tests, run:
make testFor example, to start a postgresql database in a docker container, run:
make docker-infra-startmake run-devmake run-dev-docker-db # make startmake clearFor creating new typo:
POST http://localhost:8080/api/workspaces/{workspaceId}/typos
Content-Type: application/json
Authorization: Basic base64(workspaceId:api-token)
Referer: (workspaceId:allowed-url)
{
"pageUrl": "https://mysite.com/page/with/typo",
"reporterName": "reporterName",
"reporterComment": "reporterComment",
"textBeforeTypo": "textBeforeTypo",
"textTypo": "textTypo",
"textAfterTypo": "textAfterTypo"
}
This repository is created and maintained by the team and the community of Hexlet, an educational project. Read more about Hexlet.
See most active contributors on hexlet-friends.
