145 lines
6.5 KiB
Markdown
145 lines
6.5 KiB
Markdown
[English](README.md) | [简体中文](README_zh-CN.md)
|
|
|
|
# @go Development Guide (INDEX)
|
|
|
|
## Design Philosophy & Principles
|
|
|
|
This project provides an ultra-lean, friction-free, secure, and high-performance Go development infrastructure.
|
|
|
|
- **Unity**: Standardized toolset to reduce cognitive load.
|
|
- **Ease of Use**: Simplified APIs for rapid development.
|
|
- **Reliability & Security**: Security-first approach in encryption and memory management.
|
|
- **Performance**: Optimized for execution efficiency.
|
|
- **Problem Solving**: Focuses on core friction points like type conversion and service discovery.
|
|
|
|
---
|
|
|
|
## Module Inventory & API Reference
|
|
|
|
Docs: https://apigo.cc/go/
|
|
|
|
### go/cast v1.3.3
|
|
Semantic type conversion and generic utilities.
|
|
- **API**: `To`, `Convert`, `As`, `ToMap`, `ToSlice`, `FillMap`, `FillSlice`, `ToJSON`, `FromJSON`, `UnmarshalJSON`, `ParseTime`, `FormatTime`, `Int`, `String`, `Bool`, `Duration`, `RealValue`, `GetLowerName`, `GetUpperName`, `FixUpperCase`
|
|
|
|
### go/rand v1.3.1
|
|
High-concurrency random generation.
|
|
- **API**: `Int`, `FastInt`, `Float`, `FastFloat`, `Byte`, `Bytes`, `Perm`, `Shuffle`
|
|
|
|
### go/timer v1.3.1
|
|
Time stream control and retries.
|
|
- **API**: `Retry`, `Start`, `WithBackoff`, `WithMaxRetries`, `NewDebouncer`, `NewThrottler`, `NewTimeWheel`, `RunTimeout`, `Tracker`
|
|
|
|
### go/task v1.3.2
|
|
Task scheduling and lifecycle management.
|
|
- **API**: `Add`, `Start`, `Stop`, `Get`, `List`, `Remove`, `Run`, `WithPolicy`, `WithTimeout`
|
|
|
|
### go/safe v1.3.1
|
|
Memory protection and secure erasure.
|
|
- **API**: `NewSafeBuf`, `NewSafeString`, `LockMemory`, `UnlockMemory`, `DisableCoreDump`, `ZeroMemory`, `EncryptChaCha20`, `DecryptChaCha20`, `MakeSafeToken`, `Concat`, `Base64`, `Hex`, `UrlEncode`
|
|
|
|
### go/encoding v1.3.1
|
|
Standard and integer encoding.
|
|
- **API**: `Hex`, `HexToString`, `Base64`, `Base64ToString`, `UrlBase64`, `UrlEncode`, `HtmlEscape`, `HtmlUnescape`, `Utf8Valid`, `NewIntEncoder`, `EncodeInt`, `AppendInt`, `DecodeInt`, `ExchangeInt`, `FillInt`, `HashInt`, `SortJoin`
|
|
|
|
### go/crypto v1.3.1
|
|
Mainstream and hybrid encryption.
|
|
- **API**: `NewAESGCM`, `NewRSA`, `NewECDSA`, `NewED25519`, `NewX25519`, `EncryptBytes`, `DecryptBytes`, `Sign`, `Verify`, `MD5`, `Sha1`, `Sha256`, `Sha512`, `HmacSha256`
|
|
|
|
### go/crypto-sm v1.3.1
|
|
National Cryptographic Standard (SM2/3/4).
|
|
- **API**: `NewSM2`, `Sm3`, `Sm3ToHex`, `Sm3ToBase64`, `Sm3ToUrlBase64`, `NewSM4CBC`, `NewSM4GCM`, `Encrypt`, `Decrypt`
|
|
|
|
### go/id v1.3.1
|
|
Distributed and DB-optimized IDs.
|
|
- **API**: `NewIDMaker`, `Get8Bytes4KPerSecond`, `Get9Bytes90KPerSecond`, `Get10Bytes14MPerSecond`, `Get11Bytes900MPerSecond`, `Get12BytesUltraPerSecond`, `GetForMysql`
|
|
|
|
### go/file v1.3.2
|
|
High-performance IO and memory files.
|
|
- **API**: `Exists`, `EnsureParentDir`, `Read`, `ReadBytes`, `Write`, `WriteBytes`, `Copy`, `Move`, `Remove`, `Mkdir`, `Search`, `UnmarshalFile`, `MarshalFile`, `PatchFile`, `Archive`, `Compress`, `LoadFileToMemory`
|
|
|
|
|
|
### go/shell v1.3.1
|
|
Terminal styling and command execution.
|
|
- **API**: `Run`, `RunCommand`, `InteractiveRun`, `Pipeline`, `PipelineCommands`, `Style`, `StripANSI`, `Red`, `Green`, `Blue`, `Yellow`
|
|
|
|
### go/config v1.3.1
|
|
Configuration loading with env overrides.
|
|
- **API**: `Load`, `To`
|
|
|
|
### go/log v1.3.4
|
|
Meta-driven asynchronous logging.
|
|
- **API**: `Debug`, `Info`, `Warning`, `Error`, `As`, `New`, `SetDefaultName`, `Viewable`, `GetEntry`, `PutEntry`
|
|
|
|
### go/http v1.3.2
|
|
High-performance HTTP client.
|
|
- **API**: `NewClient`, `NewClientH2C`, `Get`, `Post`, `Put`, `Delete`, `Do`, `Result`, `To`, `Multipart`
|
|
|
|
### go/redis v1.3.2
|
|
Redis client with Pub/Sub.
|
|
- **API**: `GetRedis`, `NewRedis`, `Do`, `Subscribe`, `PUBLISH`, `NewIDMaker`
|
|
|
|
### go/db v1.3.4
|
|
Convention-over-configuration ORM with shadow-delete, auto-versioning, and FTS.
|
|
- **API**: `GetDB`, `Sync`, `To`, `ToSlice`, `Insert`, `Replace`, `Update`, `Delete`, `Query`, `Exec`, `Begin`
|
|
|
|
### go/discover v1.3.2
|
|
Service discovery and load balancing.
|
|
- **API**: `New`, `Start`, `Open`, `NewCaller`, `Get`, `Post`, `SetLoadBalancer`, `SetRoute`
|
|
|
|
### go/service v1.3.4
|
|
Core microservice framework.
|
|
- **API**: `Start`, `AsyncStart`, `Host`, `Register`, `Restful`, `RegisterWebsocket`, `Static`, `Proxy`, `VerifyStruct`, `GetInjectT`
|
|
|
|
### go/watch v1.3.2
|
|
AI-friendly file watching.
|
|
- **API**: `Start`, `EasyStart`, `Watcher`
|
|
|
|
### go/keys v1.3.2
|
|
Secret management and cross-language encryption tool.
|
|
- **CLI Commands**: `keys keystore list/create/export`, `keys password list/create/encrypt/decrypt`
|
|
|
|
### go/starter v1.0.5
|
|
Service lifecycle and background management.
|
|
- **API**: `Register`, `Run`, `SetAppInfo`, `SetInfo`, `SetUsage`, `AddCmd`, `AddCommand`
|
|
|
|
### go/sandbox v1.0.6
|
|
Cross-platform isolation and runtime environment manager.
|
|
- **API**: `Start`, `Restore`, `Query`, `Fetch`, `SetRoot`, `NewService`, `DefaultService`, `Sandbox.Status`, `Sandbox.Wait`, `Sandbox.Kill`, `Sandbox.Cleanup`
|
|
|
|
### go/api v1.3.2
|
|
Third-party API orchestration engine.
|
|
- **API**: `Call[T]`, `Load`, `RegisterSigner`, `GetSigner`, `Action`
|
|
|
|
### go/mail v1.0.3
|
|
Lean and high-performance email client.
|
|
- **API**: `Send`, `MustSend`, `Recv`, `MustRecv`, `New`, `MustNew`, `NewWithConfig`, `GetMailbox`, `ParseAddr`, `FormatAddr`
|
|
|
|
### go/document v1.0.8
|
|
Lean and high-performance Office bridge, supporting Excel/Word/PPT/PDF/Graph/CSV/MD to JSON/Markdown conversion.
|
|
- **API**: `Open`, `Create`, `Save`, `ToJSON`, `ToMarkdown`
|
|
|
|
### go/vision v1.0.8
|
|
High-performance image processing, QR/Barcode, FFmpeg video orchestration, and transformations.
|
|
- **API**: `Load`, `Save`, `Convert`, `New`, `ParseColor`, `RandColor`, `Capture`, `Recognize`, `NewAnimation`
|
|
|
|
### go/knowbase v1.0.5
|
|
AI Knowledge Base engine with hybrid search and identity-driven APIs.
|
|
- **API**: `Auth`, `App.Doc`, `App.Table`, `App.Search`, `App.Query`, `Table.List`, `Table.Set`, `Table.Fields`, `DocStore.Get`, `DocStore.Set`, `DocStore.GetSections`
|
|
|
|
### go/indexDB v1.1.2
|
|
Unified hybrid search engine supporting Fulltext + Vector with RRF.
|
|
- **API**: `GetDB`, `Auth`, `Add`, `Remove`, `Search`, `ScanDocuments`
|
|
|
|
### go/gateway v2.0.1
|
|
High-performance, event-driven dynamic API gateway.
|
|
- **API**: `NewGatewayApp`, `GatewayApp.Start`, `GatewayApp.Stop`, `GatewayApp.Reload`, `GatewayApp.Status`
|
|
|
|
### go/docDB v1.0.10
|
|
Standalone document storage engine with version control and event hooks.
|
|
- **API**: `GetDB`, `Auth`, `SetDoc`, `SetMeta`, `Move`, `Get`, `GetByVersion`, `Remove`, `ExtractToC`
|
|
|
|
### go/tableDB v1.1.9
|
|
Higher-level DB abstraction for dynamic schemas, auth isolation, and lifecycle hooks.
|
|
- **API**: `GetDB`, `Auth`, `Tables`, `SetTable`, `Table`, `Set`, `Get`, `List`, `Query`, `Count`, `Remove`
|