108 lines
4.0 KiB
Markdown
108 lines
4.0 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.0
|
|
Semantic type conversion and generic utilities.
|
|
- **API**: `To`, `Convert`, `As`, `ToMap`, `ToSlice`, `FillMap`, `FillSlice`, `ToJSON`, `FromJSON`, `UnmarshalJSON`, `ParseTime`, `FormatTime`, `Int`, `String`, `Bool`, `Duration`
|
|
|
|
### go/rand v1.3.0
|
|
High-concurrency random generation.
|
|
- **API**: `Int`, `FastInt`, `Float`, `Byte`, `Bytes`, `Perm`, `Shuffle`
|
|
|
|
### go/timer v1.3.0
|
|
Time stream control and retries.
|
|
- **API**: `Retry`, `Start`, `WithBackoff`, `WithMaxRetries`, `NewDebouncer`, `NewThrottler`, `NewTimeWheel`
|
|
|
|
### go/task v1.0.0
|
|
Task scheduling and lifecycle management.
|
|
- **API**: `Add`, `Start`, `Stop`, `Get`, `List`, `Remove`, `WithPolicy`, `WithTimeout`, `OnSuccess`, `OnError`
|
|
|
|
### go/safe v1.3.0
|
|
Memory protection and secure erasure.
|
|
- **API**: `NewSafeBuf`, `NewSafeString`, `LockMemory`, `UnlockMemory`, `DisableCoreDump`, `ZeroMemory`, `EncryptChaCha20`, `DecryptChaCha20`
|
|
|
|
### go/encoding v1.3.0
|
|
Standard and integer encoding.
|
|
- **API**: `Hex`, `Base64`, `UrlEncode`, `HtmlEscape`, `NewIntEncoder`, `EncodeInt`, `DecodeInt`, `HashInt`
|
|
|
|
### go/crypto v1.3.0
|
|
Mainstream and hybrid encryption.
|
|
- **API**: `NewAESGCM`, `NewRSA`, `NewECDSA`, `NewED25519`, `NewX25519`, `EncryptBytes`, `DecryptBytes`, `Sign`, `Verify`, `MD5`, `Sha256`, `HmacSha256`
|
|
|
|
### go/crypto-sm v1.3.0
|
|
National Cryptographic Standard (SM2/3/4).
|
|
- **API**: `NewSM2`, `Sm3`, `Sm3ToHex`, `NewSM4CBC`, `NewSM4GCM`, `Encrypt`, `Decrypt`
|
|
|
|
### go/id v1.3.0
|
|
Distributed and DB-optimized IDs.
|
|
- **API**: `NewIDMaker`, `Get8Bytes4KPerSecond`, `Get12BytesUltraPerSecond`, `GetForMysql`
|
|
|
|
### go/file v1.3.0
|
|
High-performance IO and memory files.
|
|
- **API**: `Exists`, `Read`, `Write`, `Copy`, `Move`, `Remove`, `Search`, `UnmarshalFile`, `MarshalFile`, `Archive`, `Compress`, `LoadFileToMemory`
|
|
|
|
### go/shell v1.3.0
|
|
Terminal styling and command execution.
|
|
- **API**: `Run`, `Pipeline`, `Style`, `Red`, `Green`, `Blue`, `Yellow`
|
|
|
|
### go/config v1.3.0
|
|
Configuration loading with env overrides.
|
|
- **API**: `Load`
|
|
|
|
### go/log v1.3.0
|
|
Meta-driven asynchronous logging.
|
|
- **API**: `Debug`, `Info`, `Warning`, `Error`, `New`, `SetLevel`, `Viewable`, `GetEntry`, `PutEntry`
|
|
|
|
### go/http v1.3.0
|
|
High-performance HTTP client.
|
|
- **API**: `NewClient`, `NewClientH2C`, `Get`, `Post`, `Put`, `Delete`, `Do`, `Result`, `Multipart`
|
|
|
|
### go/redis v1.3.0
|
|
Redis client with Pub/Sub.
|
|
- **API**: `GetRedis`, `NewRedis`, `Do`, `Subscribe`, `PUBLISH`, `NewIDMaker`
|
|
|
|
### go/db v1.3.0
|
|
Lean database abstraction.
|
|
- **API**: `GetDB`, `Sync`, `Insert`, `Update`, `Delete`, `Query`, `Exec`, `Begin`
|
|
|
|
### go/discover v1.3.0
|
|
Service discovery and load balancing.
|
|
- **API**: `Start`, `NewCaller`, `Get`, `Post`, `SetLoadBalancer`, `SetRoute`
|
|
|
|
### go/service v1.3.0
|
|
Core microservice framework.
|
|
- **API**: `Start`, `AsyncStart`, `Register`, `Restful`, `RegisterWebsocket`, `Static`, `Proxy`, `VerifyStruct`
|
|
|
|
### go/watch v1.3.0
|
|
AI-friendly file watching.
|
|
- **API**: `Start`, `EasyStart`, `Watcher`
|
|
|
|
### go/keys v1.3.0
|
|
Secret management and cross-language encryption tool.
|
|
- **API**: `GenerateKey`, `Encrypt`, `Decrypt`, `ExportGo`, `ExportJS`, `ExportPython`, `ExportJava`, `ExportPHP`
|
|
|
|
### go/starter v1.3.0
|
|
Service lifecycle and background management.
|
|
- **API**: `SetInfo`, `SetPidFile`, `SetLogFile`, `OnStart`, `OnStop`, `OnReload`, `Run`, `AddCmd`
|
|
|
|
### go/api v1.3.0
|
|
Third-party API orchestration engine.
|
|
- **API**: `Call[T]`, `Load`, `RegisterSigner`, `GetSigner`, `Action`
|