Skip to content
This repository has been archived by the owner on Oct 16, 2024. It is now read-only.

GraphQL schema

Nguyen Do edited this page Mar 17, 2023 · 5 revisions

This could be update in the future.

Current schema

"""
Naming type, for name in Publisher, Category, Title, etc.
"""
type Phrase {
  en_US: String
  vi_VN: String
}

"""
Publisher of entry/series
"""
type Publisher {
  id: String
  name: Phrase
  color: String
}

"""
Category
"""
type Category {
  id: String
  name: Phrase
}

"""
Status type
"""
type Status {
  WAITING_FOR_APPROVAL # user-submitted title
  LICENSED # was officially licensed, not out yet
  ON_GOING # on-going publication
  COMPLETED # completed publication
  HIATUS # on hiatus, waiting for new publication date
  CANCELLED # completely cancelled
}

"""
Statuses for `Title`, to compare between raw/local publication
"""
type LocalStatus {
  default: Status
  vn: Status
}

"""
Tag
"""
type Tag {
  id: String
  name: Phrase
}

"""
Publication date, ISO format? (2023-12-24 / yyyy-MM-dd)
"""
type PublishDate {
  default: Date
  ja: Date # might not be needed as tracking would be difficult
  vn: Date
}

"""
Title
"""
type Title {
  id: String!
  name: Phrase!
  description: Phrase
  category: Category
  status: LocalStatus
  tags: [Tag]
  thumbnail: String
  # this part down could be rework
  # cover should go with publish date as previous database, as per publish date stands for each volume,
  # and each volume should has its cover (sometimes with different cover per edition - e.g "Bản Đặc biệt"
  # cover might be different than normal or even "Bản Giới hạn")
  cover: String
  publishDate: PublishDate
}
Clone this wiki locally