28e17a5b080c35e8f4dff4e079b0f10153d578d4
- refactor: replace inline AppError literals with model.New*Error constructors in service and handler layers - feat: PromoteStaged falls back to copy/delete when os.Rename returns EXDEV (cross-device link) - fix: upload error messages no longer leak internal multipart field names or parser implementation details - fix: upload size violations are converted to domain error ErrUploadTooLarge at the handler boundary - fix: download logs error and size mismatch when io.Copy fails or writes fewer bytes than expected - test: add tests for field name leak prevention, parser error sanitization, read errors after response start, and EXDEV fallback
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
Languages
Go
100%