awesome-Char
仓颉语言优秀项目
https://github.com/megatontech/awesome-Char
Last synced: 16 days ago
JSON representation
-
Audio and Music
-
Contents
- EasyMIDI - EasyMidi is a simple and reliable library for working with standard midi file (SMF).
- flac - Native Go FLAC encoder/decoder with support for FLAC streams.
- gaad - Native Go AAC bitstream parser.
- go-sox - libsox bindings for go.
- go_mediainfo - libmediainfo bindings for go.
- gosamplerate - libsamplerate bindings for go.
- malgo - Mini audio library.
- minimp3 - Lightweight MP3 decoder library.
- mix - Sequence-based Go-native audio mixer for music apps.
- mp3 - Native Go MP3 decoder.
- music-theory - Music theory models in Go.
- PortAudio - Go bindings for the PortAudio audio I/O library.
- portmidi - Go bindings for PortMidi.
- taglib - Go bindings for taglib.
- vorbis - "Native" Go Vorbis decoder (uses CGO, but has no dependencies).
- waveform - Go package capable of generating waveform images from audio streams.
- id3v2 - Fast and powerful ID3 decoding and encodung library written completely in Go.
- Oto - A low-level library to play sound on multiple platforms.
-
-
Authentication and OAuth
-
Contents
- authboss - Modular authentication system for the web. It tries to remove as much boilerplate and "hard things" as possible so that each time you start a new web project in Go, you can plug it in, configure, and start building your app without having to build an authentication system each time.
- branca - Golang implementation of Branca Tokens.
- cookiestxt - provides parser of cookies.txt file format.
- go-email-normalizer - Golang library for providing a canonical representation of email address.
- go-guardian - Go-Guardian is a golang library that provides a simple, clean, and idiomatic way to create powerful modern API and web authentication that supports LDAP, Basic, Bearer token and Certificate based authentication.
- go-jose - Fairly complete implementation of the JOSE working group's JSON Web Token, JSON Web Signatures, and JSON Web Encryption specs.
- go-oauth2-server - Standalone, specification-compliant, OAuth2 server written in Golang.
- gologin - chainable handlers for login with OAuth1 and OAuth2 authentication providers.
- gorbac - provides a lightweight role-based access control (RBAC) implementation in Golang.
- goth - provides a simple, clean, and idiomatic way to use OAuth and OAuth2. Handles multiple providers out of the box.
- httpauth - HTTP Authentication middleware.
- jeff - Simple, flexible, secure and idiomatic web session management with pluggable backends.
- jwt - Clean and easy to use implementation of JSON Web Tokens (JWT).
- jwt - Lightweight JSON Web Token (JWT) library.
- jwt - Safe, simple and fast JSON Web Tokens for Go.
- jwt-auth - JWT middleware for Golang http servers with many configuration options.
- jwt-go - Golang implementation of JSON Web Tokens (JWT).
- oauth2 - Successor of goauth2. Generic OAuth 2.0 package that comes with JWT, Google APIs, Compute Engine and App Engine support.
- osin - Golang OAuth2 server library.
- otpgo - Time-Based One-Time Password (TOTP) and HMAC-Based One-Time Password (HOTP) library for Go.
- paseto - Golang implementation of Platform-Agnostic Security Tokens (PASETO).
- permissions2 - Library for keeping track of users, login states and permissions. Uses secure cookies and bcrypt.
- rbac - Minimalistic RBAC package for Go applications.
- scs - Session Manager for HTTP servers.
- securecookie - Efficient secure cookie encoding/decoding.
- session - Go session management for web servers (including support for Google App Engine - GAE).
- sessiongate-go - Go session management using the SessionGate Redis module.
- sessions - Dead simple, highly performant, highly customizable sessions service for go http servers.
- signedvalue - Signed and timestamped strings compatible with [Tornado's](https://github.com/tornadoweb/tornado) `create_signed_value`, `decode_signed_value`, and therefore `set_secure_cookie` and `get_secure_cookie`.
- sjwt - Simple jwt generator and parser.
- casbin - Authorization library that supports access control models like ACL, RBAC, ABAC.
- loginsrv - JWT login microservice with plugable backends such as OAuth2 (Github), htpasswd, osiam.
- scope - Easily Manage OAuth2 Scopes In Go.
- sessionup - Simple, yet effective HTTP session management and identification package.
-
-
Benchmarks
-
Other Software
- autobench - Framework to compare the performance between different Go versions.
- go-benchmark-app - Powerful HTTP-benchmark tool mixed with Аb, Wrk, Siege tools. Gathering statistics and various parameters for benchmarks and comparison results.
- go-benchmarks - Few miscellaneous Go microbenchmarks. Compare some language features to alternative approaches.
- go-http-routing-benchmark - Go HTTP request router benchmark and comparison.
- go-web-framework-benchmark - Go web framework benchmark.
- go_serialization_benchmarks - Benchmarks of Go serialization methods.
- golang-sql-benchmark - Collection of benchmarks for popular Go database/SQL utilities.
- gospeed - Go micro-benchmarks for calculating the speed of language constructs.
- kvbench - Key/Value database benchmark.
- skynet - Skynet 1M threads microbenchmark.
- speedtest-resize - Compare various Image resize algorithms for the Go language.
- gocostmodel - Benchmarks of common basic operations for the Go language.
-
-
Bot Building
-
Contents
- ephemeral-roles - A Discord bot for managing ephemeral roles based upon voice channel member presence.
- go-chat-bot - IRC, Slack & Telegram bot written in Go.
- go-sarah - Framework to build bot for desired chat services including LINE, Slack, Gitter and more.
- go-tgbot - Pure Golang Telegram Bot API wrapper, generated from swagger file, session-based router and middleware.
- go-twitch-irc - Libary to write bots for twitch.tv chat
- Golang CryptoTrading Bot - A golang implementation of a console-based trading bot for cryptocurrency exchanges.
- govkbot - Simple Go [VK](https://vk.com) bot library.
- hanu - Framework for writing Slack bots.
- margelet - Framework for building Telegram bots.
- micha - Go Library for Telegram bot api.
- olivia - A chatbot built with an artificial neural network.
- slacker - Easy to use framework to create Slack bots.
- slackscot - Another framework for building Slack bots.
- tbot - Telegram bot server with API similar to net/http.
- telebot - Telegram bot framework written in Go.
- Tenyks - Service oriented IRC bot using Redis and JSON for messaging.
- Kelp - official trading and market-making bot for the [Stellar](https://www.stellar.org/) DEX. Works out-of-the-box, written in Golang, compatible with centralized exchanges and custom trading strategies.
- telegram-bot-api - Simple and clean Telegram bot client.
-
-
Code Analysis
-
Routers
- GoCover.io - GoCover.io offers the code coverage of any golang package as a service.
- Golint online - Lints online Go source files on GitHub, Bitbucket and Google Project Hosting using the golint package.
- goreturns - Adds zero-value return statements to match the func return types.
- gosimple - gosimple is a linter for Go source code that specialises on simplifying code.
- staticcheck - staticcheck is `go vet` on steroids, applying a ton of static analysis checks you might be used to from tools like ReSharper for C#.
- unused - unused checks Go code for unused constants, variables, functions and types.
- apicompat - Checks recent changes to a Go project for backwards incompatible changes.
- dupl - Tool for code clone detection.
- errcheck - Errcheck is a program for checking for unchecked errors in Go programs.
- gcvis - Visualise Go program GC trace data in real time.
- go-checkstyle - checkstyle is a style check tool like java checkstyle. This tool inspired by java checkstyle, golint. The style referred to some points in Go Code Review Comments.
- go-cleanarch - go-cleanarch was created to validate Clean Architecture rules, like a The Dependency Rule and interaction between packages in your Go projects.
- go-critic - source code linter that brings checks that are currently not implemented in other linters.
- go-mod-outdated - An easy way to find outdated dependencies of your Go projects.
- go-outdated - Console application that displays outdated packages.
- goast-viewer - Web based Golang AST visualizer.
- golines - Formatter that automatically shortens long lines in Go code.
- GoLint - Golint is a linter for Go source code.
- GoPlantUML - Library and CLI that generates text plantump class diagram containing information about structures and interfaces with the relationship among them.
- gostatus - Command line tool, shows the status of repositories that contain Go packages.
- lint - Run linters as part of go test.
- php-parser - A Parser for PHP written in Go.
- tickgit - CLI and go package for surfacing code comment TODOs (in any language) and applying a `git blame`to identify the author.
- unconvert - Remove unnecessary type conversions from Go source.
- validate - Automatically validates struct fields with tags.
- tarp - tarp finds functions and methods without direct unit tests in Go source code.
- goimports - Tool to fix (add, remove) your Go imports automatically.
-
-
Command Line
-
Advanced Console UIs
- gommon/color - Style terminal text.
- asciigraph - Go package to make lightweight ASCII line graph ╭┈╯ in command line apps with no other dependencies.
- aurora - ANSI terminal colors that supports fmt.Printf/Sprintf.
- cfmt - Contextual fmt inspired by bootstrap color classes.
- chalk - Intuitive package for prettifying terminal/console output.
- colourize - Go library for ANSI colour text in terminals.
- ctc - The non-invasive cross-platform terminal color library does not need to modify the Print method.
- go-ataman - Go library for rendering ANSI colored text templates in terminals.
- go-colorable - Colorable writer for windows.
- go-colortext - Go library for color output in terminals.
- go-isatty - isatty for golang.
- go-prompt - Library for building a powerful interactive prompt, inspired by [python-prompt-toolkit](https://github.com/jonathanslenders/python-prompt-toolkit).
- gocui - Minimalist Go library aimed at creating Console User Interfaces.
- gookit/color - Terminal color rendering tool library, support 16 colors, 256 colors, RGB color rendering output, compatible with Windows.
- mpb - Multi progress bar for terminal applications.
- progressbar - Basic thread-safe progress bar that works in every OS.
- simpletable - Simple tables in terminal with Go.
- tabby - A tiny library for super simple Golang tables.
- tabular - Print ASCII tables from command line utilities without the need to pass large sets of data to the API.
- termbox-go - Termbox is a library for creating cross-platform text-based interfaces.
- termdash - Go terminal dashboard based on **termbox-go** and inspired by [termui](https://github.com/gizak/termui).
- termui - Go terminal dashboard based on **termbox-go** and inspired by [blessed-contrib](https://github.com/yaronn/blessed-contrib).
- uilive - Library for updating terminal output in realtime.
- uiprogress - Flexible library to render progress bars in terminal applications.
- uitable - Library to improve readability in terminal apps using tabular data.
- yacspin - Yet Another CLi Spinner package, for working with terminal spinners.
-
Standard CLI
- hiboot cli - cli application framework with auto configuration and dependency injection.
- 1build - Command line tool to frictionlessly manage project-specific commands.
- argparse - Command line argument parser inspired by Python's argparse module.
- argv - Go library to split command line string as arguments array using the bash syntax.
- cli - Feature-rich and easy to use command-line package based on golang struct tags.
- cli - Simple and complete API for building command line interfaces in Go.
- cli-init - The easy way to start building Golang command line applications.
- clîr - A Simple and Clear CLI library. Dependency free.
- cmd - Extends the standard `flag` package to support sub commands and more in idomatic way.
- cmdr - A POSIX/GNU style, getopt-like command-line UI Go library.
- cobra - Commander for modern Go CLI interactions.
- commandeer - Dev-friendly CLI apps: sets up flags, defaults, and usage based on struct fields and tags.
- complete - Write bash completions in Go + Go command bash completion.
- Dnote - A simple command line notebook with multi-device sync.
- docopt.go - Command-line arguments parser that will make you smile.
- env - Tag-based environment configuration for structs.
- flag - Simple but powerful command line option parsing library for Go supporting subcommand.
- flaggy - A robust and idiomatic flags package with excellent subcommand support.
- flagvar - A collection of flag argument types for Go's standard `flag` package.
- go-arg - Struct-based argument parsing in Go.
- go-commander - Go library to simplify CLI workflow.
- go-flags - go command line option parser.
- go-getoptions - Go option parser inspired on the flexibility of Perl’s GetOpt::Long.
- gocmd - Go library for building command line applications.
- job - JOB, make your short-term command as a long-term job.
- kingpin - Command line and flag parser supporting sub commands.
- liner - Go readline-like library for command-line interfaces.
- mitchellh/cli - Go library for implementing command-line interfaces.
- mow.cli - Go library for building CLI applications with sophisticated flag and argument parsing and validation.
- ops - Unikernel Builder/Orchestrator.
- pflag - Drop-in replacement for Go's flag package, implementing POSIX/GNU-style --flags.
- readline - Pure golang implementation that provides most features in GNU-Readline under MIT license.
- sand - Simple API for creating interpreters and so much more.
- sflags - Struct based flags generator for flag, urfave/cli, pflag, cobra, kingpin and other libraries.
- strumt - Library to create prompt chain.
- ts - Timestamp convert & compare tool.
- ukautz/clif - Small command line interface framework.
- urfave/cli - Simple, fast, and fun package for building command line apps in Go (formerly codegangsta/cli).
- wlog - Simple logging interface that supports cross-platform color and concurrency.
- wmenu - Easy to use menu structure for cli applications that prompts users to make choices.
- climax - Alternative CLI with "human face", in spirit of Go command.
-
-
Conferences
-
Other Software
- Capital Go - Washington, D.C., USA.
- GoDays - Berlin, Germany.
- GopherChina - Shanghai, China.
- GopherCon Australia - Sydney, Australia.
- GopherCon Europe - Berlin, Germany.
- GopherCon India - Pune, India.
- GopherCon Israel - Tel Aviv, Israel.
- GopherCon Vietnam - Ho Chi Minh City, Vietnam.
- GoWayFest - Minsk, Belarus.
- GolangUK - London, UK.
- dotGo - Paris, France.
- GolangUK - London, UK.
- GopherCon Brazil - Florianópolis, BR.
- GoWayFest - Minsk, Belarus.
- GoWayFest - Minsk, Belarus.
- GoWayFest - Minsk, Belarus.
- GoWayFest - Minsk, Belarus.
- GoWayFest - Minsk, Belarus.
- GopherCon - Denver, USA.
- GopherCon Russia - Moscow, Russia.
-
-
Configuration
-
Advanced Console UIs
- gone/jconf - Modular JSON configuration. Keep you config structs along with the code they configure and delegate parsing to submodules without sacrificing full config serialization.
- aconfig - Simple, useful and opinionated config loader.
- cleanenv - Minimalistic configuration reader (from files, ENV, and wherever you want).
- config - A lightweight yet powerful config package for Go projects.
-
Programming Languages
Categories
Utilities
137
Software Packages
108
Database
91
Web Frameworks
86
Third-party APIs
83
Miscellaneous
68
Networking
67
Command Line
67
Meetups
67
Testing
65
Data Structures
60
Text Processing
58
Websites
51
Database Drivers
50
Messaging
47
Logging
47
Distributed Systems
46
Configuration
43
Images
38
Natural Language Processing
37
Goroutines
36
Machine Learning
35
Authentication and OAuth
34
Science and Data Analysis
30
Code Analysis
27
Security
25
ORM
22
Template Engines
21
File Handling
20
Conferences
20
JSON
20
Serialization
20
GUI
19
Audio and Music
18
Date and Time
18
Bot Building
18
Game Development
18
Server Applications
18
Go Tools
17
Embeddable Scripting Languages
17
Package Management
16
Editor Plugins
14
Financial
14
Email
14
Generation and Generics
13
Benchmarks
12
Error Handling
12
Validation
11
Query Language
11
Social Media
11
Gophers
11
Video
11
E-Books
11
IoT (Internet of Things)
11
Resource Embedding
11
Geographic
10
Style Guides
10
UUID
9
Go Generate Tools
9
Job Scheduler
9
Forms
9
Continuous Integration
7
WebAssembly
6
Microsoft Office
6
XML
6
Version Control
6
OpenGL
6
Go Compilers
5
Performance
4
Functional
3
Windows
3
Sponsorships
3
Dynamic DNS
3
CSS Preprocessors
2
Stream Processing
1
Hardware
1
Sub Categories
Keywords
golang
741
go
690
golang-library
64
cli
57
database
50
http
41
json
38
testing
35
sql
31
golang-package
30
api
28
middleware
26
library
26
framework
24
redis
23
configuration
21
mysql
21
concurrency
20
postgresql
20
parser
19
docker
19
machine-learning
18
router
18
awesome-go
18
command-line
18
orm
17
logging
17
html
17
distributed-systems
15
server
14
xml
14
web
14
microservice
14
security
14
goroutine
14
config
13
sqlite
13
microservices
13
client
13
fast
13
dependency-injection
12
log
12
rpc
12
rest-api
12
environment-variables
11
queue
11
cache
11
validation
11
retry
11
go-library
11