cdlz / freedom

Freedom是一个基于六边形架构的框架,可以支撑充血的领域模型范式。

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Freedom DDD Framework

License Go Report Card Build Status GoDoc GitHub release

Freedom是一个基于六边形架构的框架,可以支撑充血的领域模型范式。

Overview

  • 集成 Iris
  • HTTP/H2C Server & Client
  • 集成普罗米修斯
  • AOP Worker & 无侵入 Context
  • 可扩展组件 Infrastructure
  • 依赖注入 & 依赖倒置 & 开闭原则
  • DDD & 六边形架构
  • 领域事件 & 消息队列组件
  • CQS & 聚合根
  • CRUD & PO Generate
  • 一级缓存 & 二级缓存 & 防击穿

安装

$ go get github.com/8treenet/freedom/freedom

脚手架创建项目

$ freedom new-project [project-name]

脚手架生成增删查改和持久化对象

# freedom new-po -h 查看更多
$ cd [project-name]

# 数据库数据源方式
$ freedom new-po --dsn "root:123123@tcp(127.0.0.1:3306)/freedom?charset=utf8"

# JSON 数据源方式
$ freedom new-po --json ./domain/po/schema.json

Example

基础教程

http2监听和依赖倒置

事务组件&自定义组件&Kafka&领域事件组件

一个完整的电商demo,包含CQS、聚合、实体、领域事件、资源库、基础设施

About

Freedom是一个基于六边形架构的框架,可以支撑充血的领域模型范式。

License:Apache License 2.0


Languages

Language:Go 100.0%