어썸고
우리는 즉각적인 커뮤니케이션을 위해 Golang Bridge 커뮤니티 Slack을 사용합니다. 가입하려면 여기 양식을 따르세요.
후원:
특별한 감사
기업용 앱입니다. 단 몇 줄의 코드만으로 기업 고객에게 판매를 시작하세요. 몇 개월이 아닌 몇 분 만에 Single Sign-On 등을 추가할 수 있습니다. |
|
Awesome Go는 월 사용료가 없지만 이를 유지하기 위해 열심히 일하는 직원이 있습니다. 모금된 돈으로 우리는 관련된 각 사람의 노력에 보답할 수 있습니다! 전체 커뮤니티에 공개되므로 청구 및 배포가 어떻게 계산되는지 확인할 수 있습니다. 프로젝트의 후원자가 되고 싶으시면 여기를 클릭하세요.
멋진 Go 프레임워크, 라이브러리, 소프트웨어로 구성된 목록입니다. awesome-python에서 영감을 얻었습니다.
기여:
먼저 기여 지침을 빠르게 살펴보시기 바랍니다. 모든 기여자에게 감사드립니다. 너 정말 좋아!
여기에 더 이상 유지 관리되지 않거나 적합하지 않은 패키지나 프로젝트가 있으면 이 파일을 개선하기 위해 끌어오기 요청을 제출하세요. 감사합니다!
내용물
- 어썸고
- 내용물
- 배우 모델
- 인공지능
- 오디오 및 음악
- 인증 및 OAuth
- 블록체인
- 봇 빌딩
- 빌드 자동화
- 명령줄
- 구성
- 지속적인 통합
- CSS 전처리기
- 데이터 통합 프레임워크
- 데이터 구조 및 알고리즘
- 비트 패킹 및 압축
- 비트 세트
- 블룸 및 쿠쿠 필터
- 데이터 구조 및 알고리즘 컬렉션
- 반복자
- 지도
- 기타 데이터 구조 및 알고리즘
- 널 입력 가능 유형
- 대기열
- 세트
- 텍스트 분석
- 나무
- 파이프
- 데이터 베이스
- 캐시
- Go로 구현된 데이터베이스
- 데이터베이스 스키마 마이그레이션
- 데이터베이스 도구
- SQL 쿼리 빌더
- 데이터베이스 드라이버
- 여러 백엔드에 대한 인터페이스
- 관계형 데이터베이스 드라이버
- NoSQL 데이터베이스 드라이버
- 검색 및 분석 데이터베이스
- 날짜 및 시간
- 분산 시스템
- 동적 DNS
- 이메일
- 내장 가능한 스크립팅 언어
- 오류 처리
- 파일 처리
- 재정적인
- 양식
- 기능성
- 게임 개발
- 발전기
- 지리적
- 컴파일러로 이동
- 고루틴
- GUI
- 하드웨어
- 이미지
- IoT(사물인터넷)
- 작업 스케줄러
- JSON
- 벌채 반출
- 기계 학습
- 메시징
- 마이크로소프트 오피스
- 여러 가지 잡다한
- 의존성 주입
- 프로젝트 레이아웃
- 문자열
- 분류되지 않음
- 자연어 처리
- 언어 감지
- 형태학적 분석기
- 슬러지파이어
- 토크나이저
- 번역
- 음역
- 네트워킹
- OpenGL
- ORM
- 패키지 관리
- 성능
- 쿼리 언어
- 반사
- 리소스 임베딩
- 과학 및 데이터 분석
- 보안
- 직렬화
- 서버 애플리케이션
- 스트림 처리
- 템플릿 엔진
- 테스트
- 테스트 프레임워크
- 모조품
- 퍼징 및 델타 디버깅/감소/축소
- Selenium 및 브라우저 제어 도구
- 주입 실패
- 텍스트 처리
- 포맷터
- 마크업 언어
- 파서/인코더/디코더
- 정규 표현식
- 위생
- 스크레이퍼
- RSS
- 유틸리티/기타
- 타사 API
- 유용
- UUID
- 확인
- 버전 관리
- 동영상
- 웹 프레임워크
- 미들웨어
- 실제 미들웨어
- HTTP 미들웨어 생성을 위한 라이브러리
- 라우터
- 웹어셈블리
- 윈도우
- 워크플로 프레임워크
- XML
- 제로 트러스트
- 코드 분석
- 에디터 플러그인
- 도구 생성 이동
- 도구 이동
- 소프트웨어 패키지
- 자원
- 벤치마크
- 컨퍼런스
- 전자책
- 고퍼
- 모임
- 스타일 가이드
- 소셜 미디어
- 웹사이트
⬆ 맨 위로 돌아가기
배우 모델
배우 기반 프로그램을 구축하기 위한 라이브러리입니다.
- Ergo - Golang에서 이벤트 중심 아키텍처를 생성하기 위한 네트워크 투명성을 갖춘 행위자 기반 프레임워크입니다. 얼랭(Erlang)에서 영감을 얻었습니다.
- Goakt - Golang에 대한 메시지로 프로토콜 버퍼를 사용하는 빠르고 분산된 행위자 프레임워크입니다.
- 헐리우드(Hollywood) - Golang으로 작성된 놀랍도록 빠르고 가벼운 액터 엔진입니다.
- ProtoActor - Proto Actor - Go, C# 및 Java/Kotlin을 위한 초고속 분산 액터입니다.
인공지능
AI를 활용하는 프로그램을 구축하기 위한 라이브러리입니다.
- chromem-go - Chroma와 유사한 인터페이스와 타사 종속성이 없는 Go용 내장형 벡터 데이터베이스입니다. 선택적 지속성을 갖춘 인메모리.
- fun - Go에서 LLM(대형 언어 모델)을 사용하는 가장 간단하지만 강력한 방법입니다.
- langchaingo - LangChainGo는 언어 모델로 구동되는 애플리케이션을 개발하기 위한 프레임워크입니다.
- LocalAI - 오픈 소스 OpenAI 대안, 자체 호스트 AI 모델입니다.
- Ollama - 대규모 언어 모델을 로컬에서 실행합니다.
- OllamaFarm - Ollamas의 관리, 로드 밸런싱 및 장애 조치 팩
⬆ 맨 위로 돌아가기
오디오 및 음악
오디오 조작을 위한 라이브러리.
- flac - FLAC 스트림을 지원하는 기본 Go FLAC 인코더/디코더입니다.
- gaad - 기본 Go AAC 비트스트림 파서.
- GoAudio - 네이티브 Go 오디오 처리 라이브러리.
- gosamprate - go용 libsamprate 바인딩입니다.
- id3v2 - Go용 ID3 디코딩 및 인코딩 라이브러리입니다.
- Malgo - 미니 오디오 라이브러리.
- minimp3 - 경량 MP3 디코더 라이브러리.
- Oto - 여러 플랫폼에서 사운드를 재생하는 저수준 라이브러리입니다.
- PortAudio - PortAudio 오디오 I/O 라이브러리에 대한 Go 바인딩입니다.
⬆ 맨 위로 돌아가기
인증 및 OAuth
인증 체계를 구현하기 위한 라이브러리입니다.
- authboss - 웹용 모듈식 인증 시스템입니다. Go에서 새 웹 프로젝트를 시작할 때마다 매번 인증 시스템을 구축할 필요 없이 이를 연결하고 구성하고 앱 구축을 시작할 수 있도록 가능한 한 많은 상용구와 "어려운 부분"을 제거하려고 합니다. .
- branca - Golang 1.15+에 대한 branca 토큰 사양 구현입니다.
- casbin - ACL, RBAC 및 ABAC와 같은 액세스 제어 모델을 지원하는 권한 부여 라이브러리입니다.
- cookietxt - cookie.txt 파일 형식의 파서를 제공합니다.
- go-guardian - Go-Guardian은 LDAP, 기본, Bearer 토큰 및 인증서 기반 인증을 지원하는 강력한 최신 API 및 웹 인증을 생성하는 간단하고 명확하며 관용적인 방법을 제공하는 golang 라이브러리입니다.
- go-jose - JOSE 작업 그룹의 JSON 웹 토큰, JSON 웹 서명 및 JSON 웹 암호화 사양을 상당히 완벽하게 구현합니다.
- gologin - OAuth1 및 OAuth2 인증 공급자와의 로그인을 위한 체인 가능한 핸들러입니다.
- gorbac - Golang에서 가벼운 역할 기반 액세스 제어(RBAC) 구현을 제공합니다.
- gosession - GoLang의 net/http에 대한 빠른 세션입니다. 이 패키지는 아마도 세션 메커니즘을 가장 잘 구현한 것일 수도 있고 적어도 세션 메커니즘이 되려고 노력할 것입니다.
- goth - OAuth 및 OAuth2를 사용하는 간단하고 명확하며 관용적인 방법을 제공합니다. 기본적으로 여러 공급자를 처리합니다.
- jeff - 플러그형 백엔드를 갖춘 간단하고 유연하며 안전하고 관용적인 웹 세션 관리입니다.
- jwt - 경량 JSON 웹 토큰(JWT) 라이브러리입니다.
- jwt - 안전하고 간단하며 빠른 Go용 JSON 웹 토큰입니다.
- jwt-auth - 다양한 구성 옵션이 있는 Golang http 서버용 JWT 미들웨어입니다.
- jwt-go - JWT(JSON 웹 토큰)의 완전한 기능 구현입니다. 이 라이브러리는 구문 분석 및 확인은 물론 JWT 생성 및 서명도 지원합니다.
- jwx - 다양한 JWx(JWA/JWE/JWK/JWS/JWT, JOSE라고도 함) 기술을 구현하는 Go 모듈
- keto - "잔지바르: Google의 일관된 글로벌 인증 시스템"의 오픈 소스(Go) 구현입니다. gRPC, REST API, newSQL 및 쉽고 세부적인 권한 언어를 제공합니다. ACL, RBAC 및 기타 액세스 모델을 지원합니다.
- loginsrv - OAuth2(Github), htpasswd, osiam과 같은 플러그형 백엔드를 갖춘 JWT 로그인 마이크로서비스입니다.
- oauth2 - goauth2의 후속 제품입니다. JWT, Google API, Compute Engine 및 App Engine 지원과 함께 제공되는 일반 OAuth 2.0 패키지입니다.
- oidc - Go용으로 작성되고 OpenID Foundation의 인증을 받은 사용하기 쉬운 OpenID Connect 클라이언트 및 서버 라이브러리
- openfga - "Zanzibar: Google's Consistency, Global Authorization System" 논문을 기반으로 세분화된 인증 구현. CNCF가 지원합니다.
- osin - Golang OAuth2 서버 라이브러리.
- otpgen - TOTP/HOTP 코드를 생성하는 라이브러리입니다.
- otpgo - Go용 TOTP(Time-Based One-Time Password) 및 HOTP(HMAC-Based One-Time Password) 라이브러리입니다.
- paseto - 플랫폼에 구애받지 않는 보안 토큰(PASETO)의 Golang 구현입니다.
- Permissions2 - 사용자, 로그인 상태 및 권한을 추적하기 위한 라이브러리입니다. 보안 쿠키와 bcrypt를 사용합니다.
- 범위 - Go에서 OAuth2 범위를 쉽게 관리합니다.
- scs - HTTP 서버용 세션 관리자입니다.
- securecookie - 효율적인 보안 쿠키 인코딩/디코딩.
- session - 웹 서버에 대한 Go 세션 관리(Google App Engine - GAE 지원 포함)
- 세션 - Go http 서버를 위한 매우 간단하고 성능이 뛰어나며 사용자 정의가 가능한 세션 서비스입니다.
- sessionup - 간단하면서도 효과적인 HTTP 세션 관리 및 식별 패키지입니다.
- sjwt - 간단한 jwt 생성기 및 파서.
⬆ 맨 위로 돌아가기
블록체인
블록체인 구축을 위한 도구.
- Cometbft - 분산형 비잔틴 내결함성 결정론적 상태 머신 복제 엔진입니다. Tendermint Core의 포크이며 Tendermint 합의 알고리즘을 구현합니다.
- cosmos-sdk - 코스모스 생태계에서 퍼블릭 블록체인을 구축하기 위한 프레임워크입니다.
- gno - Golang과 블록체인을 위해 특별히 제작된 결정론적 Go 변형인 Gnolang으로 구축된 포괄적인 스마트 계약 제품군입니다.
- go-ethereum - 이더리움 프로토콜의 공식 Go 구현입니다.
- gosemble - Polkadot/Substrate 호환 런타임을 구축하기 위한 Go 기반 프레임워크입니다.
- gossamer - Polkadot 호스트의 Go 구현입니다.
- kubo - Go로 구현된 블록체인 프레임워크입니다. 이는 DApp의 분산 저장소에 사용할 수 있는 콘텐츠 주소 지정 가능 저장소를 제공합니다. 이는 IPFS 프로토콜을 기반으로 합니다.
- lnd - 조명 네트워크 노드의 완전한 구현입니다.
- solana-go - Solana JSON RPC 및 WebSocket 인터페이스와 인터페이스하기 위한 Go 라이브러리입니다.
- Tendermint - Tendermint 합의 및 블록체인 프로토콜을 사용하여 프로그래밍 언어로 작성된 상태 머신을 비잔틴 내결함성 복제 상태 머신으로 변환하기 위한 고성능 미들웨어입니다.
⬆ 맨 위로 돌아가기
봇 빌딩
봇을 구축하고 작업하기 위한 라이브러리입니다.
- bot - 추가 UI 구성 요소가 포함된 종속성 없는 Telegram Bot 라이브러리
- echotron - Go의 Telegram Bots를 위한 우아한 동시 라이브러리입니다.
- ephemeral-roles - 음성 채널 회원의 존재 여부에 따라 임시 역할을 관리하기 위한 Discord 봇입니다.
- go-chat-bot - Go로 작성된 IRC, Slack 및 Telegram 봇입니다.
- go-joe - Hubot에서 영감을 얻었지만 Go로 작성된 범용 봇 라이브러리입니다.
- go-sarah - LINE, Slack, Gitter 등 원하는 채팅 서비스를 위한 봇을 구축하기 위한 프레임워크입니다.
- go-tg - Telegram Bot API에 액세스하기 위한 공식 문서 Go 클라이언트 라이브러리에서 생성되었으며, 복잡한 봇을 구축하기 위한 배터리가 포함되어 있습니다.
- go-tgbot - Swagger 파일, 세션 기반 라우터 및 미들웨어에서 생성된 순수 Golang Telegram Bot API 래퍼입니다.
- go-twitch-irc - twitch.tv 채팅용 봇을 작성하는 라이브러리
- Golang CryptoTrading Bot - 암호화폐 거래소를 위한 콘솔 기반 거래 봇을 golang으로 구현한 것입니다.
- govkbot - Simple Go VK 봇 라이브러리.
- hanu - Slack 봇 작성을 위한 프레임워크입니다.
- Kelp - Stellar DEX의 공식 거래 및 시장 조성 봇입니다. 중앙 집중식 거래소 및 맞춤형 거래 전략과 호환되며 Golang으로 작성되어 즉시 사용 가능합니다.
- 래리 - 래리? Go에 내장된 Github의 임의 저장소를 트윗하는 정말 간단한 Twitter 봇 생성기입니다.
- margelet - 텔레그램 봇 구축을 위한 프레임워크입니다.
- micha - 텔레그램 봇 API용 Go 라이브러리.
- 올리비아(olivia) - 인공 신경망으로 구축된 챗봇입니다.
- slack-bot - 게으른 개발자를 위한 Slack Bot 사용 가능: 사용자 정의 명령, Jenkins, Jira, Bitbucket, Github...
- slacker - Slack 봇을 생성하기 위한 프레임워크를 사용하기 쉽습니다.
- slackscot - Slack 봇 구축을 위한 또 다른 프레임워크입니다.
- tbot - net/http와 유사한 API를 갖춘 텔레그램 봇 서버입니다.
- telebot - 텔레그램 봇 프레임워크는 Go로 작성되었습니다.
- telego - 완전한 일대일 API 구현을 갖춘 Golang용 Telegram Bot API 라이브러리입니다.
- telegram-bot-api - 간단하고 깔끔한 텔레그램 봇 클라이언트입니다.
- teleterm - 텔레그램 Bot Exec 터미널 명령.
- Tenyks - 메시징에 Redis 및 JSON을 사용하는 서비스 지향 IRC 봇입니다.
- wayback - Telegram, Mastodon, Slack 및 기타 메시징 플랫폼을 위한 봇으로 웹페이지를 보관합니다.
⬆ 맨 위로 돌아가기
빌드 자동화
라이브러리와 도구는 빌드 자동화에 도움이 됩니다.
- 1build - 프로젝트별 명령을 원활하게 관리하는 명령줄 도구입니다.
- air - Air - Go 앱용 실시간 새로고침.
- anko - 여러 프로그래밍 언어를 위한 간단한 애플리케이션 감시자입니다.
- gaper - Go 프로젝트가 충돌하거나 일부 감시된 파일 변경이 발생하면 Go 프로젝트를 빌드하고 다시 시작합니다.
- gilbert - Go 프로젝트용 빌드 시스템 및 작업 실행기입니다.
- gob - Go 프로젝트용 빌드 도구와 같은 Gradle/Maven입니다.
- goyek - Go에서 빌드 파이프라인을 만듭니다.
- mage - Mage는 Go를 사용하는 make/rake 같은 빌드 도구입니다.
- mmake - 모던 메이크.
- 실현 - 파일 감시자가 있는 시스템을 구축하고 라이브로 다시 로드하세요. 사용자 정의 경로를 사용하여 파일 변경 사항을 실행, 빌드 및 감시합니다.
- 작업 - 간단한 "만들기" 대안입니다.
- taskctl - 동시 작업 실행기.
- xc - README.md에 정의된 작업, 실행 가능한 마크다운이 포함된 작업 실행기입니다.
⬆ 맨 위로 돌아가기
명령줄
고급 콘솔 UI
콘솔 애플리케이션 및 콘솔 사용자 인터페이스 구축을 위한 라이브러리입니다.
- asciigraph - 다른 종속성이 없는 명령줄 앱에서 경량 ASCII 선 그래프 ╭┈╯를 만드는 Go 패키지입니다.
- aurora - fmt.Printf/Sprintf를 지원하는 ANSI 터미널 색상입니다.
- box-cli-maker - CLI를 위한 고도로 맞춤화된 박스를 만드세요.
- bubble-table - bubbletea용 대화형 테이블 구성 요소입니다.
- bubble - 버블티용 TUI 구성요소입니다.
- bubbletea - Elm 아키텍처를 기반으로 터미널 앱을 구축하기 위한 Go 프레임워크입니다.
- cfmt - 부트스트랩 색상 클래스에서 영감을 받은 상황별 fmt입니다.
- cfmt - fmt 라이브러리와 완벽하게 호환되는 간단하고 편리한 형식의 양식화된 출력입니다.
- chalk - 터미널/콘솔 출력을 예쁘게 만드는 직관적인 패키지입니다.
- Colourize - 터미널의 ANSI 색상 텍스트용 Go 라이브러리입니다.
- crab-config-files-templating - kubernetes 매니페스트 또는 일반 구성 파일을 위한 동적 구성 파일 템플릿 도구입니다.
- ctc - 비침습적 크로스 플랫폼 터미널 색상 라이브러리는 인쇄 방법을 수정할 필요가 없습니다.
- go-ataman - 터미널에서 ANSI 색상 텍스트 템플릿을 렌더링하기 위한 Go 라이브러리입니다.
- go-colorable - Windows용 색상 작성기입니다.
- go-colortext - 터미널의 색상 출력을 위한 Go 라이브러리입니다.
- go-isatty - golang의 isatty입니다.
- go-palette - ANSI 색상을 사용하여 우아하고 편리한 스타일 정의를 제공하는 Go 라이브러리입니다. 멋진 터미널 레이아웃을 위해 완벽하게 호환되며 fmt 라이브러리를 래핑합니다.
- go-prompt - python-prompt-toolkit에서 영감을 받아 강력한 대화형 프롬프트를 구축하기 위한 라이브러리입니다.
- gocui - 콘솔 사용자 인터페이스 생성을 목표로 하는 미니멀리스트 Go 라이브러리입니다.
- gommon/color - 터미널 텍스트 스타일을 지정합니다.
- gookit/color - 터미널 색상 렌더링 도구 라이브러리, 16가지 색상, 256가지 색상, RGB 색상 렌더링 출력 지원, Windows와 호환 가능.
- lipgloss - 터미널의 색상, 형식 및 레이아웃에 대한 스타일을 선언적으로 정의합니다.
- marker - 다채로운 터미널 출력을 위해 문자열을 일치시키고 표시하는 가장 쉬운 방법입니다.
- mpb - 터미널 애플리케이션의 다중 진행률 표시줄입니다.
- Progressbar - 모든 OS에서 작동하는 기본 스레드 안전 진행 표시줄입니다.
- pterm - 결합 가능한 많은 구성 요소를 사용하여 모든 플랫폼에서 콘솔 출력을 아름답게 만드는 라이브러리입니다.
- simpletable - Go를 사용하는 터미널의 간단한 테이블입니다.
- spinner - 터미널 스피너에 옵션을 쉽게 제공하는 Go 패키지입니다.
- tabby - 매우 간단한 Golang 테이블을 위한 작은 라이브러리입니다.
- table - 터미널 색상 기반 테이블을 위한 작은 라이브러리입니다.
- tabular - 대규모 데이터 세트를 API에 전달할 필요 없이 명령줄 유틸리티에서 ASCII 테이블을 인쇄합니다.
- termbox-go - Termbox는 크로스 플랫폼 텍스트 기반 인터페이스를 만들기 위한 라이브러리입니다.
- termdash - termbox-go를 기반으로 하고 termui에서 영감을 받은 Go 터미널 대시보드입니다.
- termenv - 터미널 애플리케이션을 위한 고급 ANSI 스타일 및 색상을 지원합니다.
- termui - termbox-go를 기반으로 하고 Blessed-Contrib에서 영감을 받은 Go 터미널 대시보드입니다.
- uilive - 실시간으로 터미널 출력을 업데이트하기 위한 라이브러리입니다.
- uiprogress - 터미널 애플리케이션에서 진행률 표시줄을 렌더링하는 유연한 라이브러리입니다.
- uitable - 표 형식 데이터를 사용하여 터미널 앱의 가독성을 향상시키는 라이브러리입니다.
- yacspin - 터미널 스피너 작업을 위한 또 다른 CLi Spinner 패키지입니다.
⬆ 맨 위로 돌아가기
표준 CLI
표준 또는 기본 명령줄 애플리케이션을 구축하기 위한 라이브러리입니다.
- acmd - Go의 간단하고 유용하며 독보적인 CLI 패키지입니다.
- argparse - Python의 argparse 모듈에서 영감을 받은 명령줄 인수 구문 분석기입니다.
- argv - bash 구문을 사용하여 명령줄 문자열을 인수 배열로 분할하는 Go 라이브러리입니다.
- carapace - spf13/cobra용 명령 인수 완성 생성기입니다.
- carapace-bin - 다중 쉘 다중 명령 인수 완성기.
- carapace-spec - 사양 파일을 사용하여 간단한 완성을 정의합니다.
- climax - Go 명령의 정신으로 "인간 얼굴"을 사용하는 대체 CLI입니다.
- clîr - 간단하고 명확한 CLI 라이브러리입니다. 의존성이 없습니다.
- cmd - 표준
flag
패키지를 확장하여 관용적 방식으로 하위 명령 등을 지원합니다. - cmdr - POSIX/GNU 스타일, getopt와 유사한 명령줄 UI Go 라이브러리입니다.
- cobra - 최신 Go CLI 상호 작용을 위한 사령관입니다.
- command-chain - Unix 셸의 파이프라인과 같은 명령 체인을 구성하고 실행하기 위한 go 라이브러리입니다.
- Commandeer - 개발자 친화적인 CLI 앱: 구조체 필드 및 태그를 기반으로 플래그, 기본값 및 사용법을 설정합니다.
- 완료 - Go + Go 명령 bash 완료에 bash 완료를 작성합니다.
- Dnote - 다중 장치 동기화 기능을 갖춘 간단한 명령줄 노트북입니다.
- elvish - 표현력이 풍부한 프로그래밍 언어이자 다양한 대화형 셸입니다.
- env - 구조체에 대한 태그 기반 환경 구성입니다.
- 플래그 - Go 지원 하위 명령을 위한 간단하지만 강력한 명령줄 옵션 구문 분석 라이브러리입니다.
- flaggy - 뛰어난 하위 명령 지원을 갖춘 강력하고 관용적인 플래그 패키지입니다.
- flagvar - Go의 표준
flag
패키지에 대한 플래그 인수 유형 모음입니다. - go-andotp - OTP 파일을 암호화/복호화하는 CLI 프로그램입니다. 도서관으로도 사용할 수 있습니다.
- go-arg - Go의 구조체 기반 인수 구문 분석입니다.
- go-commander - CLI 워크플로를 단순화하는 Go 라이브러리입니다.
- go-flags - 명령줄 옵션 파서로 이동합니다.
- go-getoptions - Perl의 GetOpt::Long의 유연성에서 영감을 받은 Go 옵션 구문 분석기입니다.
- gocmd - 명령줄 애플리케이션 구축을 위한 Go 라이브러리입니다.
- hiboot cli - 자동 구성 및 종속성 주입 기능을 갖춘 cli 애플리케이션 프레임워크입니다.
- job - JOB, 단기 명령을 장기 작업으로 만드세요.
- kingpin - 하위 명령을 지원하는 명령줄 및 플래그 파서(
kong
으로 대체됨, 아래 참조) - liner - 명령줄 인터페이스를 위한 readline과 유사한 Go 라이브러리입니다.
- mcli - Go용 최소이지만 매우 강력한 cli 라이브러리입니다.
- mitchellh/cli - 명령줄 인터페이스 구현을 위한 Go 라이브러리입니다.
- mkideal/cli - golang 구조체 태그를 기반으로 하는 기능이 풍부하고 사용하기 쉬운 명령줄 패키지입니다.
- mow.cli - 정교한 플래그와 인수 구문 분석 및 검증 기능을 갖춘 CLI 애플리케이션을 구축하기 위한 Go 라이브러리입니다.
- ops - Unikernel 빌더/오케스트레이터.
- pflag - POSIX/GNU 스타일 --flags를 구현하는 Go의 플래그 패키지를 즉시 대체합니다.
- 현대적이고 사용하기 쉬운 UI 기능을 갖춘 readline Shell 라이브러리입니다.
- sand - 인터프리터 등을 생성하기 위한 간단한 API입니다.
- sflags - 플래그, urfave/cli, pflag, cobra, kingpin 및 기타 라이브러리에 대한 구조 기반 플래그 생성기입니다.
- strumt - 프롬프트 체인을 생성하는 라이브러리입니다.
- subcmd - 하위 명령을 구문 분석하고 실행하는 또 다른 접근 방식입니다. 표준
flag
패키지와 함께 작동합니다. - 설문조사 - Windows 및 POSIX 터미널을 완벽하게 지원하여 대화형의 접근 가능한 프롬프트를 구축합니다.
- teris-io/cli - Go에서 명령줄 인터페이스를 구축하기 위한 간단하고 완전한 API입니다.
- ts - 타임스탬프 변환 및 비교 도구입니다.
- ukautz/clif - 작은 명령줄 인터페이스 프레임워크.
- urfave/cli - Go(이전의 codegangsta/cli)에서 명령줄 앱을 구축하기 위한 간단하고 빠르며 재미있는 패키지입니다.
- 버전 - 업그레이드 알림과 함께 CLI 버전 정보를 다양한 형식으로 수집하고 표시합니다.
- wlog - 크로스 플랫폼 색상 및 동시성을 지원하는 간단한 로깅 인터페이스입니다.
- wmenu - 사용자에게 선택을 요청하는 CLI 애플리케이션용 메뉴 구조를 사용하기 쉽습니다.
⬆ 맨 위로 돌아가기
구성
구성 구문 분석을 위한 라이브러리.
- aconfig - 간단하고 유용하며 독선적인 구성 로더입니다.
- bcl - BCL은 HCL과 유사한 구성 언어입니다.
- cleanenv - 최소한의 구성 판독기(파일, ENV 및 원하는 위치에서).
- config - 클라우드 네이티브 애플리케이션 구성입니다. 단 두 줄로 ENV를 구조체에 바인딩합니다.
- config - 두 줄의 코드에서 파일, 환경 변수 또는 플래그를 사용하여 앱을 구성합니다.
- 구성 - 환경 변수, 파일, 플래그 및 '기본' 태그에서 구성 구조체를 초기화하기 위한 라이브러리입니다.
- 구성 - JSON, 플래그, 환경 변수를 포함한 여러 소스를 통해 구성을 제공합니다.
- configuro - 12팩터 호환 애플리케이션에 초점을 맞춘 ENV 및 파일의 독창적인 구성 로딩 및 검증 프레임워크입니다.
- confiq - Go용 구조체 디코더 라이브러리를 구성하기 위한 구조화된 데이터 형식 - 여러 데이터 형식 지원
- confita - 여러 백엔드에서 구조체로 구성을 계단식으로 로드합니다.
- conflate - 임의 URL의 여러 JSON/YAML/TOML 파일을 병합하고, JSON 스키마에 대한 유효성 검사를 수행하고, 스키마에 정의된 기본값을 적용하는 라이브러리/도구입니다.
- env - 환경 변수를 Go 구조체로 구문 분석합니다(기본값).
- env - 환경 변수를 구조체에 로드하기 위한 경량 패키지입니다.
- env - 구조체로의 언마샬링을 지원하는 환경 유틸리티 패키지
- envconfig - 환경 변수에서 구성을 읽습니다.
- envh - 환경 변수를 관리하는 도우미입니다.
- fig - 파일과 환경 변수(검증 및 기본값 포함)에서 구성을 읽기 위한 작은 라이브러리입니다.
- genv - dotenv 지원으로 환경 변수를 쉽게 읽을 수 있습니다.
- go-array - 맵, 슬라이스 또는 json에서 데이터를 읽거나 설정하는 Go 패키지입니다.
- go-aws-ssm - AWS System Manager - Parameter Store에서 매개변수를 가져오는 Go 패키지입니다.
- go-cfg - 라이브러리는 env, 플래그 및 구성 파일(.json, .yaml, .toml, .env)과 같은 다양한 소스에서 구조로 구성 데이터를 읽는 통합 방법을 제공합니다.
- go-conf - 주석이 달린 구조체를 기반으로 하는 애플리케이션 구성을 위한 간단한 라이브러리입니다. 환경 변수, 구성 파일 및 명령줄 매개변수에서 구성 읽기를 지원합니다.
- go-ini - INI 파일을 마샬링하고 언마샬링하는 Go 패키지입니다.
- go-ssm-config - AWS SSM(Parameter Store)에서 구성 매개변수를 로드하기 위한 Go 유틸리티입니다.
- go-up - 재귀적 자리 표시자 해결 기능이 있고 마법이 없는 간단한 구성 라이브러리입니다.
- GoCfg - 구조 태그 기반 계약, 사용자 정의 값 공급자, 파서 및 문서 생성 기능을 갖춘 구성 관리자입니다. 사용자 정의 가능하면서도 간단합니다.
- goConfig - 구조체를 입력으로 구문 분석하고 이 구조체의 필드를 명령줄, 환경 변수 및 구성 파일의 매개변수로 채웁니다.
- godotenv - Ruby dotenv 라이브러리의 Go 포트입니다(
.env
에서 환경 변수 로드). - goFigure - Go 애플리케이션 구성이 쉬워졌습니다.
- GoLobby/Config - GoLobby Config는 Go 프로그래밍 언어를 위한 가벼우면서도 강력한 구성 관리자입니다.
- gone/jconf - 모듈식 JSON 구성입니다. 구성 구조체를 구성하는 코드와 함께 유지하고 전체 구성 직렬화를 희생하지 않고 하위 모듈에 구문 분석을 위임합니다.
- gonfig - 다양한 공급자의 값을 typesafe 구조체로 로드하는 태그 기반 구성 파서입니다.
- goookit/config - 애플리케이션 구성 관리(로드, 가져오기, 설정). JSON, YAML, TOML, INI, HCL을 지원합니다. 다중 파일 로드, 데이터 재정의 병합.
- Harvester - Harvester는 시딩, 환경 변수 및 Consul 통합을 지원하는 사용하기 쉬운 정적 및 동적 구성 패키지입니다.
- hjson - 인간을 위한 구성 파일 형식인 인간 JSON입니다. 편안한 구문, 더 적은 실수, 더 많은 주석.
- hocon - HOCON(인간 친화적인 JSON 상위 집합) 형식으로 작업하기 위한 구성 라이브러리는 환경 변수, 다른 값 참조, 주석 및 여러 파일과 같은 기능을 지원합니다.
- ingo - ini와 유사한 구성 파일에 지속되는 플래그입니다.
- ini - INI 파일을 읽고 쓰기 위한 Go 패키지입니다.
- ini - INI 파서 및 쓰기 라이브러리, Struct로 비정렬화, Json으로 마샬링, 파일 쓰기, 감시 파일.
- joshbetz/config - 환경 변수, JSON 파일을 구문 분석하고 SIGHUP에서 자동으로 다시 로드하는 Go용 소형 구성 라이브러리입니다.
- kelseyhightower/envconfig - 환경 변수의 구성 데이터를 관리하기 위한 Go 라이브러리입니다.
- koanf - Go 애플리케이션에서 구성을 읽기 위한 가볍고 확장 가능한 라이브러리입니다. JSON, TOML, YAML, env, 명령줄 지원 기능이 내장되어 있습니다.
- konf - 파일, 환경, 플래그 및 클라우드(예: AWS, Azure, GCP)에서 구성을 읽고 보기 위한 가장 간단한 API입니다.
- konfig - 분산 처리 시대를 위한 Go의 구성 가능하고 관찰 가능하며 성능이 뛰어난 구성 처리입니다.
- kong - 임의로 복잡한 명령줄 구조와 YAML, JSON, TOML 등과 같은 추가 구성 소스를 지원하는 명령줄 파서(
kingpin
의 후속 버전). - mini - ini 스타일 구성 파일을 구문 분석하기 위한 Golang 패키지입니다.
- nasermirzaei89/env - 환경 변수 읽기를 위한 간단하고 유용한 패키지입니다.
- nFigure - 명령줄에서 라이브러리별 구조체 태그 기반 구성(Posix & Go 스타일) 환경, JSON, YAML
- onion - Go용 레이어 기반 구성으로 JSON, TOML, YAML, 속성, etcd, env 및 PGP를 사용한 암호화를 지원합니다.
- Piper - 구성 상속 및 키 생성 기능이 있는 Viper 래퍼입니다.
- sonic - 엄청나게 빠른 JSON 직렬화 및 역직렬화 라이브러리입니다.
- store - Go용 경량 구성 관리자입니다.
- swap - 빌드 환경에 따라 구조체를 재귀적으로 인스턴스화/구성합니다. (YAML, TOML, JSON 및 환경).
- typenv - 종속성이 없는 최소한의 형식화된 환경 변수 라이브러리입니다.
- uConfig - 가볍고 종속성이 없으며 확장 가능한 구성 관리입니다.
- 독사 - 송곳니로 구성을 진행합니다.
- xdg - XDG 기본 디렉토리 사양 및 XDG 사용자 디렉토리 구현을 진행합니다.
- xdg - XDG 표준을 따르는 크로스 플랫폼 패키지입니다.
- yamagiconf - Go 구성을 위한 YAML의 "안전한 하위 집합"입니다.
⬆ 맨 위로 돌아가기
지속적인 통합
지속적인 통합에 도움이 되는 도구입니다.
- Abstruse - Abstruse는 분산 CI 플랫폼입니다.
- Bencher - CI의 성능 회귀를 포착하도록 설계된 지속적인 벤치마킹 도구 모음입니다.
- CDS - 엔터프라이즈급 CI/CD 및 DevOps 자동화 오픈 소스 플랫폼입니다.
- 도트(dot) - Docker를 사용하여 작업을 단계적으로 동시에 실행하는 최소한의 로컬 최초 연속 통합 시스템입니다.
- 드론 - Drone은 Go로 작성된 Docker를 기반으로 구축된 지속적인 통합 플랫폼입니다.
- go-beautiful-html-coverage - 아름다운 HTML 미리보기를 통해 풀 요청의 코드 적용 범위를 무료로 추적하는 GitHub 작업입니다.
- go-fuzz-action - GitHub Actions에서 Go 1.18에 내장된 퍼지 테스트를 사용하세요.
- go-semver-release - Git 리포지토리의 의미 체계 버전 관리를 자동화합니다.
- go-test-coverage - 테스트 적용 범위가 설정된 임계값보다 낮을 때 문제를 보고하는 도구 및 GitHub 작업입니다.
- gomason - 깨끗한 작업 공간에서 Go 바이너리를 테스트, 빌드, 서명 및 게시합니다.
- gotestfmt - 인간을 위한 테스트 출력을 실행합니다.
- goveralls - Coveralls.io 연속 코드 적용 범위 추적 시스템을 위한 Go 통합입니다.
- muffet - Go의 빠른 웹사이트 링크 검사기, 대안을 확인하세요.
- 작업복 - Multi-Package는 작업복과 같은 도구에 대한 프로젝트 표지 프로필을 이동합니다.
- roveralls - 재귀적 커버리지 테스트 도구입니다.
- 딱따구리(woodpecker) - 딱따구리는 Drone CI 시스템의 커뮤니티 포크입니다.
⬆ 맨 위로 돌아가기
CSS 전처리기
CSS 파일을 전처리하기 위한 라이브러리입니다.
- gcss - Pure Go CSS 전처리기.
- go-libsass - 100% Sass 호환 libsass 프로젝트로 래퍼를 이동합니다.
⬆ 맨 위로 돌아가기
데이터 통합 프레임워크
ELT/ETL 수행을 위한 프레임워크
- Benthos - 다양한 프로토콜 간의 메시지 스트리밍 브리지입니다.
- CloudQuery - 플러그형 아키텍처를 갖춘 고성능 ELT 데이터 통합 프레임워크입니다.
- omniparser - 스트리밍 방식으로 텍스트 입력(CSV/txt/JSON/XML/EDI/X12/EDIFACT/등)을 구문 분석하고 데이터 기반 스키마를 사용하여 데이터를 JSON 출력으로 변환하는 다목적 ETL 라이브러리입니다.
⬆ 맨 위로 돌아가기
데이터 구조 및 알고리즘
비트 패킹 및 압축
- bingo - 기본 유형을 바이트로 빠르게, 제로 할당, 사전식 순서 보존 패킹입니다.
- binpacker - 바이너리 패커 및 언패커는 사용자가 사용자 정의 바이너리 스트림을 구축하는 데 도움이 됩니다.
- bit - 보너스 비트 조정 기능이 포함된 Golang 세트 데이터 구조입니다.
- crunch - 다양한 데이터 유형을 쉽게 처리하기 위한 버퍼를 구현하는 Go 패키지입니다.
- go-ef - Elias-Fano 인코딩의 Go 구현입니다.
- roaring - 압축된 비트 세트를 구현하는 Go 패키지입니다.
비트 세트
- 비트맵 - Go의 밀도가 높고 할당이 0인 SIMD 지원 비트맵/비트 세트입니다.
- bitset - 비트 세트를 구현하는 Go 패키지입니다.
블룸 및 쿠쿠 필터
- Bloom - Bloom 필터를 구현하는 Go 패키지입니다.
- Bloom - Go에서 구현된 Bloom 필터입니다.
- Bloom - Golang Bloom 필터 구현.
- Bloomfilter - Java의 Guava 라이브러리와 호환되는 Go의 또 다른 Bloomfilter 구현입니다.
- boomfilters - 연속적이고 무한한 스트림을 처리하기 위한 확률적 데이터 구조입니다.
- cuckoo-filter - 뻐꾸기 필터: 구성이 가능하고 다른 도구에 비해 공간이 최적화된 포괄적인 뻐꾸기 필터이며 원본 문서에 언급된 모든 기능을 사용할 수 있습니다.
- cuckoofilter - Cuckoo 필터: Go에서 구현된 계수 블룸 필터의 좋은 대안입니다.
- ring - 고성능 스레드 안전 블룸 필터를 구현합니다.
데이터 구조 및 알고리즘 컬렉션
- 알고리즘 - 알고리즘 및 데이터 구조.CLRS 연구.
- go-datastructures - 유용하고 성능이 뛰어나며 스레드로부터 안전한 데이터 구조 모음입니다.
- 신 - Go 데이터 구조. 컨테이너, 세트, 목록, 스택, 맵, BidiMaps, 트리, HashSet 등
- gostl - C++ STL과 유사한 기능을 제공하도록 설계된 go용 데이터 구조 및 알고리즘 라이브러리입니다.
반복자
- goterator - 맵 및 축소 기능을 제공하는 반복자 구현입니다.
- iter - C++ STL 반복자와 알고리즘을 구현합니다.
지도
더 복잡한 키-값 저장소에 대해서는 데이터베이스를, 추가 순서 맵 구현에 대해서는 트리를 참조하세요.
- cmap - go를 위한 스레드로부터 안전한 동시 맵이며
interface{}
키 및 자동 확장 샤드로 사용하는 것을 지원합니다. - dict - Python과 유사한 Go용 사전(dict)입니다.
- go-shelve - Go 프로그래밍 언어를 위한 지속적이고 지도 같은 객체입니다. 여러 개의 내장된 키-값 저장소를 지원합니다.
- goradd/maps - Go 1.18+ 지도용 일반 지도 인터페이스; 안전한 지도; 주문된 지도; 질서 있고 안전한 지도; 등.
기타 데이터 구조 및 알고리즘
- Concurrent-writer -
bufio.Writer
에 대한 동시 드롭인 교체가 가능합니다. - conjungo - 작고 강력하며 유연한 병합 라이브러리입니다.
- count-min-log - Go 구현 Count-Min-Log 스케치: 대략적인 카운터를 사용하여 대략적으로 계산합니다(Count-Min 스케치와 비슷하지만 더 적은 메모리를 사용함).
- fsm - 유한 상태 기계 패키지.
- genfuncs - Kotlin의 시퀀스 및 맵에서 영감을 받은 Go 1.18+ 제네릭 패키지입니다.
- go-generics - 일반 슬라이스, 맵, 세트, 반복자 및 고루틴 유틸리티입니다.
- go-geoindex - 메모리 내 지리 색인입니다.
- go-rampart - 간격이 서로 어떻게 관련되는지 결정합니다.
- go-rquad - 효율적인 포인트 위치 및 이웃 찾기 기능을 갖춘 지역 쿼드트리입니다.
- go-tuple - Go 1.18+에 대한 일반 튜플 구현입니다.
- go18ds - Go 1.18 제네릭을 사용하는 Go 데이터 구조.
- gofal - Go용 분수 API입니다.
- gogu - 포괄적이고 재사용 가능하며 효율적인 동시 안전 제네릭 유틸리티 함수 및 데이터 구조 라이브러리입니다.
- gota - Go용 데이터 프레임, 시리즈 및 데이터 랭글링 방법을 구현합니다.
- hide - 클라이언트에 ID를 보내는 것을 방지하기 위해 해시와 마샬링하는 ID 유형입니다.
- hilbert - Hilbert 및 Peano 곡선과 같은 공간 채우기 곡선과 값을 매핑하기 위한 Go 패키지입니다.
- hyperloglog - Sparse, LogLog-Beta 바이어스 수정 및 TailCut 공간 감소를 통한 HyperLogLog 구현입니다.
- 쿼드트리 - 일반, 제로 할당, 100% 테스트 적용 쿼드트리입니다.
- 슬라이스 - 슬라이스에서 작동하는 함수입니다.
package strings
과 비슷하지만 슬라이스 작업에 적합합니다. - Slices - 슬라이스를 위한 순수하고 일반적인 함수입니다.
널 입력 가능 유형
- nan - 제로 할당 편리한 변환 기능, 마샬러 및 언마샬러를 갖춘 하나의 라이브러리에 Null 가능 구조가 있습니다.
- null - JSON에서 마샬링/마샬링 해제할 수 있는 Nullable Go 유형입니다.
- typ - Null 유형, 안전한 기본 유형 변환 및 복잡한 구조에서 값 가져오기.
대기열
- deque - 고도로 최적화된 이중 종료 대기열입니다.
- deque - 빠른 링 버퍼 deque(양단 큐)입니다.
- goconcurrentqueue - 동시 FIFO 대기열.
- 도끼 - 분산된 내결함성 작업 대기열입니다.
- memlog - Apache Kafka에서 영감을 받아 사용하기 쉽고 가볍고 스레드로부터 안전하며 추가 전용 메모리 내 데이터 구조입니다.
- queue - Go를 위한 다중 스레드 안전 일반 대기열 구현입니다.
세트
- dsu - Go의 Disjoint Set 데이터 구조 구현입니다.
- golang-set - Go용 스레드 안전 및 비 스레드 안전 고성능 세트입니다.
- goset - Go에 유용한 Set 컬렉션 구현입니다.
- set - LinkedHashMap을 사용하여 Go에서 간단한 세트 데이터 구조 구현입니다.
텍스트 분석
- bleve - Go를 위한 최신 텍스트 인덱싱 라이브러리입니다.
- go-adaptive-radix-tree - 적응형 기수 트리 구현을 진행합니다.
- GO-EDLIB-GO 스트링 비교 및 편집 거리 알고리즘 라이브러리 (Levenshtein, LCS, Hamming, Damerau Levenshtein, Jaro-Winkler 등) 유니 코드와 호환됩니다.
- LEVENSHTEIN- 사용자 정의 가능한 편집 비용과 일반적인 접두사에 대한 Winkler와 같은 보너스가있는 Levenshtein 거리 및 유사성 메트릭.
- LEVENSHTEIN- GO에서 Levenshtein 거리를 계산하기위한 구현.
- MSPM- 정보 검색을위한 멀티 스트링 패턴 매칭 알고리즘.
- Parsefields- 고유 한 필드 및 이벤트를 수집하기위한 JSON과 같은 로그를위한 도구.
- ptrie- 접두사 트리의 구현.
- 트리 - 트리 구현.
나무
- 해시 스플리트 - 바이트 스트림을 청크로 나누고 덩어리를 나무에 배열하고 위치가 아닌 내용에 의해 결정된 경계를 사용합니다.
- 머클 - 머클 뿌리 해시의 공간 효율적인 계산 및 포함 증명.
- SkipList- 매우 빠른 GO SkipList 구현.
- SkipList -GO에서 SkipList 구현.
- TREAP- 트리 힙을 사용하여 지속적이고 빠른 정렬 된 맵.
- TREEMAP- 후드 아래의 빨간색 블랙 트리를 사용하는 일반적인 키 소싱 맵.
파이프
- Ordered -Concurrently- 동시에 작동하고 입력 순서대로 채널에서 출력을 반환하는 GO 모듈.
- 파라페 - 메시지 및 결과 순서를 유지하면서 각 단계에서 실행과 유사한 FIFO 파이프 라인.
- 파이프 라인-팬인 및 팬 아웃이있는 파이프 라인 구현.
⬆ 위로 돌아갑니다
데이터 베이스
캐시
만료 된 레코드, 메모리 내 분산 데이터 저장소 또는 파일 기반 데이터베이스의 메모리 하위 집합이있는 데이터 저장소.
- 2Q -2Q 메모리 내 캐시 구현.
- BCACHE- 결국 일관된 분산 인 메모리 캐시 GO 라이브러리.
- BigCache- 데이터의 기가 바이트에 대한 효율적인 키/값 캐시.
- 캐시 - 메모리 키 : 만료 시간, 0 종속성, <100 loc, 100% 적용 범위가있는 가치 저장소.
- CACHE2GO -Memory 키 : 타임 아웃을 기반으로 자동 무효화를 지원하는 값 캐시.
- CACHEGO- 여러 드라이버를위한 Golang 캐시 구성 요소.
- ClusteredBigCache- 클러스터링 지원 및 개별 항목 만료가있는 큰 캐시.
- Coherence-Go-Client- GRPC를 네트워크 전송으로 사용하는 GO 애플리케이션을위한 Oracle Coherence 캐시 API의 전체 구현.
- Couchcache- Couchbase Server에 의해 뒷받침되는 RESTFUL CACHING MICRO Service.
- echovault- 임베드 가능한 분산 내 메모리 데이터 저장소와 호환됩니다.
- FASTCACHE- 많은 수의 항목에 대한 빠른 스레드 안전 수감 캐시. GC 오버 헤드를 최소화합니다.
- GCACHE- 만료 가능한 캐시, LFU, LRU 및 ARC를 지원하는 캐시 라이브러리.
- GDCACHE- Golang에서 구현 한 순수한 비 침입 캐시 라이브러리로,이를 사용하여 자체 분산 캐시를 구현할 수 있습니다.
- GO-CACHE- 유연한 멀티 층 GO 캐싱 라이브러리로 캐시-해당 패턴을 채택하여 메모리 및 공유 캐시를 처리합니다.
- 옵션 잠금, 샤딩, 퇴거 및 만료가 장착 된 GC가없는, 빠르고 일반적인 LRU 해시 맵 라이브러리.
- go-mcache- 빠른 메모리 키 : 가치 저장소/캐시 라이브러리. 포인터 캐시.
- GOCACHE- 여러 매장 (메모리, Memcache, Redis, ...)이있는 완전한 GO 캐시 라이브러리, 체인 가능,로드 가능, 메트릭 캐시 등.
- GOCACHE- 고성능 및 자동 PRUGE 기능을 갖춘 데이터 레이스 무료 GO ACHE 라이브러리
- GroupCache -GroupCache는 캐싱 및 캐시 채무 라이브러리로, 많은 경우에 memcached를 대체 할 수 있습니다.
- ICACHE- 고성능, 일반, 스레드 안전, 제로 의존성 캐시 패키지.
- IMCACHE- 일반적인 메모리 캐시 GO 라이브러리. 만료, 슬라이딩 만료, 최대 항목 제한, 퇴거 콜백 및 샤딩을 지원합니다.
- NSCACHE- 여러 데이터 소스 드라이버를 지원하는 GO 캐싱 프레임 워크.
- OTTER- GO를위한 고성능 잠금 장치 캐시. Ristretto와 친구보다 더 빠릅니다.
- Pocache -Pocache는 선제 적 낙관적 캐싱 전략에 중점을 둔 최소 캐시 패키지입니다.
- STURDYC- I/O 무거운 응용 프로그램을 강력하고 고도로 수행하도록 설계된 고급 동시성 기능이있는 캐싱 라이브러리.
- Theine- 고성능, 적극적인 TTL 만료 및 제네릭을 갖춘 최적의 최적의 메모리 캐시.
- TimedMap- 키 값 쌍이 만료 된 맵.
- TTLCACHE- 아이템 만료 및 제네릭이있는 메모리 캐시.
- TTLCACHE- 각 레코드에 대한 TTL이있는 메모리 인 메모리 키 값 저장.
GO에 구현 된 데이터베이스
- 오소리 - 이동 중 빠른 키 가치 상점.
- BBOLT- GO를위한 임베디드 키/값 데이터베이스.
- Bitcask-Bitcask는 Bitcask On-Disk Layout (LSM+WAL) 덕분에 예측 가능한 읽기/쓰기 성능, 낮은 대기 시간 및 높은 처리량으로 Pure Go로 작성된 임베드 가능하고 지속적이며 빠른 키 값 (KV) 데이터베이스입니다.
- BUNTDB- 사용자 지정 인덱싱 및 공간 지원과 함께 이동하기위한 빠르고, 내장 가능하며, 메모리 내 키/값 데이터베이스.
- 클로버 - 순수한 골란 랑 (Pure Golang)으로 작성된 가벼운 문서 지향 NOSQL 데이터베이스.
- 바퀴벌레 - 확장 가능, 지리적 복제, 트랜잭션 데이터 저장소.
- COFFER- 트랜잭션을 지원하는 간단한 산 키 값 데이터베이스.
- 열-비트 맵 인덱싱 및 트랜잭션을 갖춘 고성능, 원주, 임베드 가능한 메모리 저장소.
- CovenantsQL -CovenantsQL은 블록 체인의 SQL 데이터베이스입니다.
- DATABUNKER- GDPR 및 CCPA를 준수하기 위해 구축 된 개인 식별 정보 (PII) 스토리지 서비스.
- DGRAPH- 확장 가능, 분산, 낮은 대기 시간, 높은 처리량 그래프 데이터베이스.
- DISKV- 집에서 재배 한 디스크 지원 키 가치 저장소.
- Dolt- Dolt - 데이터를위한 git입니다.
- DTF- 분산 거래 관리자. XA, TCC, Saga, 신뢰할 수있는 메시지를 지원합니다.
- ELIASDB- REST API, 문구 검색 및 SQL 유사 쿼리 언어가 포함 된 종속성, 트랜잭션 그래프 데이터베이스.
- Godis- 골란 란은 고성능 Redis 서버 및 클러스터를 구현했습니다.
- GOLEVELDB- GO에서 LevelDB 키/값 데이터베이스 구현.
- HARE- 각 테이블을 Line -Relimited JSON의 텍스트 파일로 저장하는 간단한 데이터베이스 관리 시스템.
- IMMUDB -IMMUMB는 GO에 작성된 시스템 및 응용 프로그램을위한 가볍고 고속 불변 데이터베이스입니다.
- InfluxDB- 메트릭, 이벤트 및 실시간 분석을위한 확장 가능한 데이터 저장소.
- LEDISDB -LEDISDB는 LevelDB를 기반으로 Redis와 같은 고성능 NOSQL입니다.
- Levigo -Levigo는 LevelDB의 GO 래퍼입니다.
- libradb -libradb는 학습을위한 1000 줄 미만의 간단한 데이터베이스입니다.
- LINDB -LINDB는 확장 가능한 고성능 고 가용성 분산 시계열 데이터베이스입니다.
- LOTUSDB- 빠른 K/V 데이터베이스 LSM 및 B+트리와 호환됩니다.
- MILVUS -MILVUS는 관리, 분석 및 검색을 포함시키기위한 벡터 데이터베이스입니다.
- Moss -Moss는 100% GO로 작성된 간단한 LSM 키 가치 저장 엔진입니다.
- NUTSDB -NUTSDB는 순수한 GO로 작성된 간단하고 빠르며 임베드 가능하며 지속적인 키/가치 저장소입니다. 완전히 직렬화 가능한 트랜잭션 및 목록, 세트, 정렬 세트와 같은 많은 데이터 구조를 지원합니다.
- ObjectBox-Go- GO API가있는 고성능 임베디드 객체 데이터베이스 (NOSQL).
- PEBBLE -ROCKSDB/LEVENDB GO에서 키 값 데이터베이스에 영감을주었습니다.
- PILADB- 스택 데이터 구조를 기반으로 한 가벼운 편안한 데이터베이스 엔진.
- Pogreb- 재입학 워크로드를위한 내장 키 가치 저장소.
- Prometheus- 모니터링 시스템 및 시계열 데이터베이스.
- 퍼지 -Go의 표준 라이브러리를 사용하여 작성된 빠르고 간단한 키/가치 저장.
- REDKA -SQLITE로 다시 구현했습니다.
- ROSEDB- LSM+WAL을 기반으로하는 임베디드 KV 데이터베이스는 문자열, 목록, 해시, 세트, ZSET을 지원합니다.
- ROTOM- Golang으로 구축 된 작은 Redis 서버. RESP 프로토콜과 호환됩니다.
- RQLITE- SQLITE를 기반으로 한 경량, 분산, 관계형 데이터베이스.
- Tempdb- 임시 품목에 대한 키 가치 저장.
- TIDB -TIDB는 분산 된 SQL 데이터베이스입니다. Google F1의 디자인에서 영감을 얻었습니다.
- TIEDOT- Golang이 구동하는 NOSQL 데이터베이스.
- UnitDB- IoT, 실시간 메시징 응용 프로그램 용 Fast Timeseries 데이터베이스. github.com/unit-io/unitd 응용 프로그램을 사용하여 tcp 또는 websocket을 통해 pubsub와 함께 unitdb에 액세스하십시오.
- Vasto- 분산 된 고성능 키 가치 저장소. 디스크에서. 최종 일관성. 하아. 서비스 중단없이 성장하거나 축소 할 수 있습니다.
- Victoriametrics- 빠르고 리소스 효과적이고 확장 가능한 오픈 소스 시계열 데이터베이스. Prometheus를위한 장기 원격 저장소로 사용될 수 있습니다. PROMQL을 지원합니다.
데이터베이스 스키마 마이그레이션
- ATLAS- 데이터베이스 툴킷. 회사가 데이터를 더 잘 작동하도록 돕기 위해 설계된 CLI.
- AVRO- SQL Schemas를 발견하여 Avro Schemas로 변환하십시오. 쿼리 SQL을 AVRO 바이트로 기록합니다.
- 바이트베이스 - 안전한 데이터베이스 스키마 변경 및 DevOps 팀의 버전 제어.
- 다윈 - GO를위한 데이터베이스 스키마 진화 라이브러리.
- DBMATE- 가볍고 프레임 워크에 대한 데이터베이스 마이그레이션 도구.
- go-fixtures-Golang의 우수한 내장 데이터베이스/SQL 라이브러리를위한 Django 스타일 고정물.
- GO-PG 이동-GO-PG 마이그레이션 관리를위한 CLI 친화적 인 패키지.
- GO-PG-Migrations- GO-PG/PG로 마이그레이션을 작성하는 데 도움이되는 GO 패키지.
- GOAVRO- AVRO 데이터를 인코딩하고 디코딩하는 GO 패키지.
- Godfish -Database Migration Manager는 기본 쿼리 언어로 작업합니다. Cassandra, MySQL, Postgres, SQLite3에 대한 지원.
- 거위 - 데이터베이스 마이그레이션 도구. 증분 SQL 또는 GO 스크립트를 만들어 데이터베이스의 진화를 관리 할 수 있습니다.
- GORM -SEEDER- GORM ORM의 간단한 데이터베이스 시드기.
- Gormigrate- GORM ORM의 데이터베이스 스키마 마이그레이션 도우미.
- Libschema- 각 라이브러리에서 마이그레이션을 별도로 정의하십시오. 오픈 소스 라이브러리의 마이그레이션. mysql & postgresql.
- 마이그레이션 - 데이터베이스 마이그레이션. CLI 및 GOLANG 도서관.
- Migrator -Dead Simple Go 데이터베이스 마이그레이션 라이브러리.
- Migrator -MySQL 데이터베이스 Migrator는 기능으로 마이그레이션을 실행하고 직관적 인 GO 코드로 데이터베이스 스키마 업데이트를 관리하도록 설계되었습니다.
- Schema -Go Binaries 내부의 데이터베이스/SQL 호환 데이터베이스에 대한 스키마 마이그레이션을 포함하는 라이브러리.
- Skeema -Sharding 및 외부 온라인 스키마 변경 도구를 지원하는 MySQL 용 Pure -SQL 스키마 관리 시스템.
- 소다 - 데이터베이스 마이그레이션, 생성, ORM 등
- SQL 이동 - 데이터베이스 마이그레이션 도구. go-bindata를 사용하여 응용 프로그램에 마이그레이션을 포함시킬 수 있습니다.
- sqlize- 데이터베이스 마이그레이션 생성기. 모델과 기존 SQL에서 SQL 마이그레이션을 생성 할 수 있습니다.
데이터베이스 도구
- Chproxy -Clickhouse 데이터베이스의 HTTP 프록시.
- Clickhouse -Bulk- 작은 삽입물을 수집하고 큰 요청을 클릭 하우스 서버에 보냅니다.
- DBBENCH- 여러 데이터베이스 및 스크립트를 지원하는 데이터베이스 벤치마킹 도구.
- DG- 생성 된 관계형 데이터에서 CSV 파일을 생성하는 빠른 데이터 생성기.
- Dynago- AWS DynamoDB와의 작업을 단순화하십시오.
- Gatewayd- 클라우드 네이티브 데이터베이스 게이트웨이 및 데이터 중심 애플리케이션 구축을위한 프레임 워크. API 게이트웨이와 마찬가지로 데이터베이스.
- go -mysql -mysql 프로토콜 및 복제를 처리하려면 GO 도구 세트.
- Gorm-Multitenancy- GORM 관리 데이터베이스에 대한 다중 테넌시 지원.
- HASQL- 멀티 호스 SQL 데이터베이스 설치에 액세스하기위한 라이브러리.
- OCTILLERY -Sharding 데이터베이스를위한 GO 패키지 (모든 ORM 또는 원시 SQL 지원).
- ONEDUMP- 하나의 명령 및 구성으로 다른 드라이버에서 다른 목적지로의 데이터베이스 백업.
- PG_TIMETABLE- PostgreSQL의 고급 스케줄링.
- PGWEB- 웹 기반 PostgreSQL 데이터베이스 브라우저.
- 준비 - 코드를 변경하지 않고 준비된 SQL 문을 사용하십시오.
- PERST- 발전, 즉시, 실시간, 기존 또는 신규에 대한 고성능 개발, 즉각적인, 실시간, 고성능.
- RDB -2 차 개발 및 메모리 분석을위한 Redis RDB 파일 파서.
- RWDB -RWDB는 여러 데이터베이스 서버 설정에 대한 읽기 복제 기능을 제공합니다.
- Vitess- Vitess는 대규모 웹 서비스를위한 MySQL 데이터베이스의 스케일링을 용이하게하는 서버 및 도구를 제공합니다.
- WESCALE -WESCALE는 응용 프로그램의 확장 성, 성능, 보안 및 탄력성을 향상 시키도록 설계된 데이터베이스 프록시입니다.
SQL 쿼리 빌더
SQL 구축 및 사용을위한 라이브러리.
- BQB- 가볍고 배우기 쉬운 쿼리 빌더.
- BuildSQLX- PostgreSQL 용 Go Database Query Builder Library.
- BUILQ- 이동 중에 SQL 쿼리를 쉽게 빌드하십시오.
- DBQ- GO에 대한 제로 보일러 플레이트 데이터베이스 작업.
- DOTSQL- SQL 파일을 한 곳에 유지하고 쉽게 사용하는 데 도움이되는 GO 라이브러리.
- Gendry- 비 침습적 SQL 빌더 및 강력한 데이터 바인더.
- Godbal- GO를위한 데이터베이스 추상화 계층 (DBAL). SQL 빌더를 지원하고 쉽게 결과를 얻으십시오.
- Goqu- 관용 SQL 빌더 및 쿼리 라이브러리.
- GOSQL -NULL 값이 향상된 SQL 쿼리 빌더.
- HotCoal- 손으로 크래프트 된 SQL을 주입에 대해 고정하십시오.
- Igor- 고급 기능을 지원하고 Gorm과 같은 구문을 사용하는 PostgreSQL의 추상화 계층.
- Jet- 유형 - 안전 SQL 쿼리 작성을위한 프레임 워크 GO에서 데이터베이스 쿼리를 쉽게 변환 할 수있는 기능으로 원하는 임의의 객체 구조로 쉽게 변환 할 수 있습니다.
- ORMLITE- ORM과 같은 기능과 SQLITE 데이터베이스를위한 도우미가 포함 된 경량 패키지.
- Ozzo-DBX- 강력한 데이터 검색 방법 및 DB-Agnostic Query 빌딩 기능.
- QRY- SQL SQL 쿼리가있는 파일에서 상수를 생성하는 도구.
- SG- 표준 SQL (supports : crud)을 생성하기위한 SQL Gen.
- SQ- 유형 - 안전 SQL 빌더 및 GO를위한 구조물 매퍼.
- SQLC- SQL에서 유형 - 안전 코드를 생성합니다.
- SQLF- 빠른 SQL 쿼리 빌더.
- SQLINGO -GO에서 SQL을 구축하는 가벼운 DSL.
- SQRL- SQL 쿼리 빌더, 성능 향상된 다람쥐 포크.
- Squalus- 쿼리를보다 쉽게 수행 할 수있는 GO SQL 패키지 위의 얇은 레이어.
- Squirrel- SQL 쿼리를 구축하는 데 도움이되는 Go 라이브러리.
- XO- 기존 스키마 정의 또는 PostgreSQL, MySQL, SQLite, Oracle 및 Microsoft SQL Server를 지원하는 사용자 정의 쿼리를 기반으로 데이터베이스의 관용 GO 코드를 생성합니다.
⬆ 위로 돌아갑니다
데이터베이스 드라이버
여러 백엔드에 인터페이스
- Cayley- 여러 백엔드를 지원하는 그래프 데이터베이스.
- DSC- SQL, NOSQL, 구조화 된 파일에 대한 Datastore 연결.
- Dynamo- AWS 스토리지 서비스에 대수 및 연결된 데이터 유형을 저장하기위한 간단한 키-값 추상화 : AWS DynamoDB 및 AWS S3.
- Go-Transaction-Manager- 여러 어댑터 (SQL, SQLX, Gorm, Mongo, ...)가있는 트랜잭션 관리자는 트랜잭션 경계를 제어합니다.
- GOKV- 간단한 키 - 값 저장소 추상화 및 GO (Redis, Consul 등
관계형 데이터베이스 드라이버
- Avatica -Database/SQL 용 Apache Avatica/Phoenix SQL 드라이버.
- BGC- GO를위한 BigQuery를위한 Datastore 연결.
- Firebirdsql -Firebird RDBMS SQL 드라이버.
- GO -ADODB -Database/SQL을 사용하는 GO 용 Microsoft ActiveB 객체 데이터베이스 드라이버.
- go -mssqldb -microsoft mssql 드라이버.
- GO -OCI8- 데이터베이스/SQL을 사용하는 GO를위한 Oracle Driver.
- go-sql-driver/mysql-mysql driver for go.
- go -sqlite3 -database/sql을 사용하는 Go 용 Sqlite3 드라이버.
- Godror- ODPI -C 드라이버를 사용하여 GO를위한 Oracle Driver.
- Gofreetds -Microsoft MSSQL 드라이버. 프리드 위로 래퍼로 가십시오.
- KSQL- 간단하고 강력한 Golang SQL 라이브러리
- PGX- Database/SQL에 의해 노출 된 기능을 넘어서 기능을 지원하는 PostgreSQL 드라이버.
- 돼지 - 간단한 PGX 래퍼를 쉽게 실행하고 스캔 할 수 있습니다.
- PQ- 데이터베이스/SQL 용 Pure Go Postgres 드라이버.
- Sqinn -Go- 순수한 GO와 Sqlite.
- SQLHOOKS- 모든 데이터베이스/SQL 드라이버에 후크를 첨부하십시오.
- atrealdb.go -Go를위한 SurrealDB 드라이버.
- YDB-GO-SDK- 기본 및 데이터베이스/SQL 드라이버 YDB (Yandex Database)
NOSQL 데이터베이스 드라이버
- Aerospike-Client-Go- Go Language의 Aerospike 클라이언트.
- ARANGOLITE- ArangoDB의 가벼운 골란 드 드라이버.
- ASC- GO를위한 Aerospike의 Datastore 연결.
- ForestDB- ForestDB에 대한 GO 바인딩.
- Go -Couchbase -Go의 Couchbase 클라이언트.
- GO-MONGOX- 공식 드라이버를 기반으로 한 GO Mongo 라이브러리, 간소화 된 문서 작업, 컬렉션에 대한 스트러크의 일반적인 바인딩, 내장 CRUD, 집계, 자동화 된 필드 업데이트, 구조적 유효성 검사, 후크 및 플러그인 기반 프로그래밍을 특징으로합니다.
- Go -Pilosa- Pilosa를위한 Go Client Library.
- Go -Rejson -Redigo Golang 클라이언트를 사용하는 RedisLabs의 Rejson 모듈을위한 Golang 클라이언트. JSON으로 구조를 저장하고 조작하여 Redis의 객체를 쉽게 보관하십시오.
- GOCB- 공식 Couchbase Go SDK.
- Gocosmos- Azure Cosmos DB 용 REST 클라이언트 및 표준
database/sql
드라이버. - GOCQL- Apache Cassandra의 언어 드라이버.
- Godis -Jedis에서 영감을 얻은 Golang의 Redis Client 구현.
- GodScache- Memcached를 사용하여 캐싱을 추가하는 Google Cloud Platform Go Datastore 패키지의 래퍼.
- GOMEMCACHE -GO 프로그래밍 언어를위한 Memcache 클라이언트 라이브러리.
- GomemCached- SASL과 함께 일관된 해싱을 사용하여 샤딩을 지원하는 바이너리 멤버 클라이언트.
- GoreThink -RethinkDB의 언어 드라이버.
- GORIAK- RIAK KV를위한 Go Language 드라이버.
- Kivik -Kivik은 CouchDB, PouchDB 및 유사한 데이터베이스를위한 일반적인 Go 및 Gopherjs 클라이언트 라이브러리를 제공합니다.
- MGM- GO 용 MongoDB 모델 기반 ODM (공식 MongoDB 드라이버 기반).
- MGO- (인사되지 않은) MongoDB 드라이버는 표준 GO 관용구에 따른 매우 간단한 API에서 풍부하고 잘 테스트 된 기능을 구현하는 GO 언어를위한 MongoDB 드라이버.
- Mongo-Go-Driver- Go Language의 공식 몽고 드 운전자.
- neo4j -golang에 대한 Neo4j Rest API 바인딩.
- neo4j -go -Golang의 Neo4j Rest Client.
- NEOISM -Golang의 Neo4j 클라이언트.
- QMGO- GO를위한 MongoDB 드라이버. 공식 MongoDB 드라이버를 기반으로하지만 MGO와 같이 사용하기 쉽습니다.
- REDEO -REDIS -PROTOCOL 호환 TCP 서버/서비스.
- REDIGO -REDIGO는 REDIS 데이터베이스의 GO 클라이언트입니다.
- Redis -Golang의 Redis Client.
- Rueidis- 자동 파이프 라인 및 서버 보조 클라이언트 측 캐싱을 갖춘 빠른 Redis Resp3 클라이언트.
- XREDIS- TypeSafe, 사용자 정의 가능, 깨끗하고 사용하기 쉬운 Redis 클라이언트.
검색 및 분석 데이터베이스
- Clickhouse -Go-
database/sql
호환성과 함께 GO를위한 ClickHouse SQL 클라이언트. - effdsl- elasticsearch query builder for go.
- 탄성 - GO를위한 Elasticsearch 클라이언트.
- ElasticsQL -GO에서 SQL을 Elasticsearch DSL로 변환합니다.
- Elastigo -Elasticsearch 클라이언트 라이브러리.
- go -elasticsearch- Go의 공식 Elasticsearch 클라이언트.
- GOS -ELASTICSEARCH와 상호 작용하는 라이브러리.
- Skizze- 확률 적 데이터 구조 서비스 및 스토리지.
⬆ 위로 돌아갑니다
날짜 및 시간
날짜와 시간 작업을위한 도서관.
- 대략 - 며칠, 몇 주 및 몇 년 안에 구문 분석/인쇄 기간을 지원하는 기간 확장.
- CARBON- DateTime을위한 단순하고 의미 론적이며 개발자 친화적 인 Golang 패키지.
- CARBON- PHP 탄소 라이브러리에서 포팅 된 많은 UTIL 방법을 갖춘 간단한 시간 연장.
- CRONRANGE -PARSES CRON 스타일의 시간 범위 표현식, 주어진 시간이 범위 내에 있는지 확인하십시오.
- 날짜-날짜, 날짜 범위, 시간 유출, 기간 및 시간으로 작업하는 시간을 보강합니다.
- DateParse -Parse Date는 미리 형식을 알지 못합니다.
- DURAFMT- GO를위한 시간 지속 시간 서식 라이브러리.
- Feiertage- 독일의 공휴일을 계산하는 기능 세트. 독일 주 (Bundesländer)의 전문화. 부활절, 오순절, 추수 감사절과 같은 것들 ...
- Go -antime -Parse Dates/Times "다음 12 월 22 일 오후 3시"와 같은 범위는 "오늘부터 다음 목요일까지"와 같은 범위를 미리 알지 못합니다.
- go -datebin- 간단한 datetime parse pkg.
- Go-Persian-Calendar- Go (Golang)에서 페르시아 (Solar Hijri) 달력의 구현.
- go -str2duration- 문자열을 지속 시간으로 변환합니다. 지원 시간.
- GO -SUNRISE- 주어진 위치의 일출 및 일몰 시간을 계산하십시오.
- Go -Week- ISO8601 주 날짜와 함께 작동하는 효율적인 패키지.
- Gostradamus- 날짜로 작업하기위한 GO 패키지.
- ISO8601- regex없이 ISO8601 날짜 시간을 효율적으로 구문 분석합니다.
- KAIR- 날짜 및 시간 -Golang 서식 라이브러리.
- 이제 - 이제 Golang의 시간 툴킷입니다.
- Strftime -C99- 호환 스트프 프프 타임 포맷터.
- Timespan- 시간 간격과 상호 작용하고 시작 시간 및 지속 시간으로 정의됩니다.
- Timeutil- Golang의 시간 패키지에 유용한 확장 (Timedelta, Strftime, ...).
- 화요일 - 루비 호환 스트프 피스 타임 기능.
⬆ 위로 돌아갑니다
분산 시스템
분산 시스템을 구축하는 데 도움이되는 패키지.
- ARPC-보다 효과적인 네트워크 통신, 양방향 호출, 알림, 방송 지원.
- Bedrock- GO에서 서비스를 신속하게 개발하고 더 많은 사용 사례 별 프레임 워크를 개발하기위한 최소한의 모듈 식 및 복합 가능한 기초를 제공합니다.
- 모세관 - 분산 배치 데이터 처리 프레임 워크.
- Celeriac- 셀러리 노동자, 작업 및 이벤트의 상호 작용 및 모니터링에 대한 지원을 추가하기위한 도서관.
- 일관성 - 경계 하중으로 일관된 해싱.
- CENTERTHENTASH- 구성 가능한 복제본으로 일관된 해싱.
- DHT -BITTORRENT KADEMLIA DHT 구현.
- Digota -GRPC 전자 상거래 마이크로 서비스.
- 하다