Sponge 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
Sponge 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
Sponge 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 MIT
开发语言 Google Go
操作系统 跨平台
软件类型 开源软件
所属分类 Web应用开发Web框架
开源组织
地区 国产
投 递 者 zb72609588
适用人群 未知
收录时间 2024-04-25

软件简介

sponge 是一个集成了 自动生成代码Gin和GRPC 的强大的开发框架。sponge拥有丰富的生成代码命令,生成不同的功能代码可以组合成完整的服务(类似人为打散的海绵细胞可以自动重组成一个新的海绵)。从生成代码、开发、测试、api文档到部署一站式项目开发,大幅提高了开发效率和降低了开发难度,实现"低代码方式"进行开发项目。

如果开发只有CRUD api的web或微服务,不需要编写任何go代码就可以编译并部署到linux服务器、docker、k8s上,只需要连接到数据库(mysql、mongodb、postgresql、tidb、sqlite)就可以一键自动生成完整的后端服务go代码。

如果开发通用的web或微服务,只需聚焦 在数据库定义表在proto文件定义api描述信息在生成的模板文件填写业务逻辑代码 三个核心部分,其他go代码都由sponge自动生成。

生成代码界面

 

 

 

 

 

 

 

 

特点

   
界面化操作 生成代码命令UI界面化,简单易用。
支持多种类型数据库 支持 MySQL、MongoDB、PostgreSQL、TiDB 和 SQLite 等主流数据库。
自动生成代码 根据数据库表或protobuf自动生成代码、合并代码,节省大量时间和精力。
丰富的服务类型 支持web服务、grpc服务、grpc+http混合服务、grpc网关服务开发。
丰富的组件 集成了常用的 gin 中间件和 grpc 拦截器,根据配置按需使用。
高可靠高性能 服务代码解耦模块化设计,代码经过严格的测试,自带缓存轻松应对高并发。
部署自动化 提供裸机、docker、kubernetes一站式自动化部署,快速将应用程序部署到生产环境。
团队协作 代码统一规范化,团队协作更高效。

优势

   
提升开发效率 自动生成代码、合并代码等特性显著提高了开发速度。
降低开发难度 低代码方式使开发人员无需编写大量代码即可快速创建应用程序。
缩短上线时间 部署自动化功能减少了部署时间,使应用程序更快地投入生产使用。
提高代码质量 自动生成的单元测试确保应用程序的高质量和可维护性。
降低开发成本 通过大幅提高效率和减少开发人员投入,降低了应用程序的总体开发成本。

使用场景

  • 高性能 Web 服务
  • 微服务

主要功能

sponge包含丰富的组件(按需使用):

目录结构

生成的服务代码目录结构遵循 project-layout,代码目录结构如下所示。支持的仓库类型有单体应用单体仓库(monolith)微服务多仓库(multi-repo)微服务单体仓库(mono-repo)

.
├── api            # proto文件和生成的*pb.go目录
├── assets         # 其他与资源库一起使用的资产(图片、logo等)目录
├── cmd            # 程序入口目录
├── configs        # 配置文件的目录
├── deployments    # IaaS、PaaS、系统和容器协调部署的配置和模板目录
├── docs           # 设计文档和界面文档目录
├── i(I)nternal       # 业务逻辑代码目录,如果首字母是小写(internal),表示私有代码,如果首字母大写(Internal)表示可以被其他代码复用。
│    ├── cache        # 基于业务包装的缓存目录
│    ├── config       # Go结构的配置文件目录
│    ├── dao          # 数据访问目录
│    ├── ecode        # 自定义业务错误代码目录
│    ├── handler      # http的业务功能实现目录
│    ├── model        # 数据库模型目录
│    ├── routers      # http路由目录
│    ├── rpcclient    # 连接grpc服务的客户端目录
│    ├── server       # 服务入口,包括http、grpc等
│    ├── service      # grpc的业务功能实现目录
│    └── types        # http的请求和响应类型目录
├── pkg            # 外部应用程序可以使用的库目录
├── scripts        # 用于执行各种构建、安装、分析等操作的脚本目录
├── test           # 额外的外部测试程序和测试数据
└── third_party    # 外部帮助程序、分叉代码和其他第三方工具
展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论

点击引领话题📣 发布并加入讨论🔥
暂无内容
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
暂无内容
0 评论
4 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部