Low-latency, high-throughput backend engine for the Mangile platform.
mangile-backend is a scalable content serving and indexing service written in Go. Built with clean architecture and strict domain separation, it powers the backend capabilities of the Mangile ecosystem.
- High-Performance Pipeline: Leverages Go's native concurrent runtime and optimized
echostack for minimal overhead. - Strict Domain Isolation: Explicit segregation between distinct comic/media entities (e.g.,
Mangavs.LightNoveldomain models). - Modern Architecture: Standardized, layered modular structure adhering to Go best practices (
cmd/,internal/).
.
├── cmd/ # Application entry points (e.g., cmd/api/main.go)
└── internal/ # Private application and domain logic
├── handlers/ # Transport protocol handlers (HTTP/REST)
├── models/ # Core data models and schema definitions
├── queries/ # GROQ and GraphQL query files
└── services/ # Business logic implementations & external integrations
| Category | Technology |
|---|---|
| Language | Go (Golang 1.22+) |
| Communication | REST (HTTP/1.1 & HTTP/2 via echo framework) |
| CMS & Data Sources | Sanity CMS, AniList API, MyAnimeList (MAL) API |
-
Clone the repository:
git clone https://github.com/falsisdev/mangile-backend.git cd mangile-backend -
Configure environment variables:
Copy the example environment file and update it with your Sanity credentials:
cp .env.example ./.env
-
Run the server:
go run ./cmd/api
Execute tests across all packages:
go test -v -race ./...Distributed under the MIT License. See LICENSE for more information.