Showing 25 open source projects for "interface"

View related business solutions
  • $300 Free Credits for Your Google Cloud Projects Icon
    $300 Free Credits for Your Google Cloud Projects

    Start building on Google Cloud with $300 in free credits. No commitment, no credit card required until you're ready to scale.

    Launch your next project with $300 in free Google Cloud credits—no strings attached. Test, build, and deploy without risk. Use your credits across the entire Google Cloud platform to find what works best for your needs. After your credits are used, continue with always-free tier services. Only pay when you're ready to scale. Sign up in minutes and start exploring.
    Start Free Trial
  • MongoDB Atlas runs apps anywhere Icon
    MongoDB Atlas runs apps anywhere

    Deploy in 115+ regions with the modern database for every enterprise.

    MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
    Start Free
  • 1
    env

    env

    A simple and zero-dependencies library to parse environment variables

    ...If you have a type that is not supported out of the box by the lib, you are able to use (or define) and pass custom parsers (and their associated reflect.Type) to the env.ParseWithFuncs() function. Env supports by default anything that implements the TextUnmarshaler interface. That includes things like time.Time for example. The upside is that depending on the format you need, you don't need to change anything. The downside is that if you do need time in another format, you'll need to create your own type. By default, slice types will split the environment value on ,; you can change this behavior by setting the envSeparator tag. ...
    Downloads: 8 This Week
    Last Update:
    See Project
  • 2
    Artalk

    Artalk

    Your Self-hosted Comment System

    Artalk is a modern, self-hosted comment system designed to provide a fast, privacy-focused alternative to third-party commenting platforms for blogs, websites, and web applications. It combines a lightweight frontend written in vanilla JavaScript with a high-performance backend powered by Go, enabling efficient cross-platform deployment and low resource usage. The system is framework-agnostic, allowing it to be integrated into virtually any frontend stack without dependency conflicts or...
    Downloads: 6 This Week
    Last Update:
    See Project
  • 3
    LangChainGo

    LangChainGo

    LangChain for Go, the easiest way to write LLM-based programs in Go

    ...The framework emphasizes composability, making it easy to create complex pipelines that integrate LLMs with external data sources, APIs, and tools. It supports multiple providers including OpenAI, Anthropic, Google, and local models, offering a unified interface for interacting with different backends. LangChainGo also includes support for embeddings, semantic search, and retrieval-augmented generation, enabling developers to build data-aware applications. With built-in abstractions for agents and tool usage, it enables the creation of systems that can reason, take actions, and interact with their environment.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 4
    AndroidLibXrayLite

    AndroidLibXrayLite

    Lightweight Android library that bundles the Xray networking core

    AndroidLibXrayLite is a lightweight Android library that bundles the Xray networking core as an embeddable component for apps. Its purpose is to provide a minimal, size-optimized build of the native core with a clear Java/Kotlin interface to start, stop, and configure network tunnels. By exposing the core as an AAR with per-ABI artifacts, it keeps application footprints small while supporting common CPU architectures. The library abstracts process management and log streaming so host apps can control lifecycles and capture diagnostics. It’s particularly useful for developers who want to integrate secure, rule-based proxying into their own Android apps without re-implementing the native glue. ...
    Downloads: 16 This Week
    Last Update:
    See Project
  • Auth0 B2B Essentials: SSO, MFA, and RBAC Built In Icon
    Auth0 B2B Essentials: SSO, MFA, and RBAC Built In

    Unlimited organizations, 3 enterprise SSO connections, role-based access control, and pro MFA included. Dev and prod tenants out of the box.

    Auth0's B2B Essentials plan gives you everything you need to ship secure multi-tenant apps. Unlimited orgs, enterprise SSO, RBAC, audit log streaming, and higher auth and API limits included. Add on M2M tokens, enterprise MFA, or additional SSO connections as you scale.
    Sign Up Free
  • 5
    OpenAI Go

    OpenAI Go

    The official Go library for the OpenAI API

    OpenAI Go is the official Go client library for accessing the OpenAI API. It enables developers to integrate OpenAI’s models and features into Go applications with a clean and idiomatic interface. The library provides support for a wide range of API endpoints including chat completions, assistants, embeddings, image generation, audio processing, and batch jobs. It includes built-in tools for handling authentication, managing API requests, and parsing structured responses. The repository also offers examples to help developers quickly set up projects and test different API calls. ...
    Downloads: 6 This Week
    Last Update:
    See Project
  • 6
    retry

    retry

    Simple golang library for retry mechanism

    Simple library for retry mechanism. Context allow to set context of retry default are Background context. Return the direct last error that came from the retried function default is false (return wrapped errors with everything) WithTimer provides a way to swap out timer module implementations. This primarily is useful for mocking/testing, where you may not want to explicitly wait for a set duration for retries. DelayTypeFunc is called to return the next delay to wait after the retriable...
    Downloads: 6 This Week
    Last Update:
    See Project
  • 7
    migrate

    migrate

    Database migrations, CLI and Golang library

    ...When in doubt, fail. Package migrate reads migrations from sources and runs them against databases. Sources are defined by the `source.Driver` and databases by the `database.Driver` interface. The driver interfaces are kept "dump", all migration logic is kept in this package.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 8
    gqlgen

    gqlgen

    Go generate based graphql server library

    gqlgen is a Go library for building GraphQL servers without any fuss. You get to Define your API using the GraphQL Schema Definition Language. You should never see map[string]interface{} here. We generate the boring bits, so you can focus on building your app quickly. Still not convinced enough to use gqlgen? Compare gqlgen with other Go graphql implementations. You need to tell gqlgen that it should only fetch friends if the user requested it. gqlgen will be able to automatically bind to strings or ints for models you have written yourself. gqlgen is a schema-first library, before writing code, you describe your API using the GraphQL Schema Definition Language. ...
    Downloads: 5 This Week
    Last Update:
    See Project
  • 9
    cast

    cast

    safe and easy casting from one type to another in Go

    Cast is a Go library that provides easy and safe conversion (casting) between different types in Go programs. Especially when dealing with interface{} or dynamic/reflect-heavy code, it becomes cumbersome to assert types or convert values reliably; cast addresses that by offering a suite of functions to convert from any input to the target type with predictable behaviour. Rather than relying purely on raw type assertions, it offers ToInt, ToString, ToBool, ToTime, etc., and their “error-returning” counterparts like ToIntE. ...
    Downloads: 6 This Week
    Last Update:
    See Project
  • Stop Cyber Threats with VM-Series Next-Gen Firewall on Azure Icon
    Stop Cyber Threats with VM-Series Next-Gen Firewall on Azure

    Native application identity and user-based security for your Azure cloud

    Gain integrated visibility across all traffic in a single pass. Deploy Palo Alto Networks VM-Series to determine application identity and content while automating security policy updates via rich APIs.
    Get a free trial
  • 10
    Cobra

    Cobra

    A Commander for modern Go CLI interactions

    Cobra is a library for creating powerful modern CLI applications, and at the same time a program to generate applications and command files. It provides a simple interface for creating powerful CLI interfaces, and will also generate application scaffolding so you can quickly develop your Cobra-based application. This scaffolding includes easy subcommand-based CLIs, fully POSIX-compliant flags, global, local and cascading flags, among many others. The structure of Cobra is based on commands, flags and arguments. ...
    Downloads: 5 This Week
    Last Update:
    See Project
  • 11
    go-datastructures

    go-datastructures

    A collection of useful, performant, and threadsafe Go datastructures

    ...Requires entities have a uint64 unique identifier. Two implementations exist, regular and sparse. Sparse saves a great deal of space but insertions are O(log n). There are some useful functions on the BitArray interface to detect intersection between two bitarrays. This package also includes bitmaps of length 32 and 64 that provide increased speed and O(1) for all operations by storing the bitmaps in unsigned integers rather than arrays.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 12
    do - Dependency Injection

    do - Dependency Injection

    A dependency injection toolkit based on Go 1.18+ Generics

    ...The library offers a service container that allows developers to register, resolve, and manage application dependencies in a structured and maintainable way. It supports multiple service lifecycles such as eager, lazy, and transient loading, along with circular dependency detection and interface binding. The toolkit is designed to improve modularity, testability, and scalability in Go applications by reducing tight coupling between components. It also includes lifecycle management features like health checks and graceful shutdown handling, making it suitable for production services and microservices. Overall, samber/do delivers a modern, generics-powered alternative to traditional reflection-based DI frameworks in Go.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 13
    goquery

    goquery

    A little like that j-thing, only in Go

    ...See the wiki for various options to do this. Syntax-wise, it is as close as possible to jQuery, with the same function names when possible, and that warm and fuzzy chainable interface. jQuery being the ultra-popular library that it is, I felt that writing a similar HTML-manipulating library was better to follow its API than to start anew (in the same spirit as Go's fmt package), even though some of its methods are less than intuitive (looking at you, index()...).
    Downloads: 2 This Week
    Last Update:
    See Project
  • 14
    Amazon EC2 Instance Selector

    Amazon EC2 Instance Selector

    A CLI tool and go library which recommends instance types

    ...There are over 270 different instance types available on EC2 which can make the process of selecting appropriate instance types difficult. Instance Selector helps you select compatible instance types for your application to run on. The command-line interface can be passed resource criteria like vcpus, memory, network performance, and much more and then return the available, matching instance types. If you are using spot instances to save on costs, it is a best practice to use multiple instances types within your auto-scaling group (ASG) to ensure your application doesn't experience downtime due to one instance type being interrupted. ...
    Downloads: 1 This Week
    Last Update:
    See Project
  • 15
    BTree implementation for Go

    BTree implementation for Go

    BTree provides a simple, ordered, in-memory data structure for Go

    ...The implementation favors minimal allocations and locality, making it attractive for indexing, query engines, and caches that need predictable iteration costs. A simple Item interface with a Less method defines ordering, keeping the API small and flexible for custom types. The library includes benchmarks and optional freelists so users can trade memory reuse for speed in hot paths.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 16
    ws

    ws

    Tiny WebSocket library for Go

    ...High-level wrappers and helpers around API in wsutil package, which allow to start fast without digging the protocol internals. Existing WebSocket implementations do not allow users to reuse I/O buffers between connections in clear way. This library aims to export efficient low-level interface for working with the protocol without forcing only one way it could be used. Library is tagged as v1* so its API must not be broken during some improvements or refactoring. Example applications using ws are developed in separate repository ws-examples. We can apply the same pattern to read and write structured responses through a JSON encoder and decoder.Zero-copy upgrade helps to avoid unnecessary allocations and copying while handling HTTP Upgrade request.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 17
    gokv

    gokv

    Simple key-value store abstraction and implementations for Go

    Simple key-value store abstraction and implementations for Go. Redis, Consul, etcd, bbolt, BadgerDB, LevelDB, Memcached, DynamoDB, S3, PostgreSQL, MongoDB, CockroachDB, and many more. There are detailed descriptions of the methods in the docs and in the code. You should read them if you plan to write your own gokv.Store implementation or if you create a Go package with a method that takes a gokv.Store as a parameter, so you know exactly what happens in the background.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 18
    Uber Go Style Guide

    Uber Go Style Guide

    The Uber Go Style Guide

    This repository holds the Uber Go Style Guide, which documents patterns and conventions used in Go code at Uber. Styles are the conventions that govern our code. The term style is a bit of a misnomer, since these conventions cover far more than just source file formatting—gofmt handles that for us. The goal of this guide is to manage this complexity by describing in detail the Dos and Don'ts of writing Go code at Uber. These rules exist to keep the code base manageable while still allowing...
    Downloads: 0 This Week
    Last Update:
    See Project
  • 19
    Harmonica

    Harmonica

    A simple, physics-based animation library

    Harmonica is a Go animation library based on simple physics simulation. It provides tools for creating smooth, natural motion in 2D and 3D applications. The project includes spring animation behavior that can make interface movement feel more organic than fixed linear transitions. It also includes projectile-style simulation that is useful for particles, motion effects, and game-like interactions. Harmonica can be used with terminal interfaces, Bubble Tea applications, and graphical projects that need realistic movement. Its main value is giving Go developers a small, efficient way to add physically inspired animation without building the math from scratch.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 20
    waybackurls

    waybackurls

    Fetch all the URLs that the Wayback Machine knows about for a domain

    waybackurls is a command-line reconnaissance tool that retrieves historical URLs associated with a given domain by querying the Internet Archive’s Wayback Machine. It accepts input domains via standard input and outputs a list of discovered URLs, making it easy to integrate into pipelines and automated workflows. The tool is particularly valuable in security research, bug bounty hunting, and penetration testing, as it uncovers endpoints that may no longer be publicly linked but still exist...
    Downloads: 4 This Week
    Last Update:
    See Project
  • 21
    Go canvas

    Go canvas

    Canvas is a Go drawing library based on OpenGL

    Canvas is a high-performance 2D rendering library for C++ that mimics the HTML5 Canvas API. It is built using OpenGL for hardware acceleration and offers a simple, familiar interface for developers looking to draw shapes, images, and text in desktop applications or games. Canvas focuses on ease of use, speed, and flexibility, making it suitable for GUI overlays, visualizations, and real-time 2D rendering tasks. Its API is intentionally similar to JavaScript’s Canvas API, lowering the barrier for web developers transitioning into C++ graphics work.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 22
    envconfig

    envconfig

    Golang library to manage configuration data from environment variables

    ...Any field whose type (or pointer-to-type) implements envconfig.Decoder can control its own deserialization. Also, envconfig will use a Set(string) error method like from the flag.Value interface if implemented.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 23
    Structs

    Structs

    Utilities for Go structs

    ...Structs containPackage structs contains various utilities functions to work with structs various utilities to work with Go (Golang) structs. It was initially used by me to convert a struct into a map[string]interface{}. With time I've added other utilities for structs.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 24
    go-cache

    go-cache

    An in-memory key:value store/cache library for Go

    go-cache is an in-memory key:value store/cache similar to memcached that is suitable for applications running on a single machine. Its major advantage is that, being essentially a thread-safe map[string]interface{} with expiration times, it doesn't need to serialize or transmit its contents over the network. Any object can be stored, for a given duration or forever, and the cache can be safely used by multiple goroutines. Although go-cache isn't meant to be used as a persistent datastore, the entire cache can be saved to and loaded from a file (using c.Items() to retrieve the items map to serialize, and NewFrom() to create a cache from a deserialized one) to recover from downtime quickly.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 25
    bytebufferpool

    bytebufferpool

    Anti-memory-waste byte buffer pool

    ...It is particularly useful in high-performance applications where frequent allocation and deallocation of buffers can lead to garbage collection pressure and reduced efficiency. The library provides a simple interface for acquiring and releasing buffers, enabling developers to manage memory more effectively. Its design focuses on concurrency safety and minimal overhead, making it suitable for multi-threaded environments. By recycling buffers, it helps improve application performance and reduce latency. Overall, bytebufferpool is a practical utility for optimizing memory usage in Go applications.
    Downloads: 0 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • Next
Auth0 Logo