Skip to content

MehguViewer/MehguViewer.Proto

Repository files navigation

MehguViewer Logo

MehguViewer Logo MehguViewer.Proto MehguViewer Logo

The Constitution of the MehguViewer Ecosystem.

Docs CI

MehguViewer.Proto contains the strict specifications, OpenAPI definitions, and architectural documentation that all MehguViewer implementations must adhere to. If it is not in this repo, it does not exist.


Quick Links

Resource Description
📘 Documentation The concepts, trust models, and logical flow.
🔒 Auth API Spec OIDC, Token exchange, and Global Preferences.
📚 Core API Spec Series data, Comment snapshots, and Asset delivery.

Primary Standards

Implementations of MehguViewer must respect the following standards defined in this repository:

1. Universal Resource Names (URNs)

We do not use raw integers or UUIDs. All IDs must follow the URN schema to facilitate Federation.

  • urn:mvn:user:{uuid}
  • urn:mvn:series:{uuid}
  • urn:mvn:asset:{hash}

2. Separation of Duty

  • Auth Server: Handles Identity. It never stores Manga or Comments.
  • Core Node: Handles Content. It never stores User Passwords or Emails.

3. RFC 7807 Error Handling

All APIs must return strictly typed Problem Details:

{
  "type": "urn:mvn:error:not-found",
  "title": "Series Not Found",
  "status": 404,
  "detail": "The series with ID urn:mvn:series:xyz does not exist on this node.",
  "instance": "/api/v1/series/xyz"
}

Development

This repository is built using Fumadocs.

# Install dependencies
pnpm install

# Start the dev server
pnpm dev

The OpenAPI specifications are located in:

  • ./openapi/auth/openapi.yaml
  • ./openapi/core/openapi.yaml

Any changes to YAML files are automatically validated against the schema on Push.


MehguViewer.Proto © 2025

About

MehguViewer.Proto contains the strict specifications, OpenAPI definitions, and architectural documentation that all MehguViewer implementations must adhere to. If it is not in this repo, it does not exist.

Resources

License

Stars

Watchers

Forks

Contributors