{"id":23252228,"url":"https://github.com/go-dev-frame/sponge","last_synced_at":"2025-05-14T12:09:41.472Z","repository":{"id":60510991,"uuid":"538564726","full_name":"go-dev-frame/sponge","owner":"go-dev-frame","description":"A powerful Go development framework for developing RESTful APIs, gRPC, and microservices projects in a \"low-code\" manner.","archived":false,"fork":false,"pushed_at":"2025-03-02T13:09:43.000Z","size":17879,"stargazers_count":1715,"open_issues_count":26,"forks_count":174,"subscribers_count":18,"default_branch":"main","last_synced_at":"2025-04-04T08:43:06.791Z","etag":null,"topics":["cloud-native","code-generation","custom-templates","developer-tools","gin","go-sponge","golang","grpc","grpc-gateway","low-code","microservice","restful-api","sponge","web"],"latest_commit_sha":null,"homepage":"https://go-sponge.com","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/go-dev-frame.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-09-19T15:18:07.000Z","updated_at":"2025-04-02T02:41:00.000Z","dependencies_parsed_at":"2023-09-26T17:32:27.485Z","dependency_job_id":"27572ac7-9c03-4119-a3f0-de390b00d87c","html_url":"https://github.com/go-dev-frame/sponge","commit_stats":{"total_commits":439,"total_committers":6,"mean_commits":73.16666666666667,"dds":"0.018223234624145768","last_synced_commit":"090586915adf3059dabff2ec644e1e6525f9c1e4"},"previous_names":["go-dev-frame/sponge","zhufuyi/sponge"],"tags_count":63,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/go-dev-frame%2Fsponge","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/go-dev-frame%2Fsponge/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/go-dev-frame%2Fsponge/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/go-dev-frame%2Fsponge/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/go-dev-frame","download_url":"https://codeload.github.com/go-dev-frame/sponge/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248420050,"owners_count":21100300,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cloud-native","code-generation","custom-templates","developer-tools","gin","go-sponge","golang","grpc","grpc-gateway","low-code","microservice","restful-api","sponge","web"],"created_at":"2024-12-19T10:13:30.304Z","updated_at":"2025-05-14T12:09:41.454Z","avatar_url":"https://github.com/go-dev-frame.png","language":"Go","readme":"## English | [简体中文](assets/readme-cn.md)\n\n\u003cp align=\"center\"\u003e\n\u003cimg width=\"500px\" src=\"https://raw.githubusercontent.com/go-dev-frame/sponge/main/assets/logo.png\"\u003e\n\u003c/p\u003e\n\n\u003cdiv align=center\u003e\n\n[![Go Report](https://goreportcard.com/badge/github.com/go-dev-frame/sponge)](https://goreportcard.com/report/github.com/go-dev-frame/sponge)\n[![codecov](https://codecov.io/gh/go-dev-frame/sponge/branch/main/graph/badge.svg)](https://codecov.io/gh/go-dev-frame/sponge)\n[![Go Reference](https://pkg.go.dev/badge/github.com/go-dev-frame/sponge.svg)](https://pkg.go.dev/github.com/go-dev-frame/sponge)\n[![Go](https://github.com/go-dev-frame/sponge/workflows/Go/badge.svg)](https://github.com/go-dev-frame/sponge/actions)\n[![Awesome Go](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/avelino/awesome-go)\n[![License: MIT](https://img.shields.io/github/license/go-dev-frame/sponge)](https://img.shields.io/github/license/go-dev-frame/sponge)\n\n\u003c/div\u003e\n\n**Sponge** is a powerful `Go` development framework. Its core concept is to generate modular code by parsing `SQL`, `Protobuf`, or `JSON` files in reverse, these modular codes can be flexibly combined into various types of complete backend services (`similar to the characteristics of sponge cells, where disassembled sponge cells can automatically recombine into a new sponge`).\n\nSponge offers outstanding project engineering capabilities, providing an all-in-one project development solution that covers code generation, development, testing, API documentation generation, and deployment. Sponge deeply integrates a modular architecture with an AI assistant to significantly enhance development efficiency and reduce technical barriers, empowering developers to easily build stable and reliable backend systems using a \"low-code\" approach.\n\n\u003cbr\u003e\n\n### Applicable Scenarios\n\nSponge is suitable for rapidly building various types of high-performance backend services, including but not limited to:\n\n- `RESTful API` services\n- `Web` services (Gin-based)\n- `gRPC` services\n- `HTTP+gRPC` hybrid services\n- `gRPC Gateway API` services\n- `cloud-native` microservices\n\nAdditionally, developers can use custom templates to generate various types of code to meet specific business needs.\n\n\u003cbr\u003e\n\n### Core Advantages\n\n1. **One-click generation of complete backend service code**  \n   For `Web` or `gRPC` services that only require `CRUD APIs`, no `Go` code needs to be written. Simply connect to a database (e.g., `MySQL`, `MongoDB`, `PostgreSQL`, `SQLite`) to one-click generate complete backend service code and easily deploy it to Linux servers, Docker, or Kubernetes.\n\n2. **Efficient development of general-purpose services**  \n   When developing general-purpose `Web`, `gRPC`, `HTTP+gRPC`, or `gRPC Gateway` services, you only need to focus on three aspects:\n    - Defining database tables;\n    - Defining API descriptions in Protobuf files;\n    - In the generated templates, use built-in AI assistants or manually write business logic code.\n\n   The framework code and CRUD API code are all automatically generated by sponge.\n\n3. **Support for custom templates, offering flexible extensibility**  \n   Sponge supports generating various types of project-specific code using custom templates, not limited to the `Go` language. For example:\n    - Backend code;\n    - Frontend code;\n    - Configuration files;\n    - Test code;\n    - Build and deployment scripts, etc.\n\n4. **Generate code on the page, simple and easy to use**  \n   Sponge provides code generation on the page, avoiding complex command-line operations, simply filling in parameters on the page to generate code with one click.\n\n5. **Sponge collaborate with the AI assistants for a closed-loop development process**  \n   Sponge deeply integrates with built-in AI assistants (DeepSeek, ChatGPT, Gemini) to form a complete and highly efficient development solution:\n   - **Sponge**: Handles infrastructure code generation (service framework, CRUD API interfaces, and custom API interfaces code without business logic implementation).\n   - **AI assistant**: Focuses on business logic implementation (table structure DDL design, custom API interface definition, and business logic implementation code).\n\n\u003cbr\u003e\n\n### Quick Start\n\n1. **Install sponge**\n\n   Sponge supports installation on Windows, macOS, and Linux. Click to view the [**sponge installation guide**](https://github.com/go-dev-frame/sponge/blob/main/assets/install-en.md).\n\n2. **Open the code generation UI**\n\n   After installation, run the following command to open the sponge UI:\n\n   ```bash\n   sponge run\n   ```  \n\n   Access `http://localhost:24631` in a local browser to generate code through the UI interface, as shown below:\n\n   \u003cp align=\"center\"\u003e\n   \u003cimg width=\"1500px\" src=\"https://raw.githubusercontent.com/go-dev-frame/sponge/main/assets/en_sponge-ui.png\"\u003e\n   \u003c/p\u003e\n\n   \u003e To access from a browser on a different host, specify the host IP or domain when starting the UI, e.g., `sponge run -a http://your_host_ip:24631`. Alternatively, you can run the UI service in Docker to support cross-host access. Click to view the guide on [running the sponge UI service in Docker](https://github.com/go-dev-frame/sponge/blob/main/assets/install-en.md#Docker%E7%8E%AF%E5%A2%83).\n\n\u003cbr\u003e\n\n### Main Features\n\nSponge has built-in rich components (for on-demand use):\n\n| Components | Examples |\n| :--- | :-------- |\n| Web framework [gin](https://github.com/gin-gonic/gin) | [gin example](https://github.com/go-dev-frame/sponge/blob/main/internal/routers/routers.go#L35)\u003cbr\u003e[gin middleware examples](https://github.com/go-dev-frame/sponge/blob/main/pkg/gin/middleware/README.md) |\n| RPC framework [gRPC](https://github.com/grpc/grpc-go) | [gRPC example](https://github.com/go-dev-frame/sponge/blob/main/internal/server/grpc.go#L312)\u003cbr\u003e[gRPC interceptor examples](https://github.com/go-dev-frame/sponge/blob/main/pkg/grpc/interceptor/README.md) |\n| Configuration parsing [viper](https://github.com/spf13/viper) | [example](https://github.com/go-dev-frame/sponge/blob/main/pkg/conf/README.md#example-of-use) |\n| Logging [zap](https://github.com/uber-go/zap) | [example](https://github.com/go-dev-frame/sponge/blob/main/pkg/logger/README.md#example-of-use) |\n| ORM [gorm](https://github.com/go-gorm/gorm), [mongo-go-driver](https://github.com/mongodb/mongo-go-driver) | [gorm example](https://github.com/go-dev-frame/sponge/blob/main/pkg/sgorm/README.md#examples-of-use)\u003cbr\u003e[mongodb example](https://github.com/go-dev-frame/sponge/blob/main/pkg/mgo/README.md#example-of-use) |\n| Cache [go-redis](https://github.com/go-redis/redis), [ristretto](https://github.com/dgraph-io/ristretto) | [go-redis example](https://github.com/go-dev-frame/sponge/blob/main/pkg/goredis/README.md#example-of-use)\u003cbr\u003e[ristretto example](https://github.com/go-dev-frame/sponge/blob/main/pkg/cache/memory.go#L25) |\n| Automated API documentation [swagger](https://github.com/swaggo/swag), [protoc-gen-openapiv2](https://github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2) | - |\n| Authentication [jwt](https://github.com/golang-jwt/jwt) | [jwt example](https://github.com/go-dev-frame/sponge/blob/main/pkg/jwt/README.md#example-of-use)\u003cbr\u003e[gin example](https://github.com/go-dev-frame/sponge/blob/main/pkg/gin/middleware/README.md#jwt-authorization-middleware)\u003cbr\u003e[gRPC example](https://github.com/go-dev-frame/sponge/blob/main/pkg/grpc/interceptor/README.md#jwt-authentication-interceptor) |\n| Parameter [validator](https://github.com/go-playground/validator), [protoc-gen-validate](https://github.com/bufbuild/protoc-gen-validate) | [validator example](https://github.com/go-dev-frame/sponge/blob/main/internal/types/userExample_types.go#L17)\u003cbr\u003e[protoc-gen-validate example](https://github.com/go-dev-frame/sponge/blob/main/api/serverNameExample/v1/userExample.proto#L156) |\n| Websocket [gorilla/websocket](https://github.com/gorilla/websocket) | [example](https://github.com/go-dev-frame/sponge/blob/main/pkg/ws/README.md#example-of-use) |\n| Crontab [cron](https://github.com/robfig/cron) | [example](https://github.com/go-dev-frame/sponge/blob/main/pkg/gocron/README.md#example-of-use) |\n| Message Queue [rabbitmq](https://github.com/rabbitmq/amqp091-go), [kafka](https://github.com/IBM/sarama) | [rabbitmq example](https://github.com/go-dev-frame/sponge/blob/main/pkg/rabbitmq/README.md#example-of-use)\u003cbr\u003e[kafka example](https://github.com/go-dev-frame/sponge/blob/main/pkg/kafka/README.md#example-of-use) |\n| Distributed transaction manager [dtm](https://github.com/dtm-labs/dtm) | [dtm service discovery example](https://github.com/go-dev-frame/sponge_examples/blob/main/_11_sponge-dtm-service-registration-discovery/internal/rpcclient/dtmservice.go#L31)\u003cbr\u003e[dtm flash sale example](https://github.com/go-dev-frame/sponge_examples/blob/main/_12_sponge-dtm-flashSale/grpc%2Bhttp/internal/service/flashSale.go#L67) |\n| Distributed lock [dlock](https://github.com/go-dev-frame/sponge/tree/main/pkg/dlock) | [example](https://github.com/go-dev-frame/sponge/blob/main/pkg/dlock/README.md#example-of-use) |\n| Adaptive rate limiting [ratelimit](https://github.com/go-dev-frame/sponge/tree/main/pkg/shield/ratelimit) | [gin example](https://github.com/go-dev-frame/sponge/blob/main/pkg/gin/middleware/README.md#rate-limiter-middleware)\u003cbr\u003e[gRPC example](https://github.com/go-dev-frame/sponge/blob/main/pkg/gin/middleware/README.md#rate-limiter-interceptor) | |\n| Adaptive circuit breaking [circuitbreaker](https://github.com/go-dev-frame/sponge/tree/main/pkg/shield/circuitbreaker) | [gin example](https://github.com/go-dev-frame/sponge/blob/main/pkg/gin/middleware/README.md#circuit-breaker-middleware)\u003cbr\u003e[gRPC example](https://github.com/go-dev-frame/sponge/blob/main/pkg/grpc/interceptor/README.md#circuit-breaker-interceptor) | |\n| Distributed tracing [opentelemetry](https://github.com/open-telemetry/opentelemetry-go) | [gin example](https://github.com/go-dev-frame/sponge/blob/main/pkg/gin/middleware/README.md#tracing-middleware)\u003cbr\u003e[gRPC example](https://github.com/go-dev-frame/sponge/blob/main/pkg/grpc/interceptor/README.md#tracing-interceptor)\u003cbr\u003e[cross-service tracing example](https://github.com/go-dev-frame/sponge/blob/main/pkg/tracer/example-en.md) |\n| Metrics monitoring [prometheus](https://github.com/prometheus/client_golang/prometheus), [grafana](https://github.com/grafana/grafana) | [gin example](https://github.com/go-dev-frame/sponge/blob/main/pkg/gin/middleware/metrics/README.md#example-of-use)\u003cbr\u003e[gRPC example](https://github.com/go-dev-frame/sponge/blob/main/pkg/grpc/metrics/README.md#example-of-use)\u003cbr\u003e[web and gRPC monitor example](https://github.com/go-dev-frame/sponge/blob/main/pkg/grpc/metrics/monitor-example-en.md) |\n| Service registration and discovery [etcd](https://github.com/etcd-io/etcd), [consul](https://github.com/hashicorp/consul), [nacos](https://github.com/alibaba/nacos) | [service registration example](https://github.com/go-dev-frame/sponge/blob/main/pkg/servicerd/registry/README.md#example-of-use)\u003cbr\u003e[service discovery example](https://github.com/go-dev-frame/sponge/blob/main/pkg/servicerd/discovery/README.md#example-of-use) |\n| Adaptive collecting [profile](https://go.dev/blog/pprof) | [example](https://github.com/go-dev-frame/sponge/blob/main/pkg/prof/go-profile-en.md) |\n| Resource statistics [gopsutil](https://github.com/shirou/gopsutil) | [example](https://github.com/go-dev-frame/sponge/tree/main/pkg/stat#example-of-use) |\n| Configuration cente [nacos](https://github.com/alibaba/nacos) | [example](https://go-sponge.com/components?id=configuration-center) |\n| Code quality checking [golangci-lint](https://github.com/golangci/golangci-lint) | - |\n| Continuous integration and deployment CI/CD [kubernetes](https://github.com/kubernetes/kubernetes), [docker](https://www.docker.com/), [jenkins](https://github.com/jenkinsci/jenkins) | [example](https://go-sponge.com/deployment?id=continuous-integration-and-deployment) |\n| Generate project business architecture diagram [spograph](https://github.com/go-dev-frame/spograph) | [example](https://github.com/go-dev-frame/spograph?tab=readme-ov-file#example-of-use) |\n| Custom template generation code [go template](https://pkg.go.dev/text/template@go1.23.3) | [json example](https://go-sponge.com/custom-template-field)\u003cbr\u003e[sql example](https://go-sponge.com/custom-template-sql)\u003cbr\u003e[protobuf example](https://go-sponge.com/custom-template-protobuf) |\n| AI assistant [DeepSeek](https://deepseek.com), [ChatGPT](https://chatgpt.com), [Gemini](https://gemini.google.com) | [example](https://github.com/go-dev-frame/sponge/blob/main/cmd/sponge/commands/assistant/generate.go#L44) |\n\n\u003cbr\u003e\n\n### Code Generation Engine\n\nThe code generation engine of sponge supports two methods for generating the required project code: **built-in templates** and **custom templates**. Below are the framework diagrams for both approaches.\n\n1. The framework for code generation based on built-in templates in sponge is shown below, supporting both SQL and Protobuf formats.\n\n\u003cp align=\"center\"\u003e\n\u003cimg width=\"1500px\" src=\"https://raw.githubusercontent.com/go-dev-frame/sponge/main/assets/sponge-framework.png\"\u003e\n\u003c/p\u003e\n\n\u003cbr\u003e\n\n2. The framework for code generation based on custom templates in sponge is shown below, supporting JSON, SQL, and Protobuf formats.\n\n\u003cp align=\"center\"\u003e\n\u003cimg width=\"1200px\" src=\"https://raw.githubusercontent.com/go-dev-frame/sponge/main/assets/template-framework.png\"\u003e\n\u003c/p\u003e\n\n\u003cbr\u003e\n\n3. Sponge generates business logic code framework based on function description information, as shown in the following figure:\n\n\u003cp align=\"center\"\u003e\n\u003cimg width=\"1200px\" src=\"https://raw.githubusercontent.com/go-dev-frame/sponge/main/assets/ai-assistant-framework.png\"\u003e\n\u003c/p\u003e\n\n\u003cbr\u003e\n\n### Microservice framework\n\nBack-end services created by sponge are typical microservice architectures. The diagram below illustrates a typical layered microservice structure, featuring high performance, scalability, and built-in service governance capabilities.\n\n\u003cp align=\"center\"\u003e\n\u003cimg width=\"1000px\" src=\"https://raw.githubusercontent.com/go-dev-frame/sponge/main/assets/microservices-framework.png\"\u003e\n\u003c/p\u003e\n\n\u003cbr\u003e\n\nPerformance testing of http and grpc service code created by the microservices framework: 50 concurrent, 1 million total requests.\n\n![http-server](https://raw.githubusercontent.com/zhufuyi/microservices_framework_benchmark/main/test/assets/http-server.png)\n\n![grpc-server](https://raw.githubusercontent.com/zhufuyi/microservices_framework_benchmark/main/test/assets/grpc-server.png)\n\nClick to view the [**test code**](https://github.com/zhufuyi/microservices_framework_benchmark).\n\n\u003cbr\u003e\n\n### Project Code Directory Structure\n\nThe project code directory structure created by sponge follows the [project-layout](https://github.com/golang-standards/project-layout).\n\nSponge supports creating three types of project code structures: `Monolithic application monorepo (monolith)`, `Microservices multi-repo (multi-repo)`, and `Microservices monorepo (mono-repo)`.\n\n1. The code directory structure for creating a `Monolithic application monorepo (monolith)` or `Microservices multi-repo (multi-repo)` is as follows:\n\n   ```bash\n   .\n   ├── api            # Protobuf files and generated * pb.go directory\n   ├── assets         # Store various static resources, such as images, markdown files, etc.\n   ├── cmd            # Program entry directory\n   ├── configs        # Directory for configuration files\n   ├── deployments    # Bare metal, docker, k8s deployment script directory.\n   ├── docs           # Directory for API interface Swagger documentation.\n   ├── internal       # Directory for business logic code.\n   │    ├── cache        # Cache directory wrapped around business logic.\n   │    ├── config       # Directory for Go structure configuration files.\n   │    ├── dao          # Data access directory.\n   │    ├── database     # database directory.\n   │    ├── ecode        # Directory for system error codes and custom business error codes.\n   │    ├── handler      # Directory for implementing HTTP business functionality (specific to web services).\n   │    ├── model        # Database model directory.\n   │    ├── routers      # HTTP routing directory.\n   │    ├── rpcclient    # Directory for client-side code that connects to grpc services.\n   │    ├── server       # Directory for creating servers, including HTTP and grpc.\n   │    ├── service      # Directory for implementing grpc business functionality (specific to grpc services).\n   │    └── types        # Directory for defining request and response parameter structures for HTTP.\n   ├── pkg            # Directory for shared libraries.\n   ├── scripts        # Directory for scripts.\n   ├── test           # Directory for scripts required for testing services  and test SQL.\n   ├── third_party    # Directory for third-party protobuf files or external helper programs.\n   ├── Makefile       # Develop, test, deploy related command sets .\n   ├── go.mod         # Go module dependencies and version control file.\n   └── go.sum         # Go module dependencies key and checksum file.\n   ```\n\n\u003cbr\u003e\n\n2. The code directory structure for creating a `Microservices monorepo (mono-repo)` (large repository code directory structure) is as follows:\n\n   ```bash\n   .\n   ├── api\n   │    ├── server1       # Protobuf files and generated *pb.go directory for service 1.\n   │    ├── server2       # Protobuf files and generated *pb.go directory for service 2.\n   │    ├── server3       # Protobuf files and generated *pb.go directory for service 3.\n   │    └── ...\n   ├── server1        # Code directory for Service 1, it has a similar structure to the microservice multi repo directory.\n   ├── server2        # Code directory for Service 2, it has a similar structure to the microservice multi repo directory.\n   ├── server3        # Code directory for Service 3, it has a similar structure to the microservice multi repo directory.\n   ├── ...\n   ├── third_party    # Third-party protobuf files.\n   ├── go.mod         # Go module dependencies and version control file.\n   └── go.sum         # Go module dependencies' checksums and hash keys.\n   ```\n\n\u003cbr\u003e\n\n### Sponge Development Documentation\n\nClick to view [the detailed documentation](https://go-sponge.com/) for Sponge development project, including code generation, development, configuration, and deployment instructions, and more.\n\n\u003cbr\u003e\n\n### Examples of use\n\n#### Examples of create services\n\n- [Create **web** service based on **sql** (including CRUD)](https://github.com/go-dev-frame/sponge_examples/tree/main/1_web-gin-CRUD)\n- [Create **grpc** service based on **sql** (including CRUD)](https://github.com/go-dev-frame/sponge_examples/tree/main/2_micro-grpc-CRUD)\n- [Create **web** service based on **protobuf**](https://github.com/go-dev-frame/sponge_examples/tree/main/3_web-gin-protobuf)\n- [Create **grpc** service based on **protobuf** ](https://github.com/go-dev-frame/sponge_examples/tree/main/4_micro-grpc-protobuf)\n- [Create **grpc gateway** service based on **protobuf**](https://github.com/go-dev-frame/sponge_examples/tree/main/5_micro-gin-rpc-gateway)\n- [Create **grpc+http** service based on **protobuf**](https://github.com/go-dev-frame/sponge_examples/tree/main/_10_micro-grpc-http-protobuf)\n\n#### Examples of develop complete project\n\n- [Simple community web backend service](https://github.com/go-dev-frame/sponge_examples/tree/main/7_community-single)\n- [Simple community web service broken down into microservice](https://github.com/go-dev-frame/sponge_examples/tree/main/8_community-cluster)\n\n#### Distributed transaction examples\n\n- [Simple distributed order system](https://github.com/go-dev-frame/sponge_examples/tree/main/9_order-grpc-distributed-transaction)\n- [Flash sale](https://github.com/go-dev-frame/sponge_examples/tree/main/_12_sponge-dtm-flashSale)\n- [E-Commerce system](https://github.com/go-dev-frame/sponge_examples/tree/main/_14_eshop)\n\n####  Sponge+AI assistant collaborative development\n\n- [Home appliance retail management platform](https://github.com/go-dev-frame/sponge_examples/tree/main/_15_appliance_store)\n\n\u003cbr\u003e\n\u003cbr\u003e\n\n**If it's help to you, give it a star ⭐.**\n\n\u003cbr\u003e\n","funding_links":[],"categories":["Go","Distributed Systems","\u003ca name=\"Go\"\u003e\u003c/a\u003eGo"],"sub_categories":["Search and Analytic Databases"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgo-dev-frame%2Fsponge","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgo-dev-frame%2Fsponge","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgo-dev-frame%2Fsponge/lists"}