Skip to content

sudosz/go-utils

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Go Utils - High-Performance Toolkit

Go Reference License Go Report Card

Go Utils is a curated collection of high-performance, production-ready Go utility functions and packages. Designed for speed, efficiency, and robustness, these utilities have been rigorously tested and optimized for demanding applications.

Key Features:

  • Performance-Focused: Leveraging unsafe optimizations and efficient algorithms for maximum speed.
  • Production-Ready: Battle-tested across numerous production environments.
  • Comprehensive Suite: Covering a wide range of utility needs from string manipulation to concurrency management.
  • Well-Documented: Ensuring reliability and ease of use.

Packages

Package Description
bytesutils Optimized byte manipulation utilities.
cacheutils High-performance caching implementations.
channelutils Robust channel utilities with comprehensive testing.
gopool Efficient goroutine pool management for concurrent tasks.
intutils Optimized integer manipulation functions.
iterutils Flexible iterator implementations for data processing.
net Networking utilities, including HTTP client helpers and user agent parsing.
poolutils Versatile pool implementations (LRU, limited, recycler) for resource management.
sliceutils Optimized slice manipulation utilities for common operations.
stringutils String manipulation with unsafe optimizations for critical performance paths.
terminalutils ANSI terminal utilities for rich command-line interfaces.

Installation

go get github.com/sudosz/go-utils

Usage

Import the specific package you need:

import (
        "fmt"
        stringutils "github.com/sudosz/go-utils/strings"
)

func main() {
        result := stringutils.ToLower("EXAMPLE STRING")
        fmt.Println(result) // Output: example string
}

Contributing

Contributions are highly encouraged! Please follow these guidelines:

  1. Fork the repository.
  2. Create a feature branch (git checkout -b feature/your-feature).
  3. Implement your changes and write thorough tests.
  4. Ensure code adheres to gofmt and golint.
  5. Submit a pull request with a clear description of your changes.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages