abe-framework
4
总安装量
4
周安装量
#52098
全站排名
安装命令
npx skills add https://github.com/otzgo/abe --skill abe-framework
Agent 安装分布
qoder
3
claude-code
2
mcpjam
1
kilo
1
windsurf
1
zencoder
1
Skill 文档
ABE Framework å¼åæå
æ¡æ¶æ¦è¿°
ABE (API Builder Engine) æ¯ä¸ä¸ªç°ä»£åç Go è¯è¨ HTTP RESTful API å¼åæ¡æ¶ï¼æ´åäºä¸»æµå¼æºç»ä»¶ï¼æä¾å¼ç®±å³ç¨çä¼ä¸çº§è§£å³æ¹æ¡ã
æ ¸å¿ç¹æ§
- 模ååæ¶æï¼åºäºä¾èµæ³¨å ¥å®ç°æ¾è¦å设计
- è·¯ç±åæ§å¶å¨ï¼æ ååçæ§å¶å¨æ¨¡å¼åè·¯ç±æ³¨åæºå¶
- ä¸é´ä»¶ç®¡çï¼çµæ´»çå ¨å±åè·¯ç±çº§ä¸é´ä»¶ç³»ç»
- å½é 忝æï¼å ç½®å¤è¯è¨ i18n æ¯æ
- æéæ§å¶ï¼éæ Casbin è®¿é®æ§å¶
- äºä»¶é©±å¨ï¼åºäº Watermill ç弿¥äºä»¶æ»çº¿
- åç¨æ± 管çï¼é«æçå¹¶åä»»å¡å¤ç
- æä»¶æºå¶ï¼å¯æ©å±çæä»¶ç³»ç»
å¿«éå¼å§
1. åå§å弿
package main
import "github.com/otzgo/abe"
func main() {
// åå»ºå¼æå®ä¾
engine := abe.NewEngine()
// é
ç½®åæ³¨åç»ä»¶
// ...
// å¯å¨æå¡
engine.Run(abe.WithBasePath("/api/v1"))
}
2. æ ¸å¿æ¦å¿µ
- Engineï¼åºç¨ä¸»å®¹å¨ï¼åè°ææç»ä»¶
- Controllerï¼ä¸å¡é»è¾æ§å¶å¨ï¼å®ç°æ å忥å£
- Middlewareï¼HTTP ä¸é´ä»¶ï¼å¤ç横åå ³æ³¨ç¹
- UseCaseï¼ä¸å¡ç¨ä¾æ¨¡å¼ï¼å°è£ å ·ä½ä¸å¡é»è¾
- Pluginï¼å¯æææ©å±æ¨¡å
å¼åæµç¨
å½ä½ éè¦å¼å ABE åºç¨æ¶ï¼è¯·æä»¥ä¸é¡ºåºæ¥é ç¸å ³ææ¡£ï¼
- å¼ææ ¸å¿åè½ – äºè§£ Engine å®ä¾å建åæå¡è·å
- æ§å¶å¨å¼å – å¦ä¹ æ ååæ§å¶å¨è®¾è®¡åè·¯ç±æ³¨å
- ä¸é´ä»¶ç³»ç» – ææ¡ä¸é´ä»¶å¼ååä½¿ç¨æå·§
- ä¾èµæ³¨å ¥ – ç解容å¨ç®¡çåä¾èµæ³¨å ¥æ¨¡å¼
- æä»¶æºå¶ – æ©å±æ¡æ¶åè½çæä»¶å¼å
æä½³å®è·µ
项ç®ç»æå»ºè®®
project/
âââ cmd/app/ # åºç¨å
¥å£
âââ internal/
â âââ controllers/ # æ§å¶å¨å±
â âââ usecases/ # ä¸å¡ç¨ä¾å±
â âââ dtos/ # æ°æ®ä¼ è¾å¯¹è±¡
â âââ models/ # æ°æ®æ¨¡å
âââ configs/ # é
ç½®æä»¶
âââ docs/ # ææ¡£
代ç ç»ç»åå
- æ§å¶å¨åªè´è´£è·¯ç±æ³¨åååæ°å¤ç
- ä¸å¡é»è¾æ¾å¨ UseCase ä¸
- ä¾èµéè¿æé 彿°æ³¨å ¥
- ä½¿ç¨æ ååçé误å¤çåååºæ ¼å¼
详ç»åèèµæ
请æ¥ç以ä¸åèææ¡£è·åæ´è¯¦ç»çä¿¡æ¯ï¼
æ ¸å¿åè½
- å¼ææ ¸å¿åè½è¯¦è§£ – Engine å®ä¾ç®¡çãæå¡è·åå¨ãçå½å¨æç®¡ç
- æ§å¶å¨å¼åæå – Controller æ¥å£å®ç°ãè·¯ç±æ³¨åãRESTful 设计
- ä¾èµæ³¨å ¥å®¹å¨ – å ¨å±å请æ±çº§ä¾èµæ³¨å ¥ãUseCase 模å¼
ç³»ç»éæ
- é 置管çç³»ç» – å¤å±é ç½®ãç¯å¢åéãå½ä»¤è¡åæ°
- æ°æ®åºéæ – GORM 使ç¨ã模åå®ä¹ãæ¥è¯¢ä¼å
- æ¥å¿ç³»ç»ä½¿ç¨ – ç»æåæ¥å¿ãä¸ä¸æç®¡çãæ§è½çæ§
åè½ç¹æ§
- ä¸é´ä»¶ç³»ç»ä½¿ç¨ – å ¨å±ä¸é´ä»¶ãè·¯ç±çº§ä¸é´ä»¶ãèªå®ä¹ä¸é´ä»¶å¼å
- CORS ä¸é´ä»¶é ç½® – è·¨åèµæºå ±äº«ãå®å ¨é ç½®ã常è§é®é¢
- 表åéªè¯ç³»ç» – æ°æ®éªè¯ãå¤è¯è¨æ¯æãèªå®ä¹è§å
- å¤è¯è¨å½é å – ç¿»è¯æä»¶ãè¯è¨åæ¢ã模æ¿ä½¿ç¨
å®å ¨ä¸è¿ç»´
- è®¿é®æ§å¶æºå¶ – JWT 认è¯ãCasbin æéãä¸é´ä»¶ä½¿ç¨
- äºä»¶é©±å¨ç³»ç» – æ¶æ¯åå¸è®¢é ã弿¥å¤çãäºä»¶æ»çº¿
- 宿¶ä»»å¡è°åº¦ – Cron 表达å¼ãä»»å¡ç®¡çãçæ§åè¦
- æä»¶æºå¶è¯¦è§£ – æä»¶æ¥å£ãçå½å¨æé©åãæä»¶å¼å示ä¾
åç¨ä¸æ§è½
- åç¨æ± ç®¡ç – æ§è½ä¼åãèµæºç®¡çãä»»å¡è°åº¦