Skip to content

joaocarmo/goes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

goes

It goes! (go+es)

Development

# Build and start the containers
docker compose up -d --build

# Stop the containers
docker compose down

The app will be exposed on the port 3001.

ElasticSearch

The ElasticSearch Admin is available on port 8080 and the secret is goes.

API

Quotes

Check the alive status.

GET /go/health

Get a random movie / series quote from F4R4N's movie-quote.

GET /api/v1/quotes/random

CRUD for quotes.

GET /api/v1/quotes
POST /api/v1/quotes
GET /api/v1/quotes/{id}
PUT /api/v1/quotes/{id}
DELETE /api/v1/quotes/{id}

Payload signature.

{
  "quote": "Ask Yourself, Who Writes The Books? Who Chooses What We Remember And What Gets Forgotten",
  "role": "Ethelrida Smutney",
  "show": "Fargo S04",
  "contain_adult_lang": false
}

The full API Specification is available on localhost:3000/documentation/yaml.

Users & Groups

If required, the username and password for the admin user are:

username: admin
password: admin

Check the alive status.

GET /py/health

CRUD for users.

GET /api/v1/users/
POST /api/v1/users/
GET /api/v1/users/{id}/
PUT /api/v1/users/{id}/
DELETE /api/v1/users/{id}/

Payload signature.

{
  "url": "http://localhost:3001/api/v1/users/1/",
  "username": "admin",
  "email": "admin@example.com",
  "groups": []
}

CRUD for groups.

GET /api/v1/groups/
POST /api/v1/groups/
GET /api/v1/groups/{id}/
PUT /api/v1/groups/{id}/
DELETE /api/v1/groups/{id}/

Payload signature.

{
  "url": "http://localhost:3001/api/v1/groups/1/",
  "name": "pub"
}

The full API Specification is available on localhost:8000/documentation.

Tests

Basic unit tests are available as a starting point.

Frontend

# Run the frontend tests while the app is running
docker exec -it frontend yarn test

Backend

# Run the go tests while the app is running
docker exec -it backend-go go test -run="" ./pkg/...
# Run the Python tests while the app is running
docker exec -it backend-py python manage.py test