Skip to content
/ goner Public

goner πŸš€ is the official component library for Gone framework in Go. Provides web, DB, cache, microservices & AI tools like OpenAI, Deepseek. Easy integration, high performance.

License

Notifications You must be signed in to change notification settings

gone-io/goner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

EnglishΒ  |  δΈ­ζ–‡

license GoDoc Go Report Card codecov Build and Test Release

Goner

goner is the official component library for the Gone framework, providing a series of plug-and-play components to help developers quickly build high-quality Go applications.

Component List

Local Configuration

Logging

Web Framework

  • goner/gin - Web framework wrapper based on gin-gonic/gin, providing route management, middleware processing, HTTP injection and other functions
  • goner/cmux - Multi-protocol multiplexer based on soheilhy/cmux, supporting multiple protocol services on the same port

Database

  • goner/xorm - ORM component based on XORM, providing simple and efficient database operations, supporting multiple databases
  • goner/gorm - ORM component based on GORM, supporting MySQL, PostgreSQL, SQLite, SQL Server and ClickHouse
    • goner/gorm/mysql - MySQL driver with connection pooling, transaction management, and database migration support
    • goner/gorm/postgres - PostgreSQL driver with JSON/JSONB support, array types, and advanced features
    • goner/gorm/sqlite - Lightweight SQLite driver with zero-configuration and in-memory database support
    • goner/gorm/clickhouse - ClickHouse driver optimized for analytical queries with connection pooling
    • goner/gorm/sqlserver - SQL Server driver with transaction management and migration support

Cache & Messaging

  • goner/redis - Redis client wrapper, providing caching, distributed lock and other functions

Search

  • goner/es - Elasticsearch client wrapper, providing full-text search functionality

Message Queue

Scheduling

Microservices

Configuration Center

  • goner/apollo - Configuration center component based on Apollo, providing dynamic configuration management
  • goner/nacos - Configuration center component based on Nacos, providing dynamic configuration management
  • goner/viper/remote - Configuration component based on various remote configuration centers (such as etcd, consul), providing unified configuration management

Service Registry

  • goner/nacos - Service registry component based on Nacos, providing service registration and discovery
  • goner/etcd - Service registry component based on etcd, providing service registration and discovery
  • goner/consul - Service registry component based on consul, providing service registration and discovery

RPC

  • goner/grpc - gRPC client and server wrapper, simplifying microservice development
  • goner/urllib - HTTP client wrapper

AI Components

  • goner/openai - OpenAI client wrapper, providing GPT and other AI capabilities integration
  • goner/deepseek - Deepseek client wrapper, providing domestic large language model integration
  • goner/mcp - Toolkit wrapper based on github.com/mark3labs/mcp-go, helping developers quickly build MCP (Model Context Protocol) server and client applications

Observability

Installation

# Install Gone CLI tool
go install github.com/gone-io/gonectl@latest

# Install Goner component
# gonectl install <goner component name>
gonectl install goner/gin

Quick Start

Create an application based on Gin, XORM and Viper using Gone CLI tool:

  • Create and install dependencies
gonectl create -t gin+xorm+viper goner-demo
cd goner-demo
go mod tidy
  • Run application
# Start database
docker compose up -d

# Start application
go run ./cmd

# Or
# gonectl run ./cmd

Example code location: gin+xorm+viper

Contribution Guide

Welcome contributions! Please follow these steps:

  1. Fork this repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

MIT License - see LICENSE file

About

goner πŸš€ is the official component library for Gone framework in Go. Provides web, DB, cache, microservices & AI tools like OpenAI, Deepseek. Easy integration, high performance.

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •