ghibli

package
v0.0.0-...-7c6bc89 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 20, 2021 License: MIT Imports: 0 Imported by: 0

README

Studio Ghibli Api backend

Реализация бэкенда для Studio Ghibli API (v1.0.1) на микросервисной архитектуре.

Реализация фронтэнда взята здесь:

https://github.com/taniarascia/sandbox/tree/master/ghibli (лицензия не указана)

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Film

type Film struct {
	Id                string `json:"id"`
	Title             string `json:"title"`
	Description       string `json:"description"`
	Director          string `json:"director"`
	Producer          string `json:"producer"`
	ReleaseDate       string `json:"release_date"`
	RottenTomatoScore string `json:"rt_score"`
}

Film - all of the Studio Ghibli films.

type FilmStorage

type FilmStorage interface {
	GetFilm(id string) (*Film, error) // Returns a film based on a single ID
	GetFilms() ([]*Film, error)       // Returns information about all of the Studio Ghibli films.
}

type Location

type Location struct {
	Id           string   `json:"id"`
	Name         string   `json:"name"`
	Climate      string   `json:"climate"`
	Terrain      string   `json:"terrain"`
	SurfaceWater string   `json:"surface_water"`
	Residents    []string `json:"residents"`
	Films        []string `json:"films"`
	Url          []string `json:"url"`
}

Location includes lands, countries, and places.

type LocationStorage

type LocationStorage interface {
	GetLocation(id string) (*Location, error)
	GetLocations() ([]*Location, error)
}

type Person

type Person struct {
	Id        string   `json:"id"`
	Name      string   `json:"name"`
	Gender    string   `json:"gender"`
	Age       string   `json:"age"`
	EyeColor  string   `json:"eye_color"`
	HairColor string   `json:"hair_color"`
	Films     []string `json:"films"`
	Species   string   `json:"species"`
	Url       string   `json:"url"`
}

Person includes all Ghibli characters, human and non-.

type PersonStorage

type PersonStorage interface {
	GetPerson(id string) (*Person, error)
	GetPeople() ([]*Person, error)
}

type Species

type Species struct {
	Id             string   `json:"id"`
	Name           string   `json:"name"`
	Classification string   `json:"classification"`
	EyeColors      string   `json:"eye_colors"`
	HairColors     string   `json:"hair_colors"`
	Url            string   `json:"url"`
	People         []string `json:"people"`
	Films          []string `json:"films"`
}

Species includes humans, animals, and spirits et al.

type SpeciesStorage

type SpeciesStorage interface {
	GetSpecies(id string) (*Species, error)
	GetAllSpecies() ([]*Species, error)
}

type Vehicle

type Vehicle struct {
	Id           string `json:"id"`
	Name         string `json:"name"`
	Description  string `json:"description"`
	VehicleClass string `json:"vehicle_class"`
	Length       string `json:"length"`
	Pilot        string `json:"pilot"`
	Films        string `json:"films"`
	Url          string `json:"url"`
}

Vehicle includes cars, ships, and planes.

type VehicleStorage

type VehicleStorage interface {
	GetVehicle(id string) (*Vehicle, error)
	GetVehicles() ([]*Vehicle, error)
}

Directories

Path Synopsis
cmd
components

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL