Huxley 7fb125ea87 Implement web API foundation
Add application container, Gin router, graceful shutdown handler,
and version endpoint. This establishes the skeleton for the WebDisk
HTTP API as described in the architecture.

- Add internal/app/WebApp for runtime dependencies and version
- Add internal/server/router with GET /api/v1/version route
- Add graceful shutdown runner with signal handling in cmd/serve
- Add internal/api/ErrorResponse for standard HTTP error body
- Update roadmap, architecture, and decisions documentation
2026-04-27 23:06:06 +08:00
2026-04-27 23:06:06 +08:00
2026-04-27 23:06:06 +08:00
2026-04-27 23:06:06 +08:00
2026-04-27 23:06:06 +08:00
2026-04-27 23:06:06 +08:00

MyGO

MyGO is a WebDisk (cloud drive) server, written in Go.

Current status: pre-alpha — project skeleton with no core functionality implemented yet.


Roadmap

v0

  • CLI configuration management (mygo config)
  • User authentication (JWT)
  • File upload / download / management (HTTP API)
  • Admin endpoints
  • WebDAV support

Future

  • Image server
  • Pastebin & code snippet editing in sharing
  • S3 storage backend
  • Nextcloud-compatible API

CLI

mygo is the backend entrypoint with these subcommands:

Command Description
mygo serve Start the backend server
mygo config Manage instance configuration
mygo status Show server status

Frontend

The frontend uses React + TypeScript and communicates with the backend via HTTP API. Frontend source is maintained in a separate repository.


Development

See docs/development.md for build and test workflows. See AGENTS.md for behavioral conventions.

Description
MyGO: a webdisk written in Go. This is the server (backend) application.
Readme 138 KiB
Languages
Go 100%