Lokasi ngalangkungan proxy:   [ UP ]  
[Ngawartoskeun bug]   [Panyetelan cookie]                
Skip to content
View samber's full-sized avatar
👋
👋

Sponsors

@therealpaulgg
@mralves
@theopenlane
@sdaf47
@matoszz
@Artmann-Technologies
@pthm
@phith0n
@BetterStackHQ
@dash0hq
@Vito-castai
Private Sponsor
@victorfaurschou

Organizations

@Kordam

Block or report samber

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
samber/README.md

Software Engineer · Go Open-Sourcer · GenAI Community Leader · Hackathon Organizer

📍 Nantes, France   |   🌐 samuel-berthe.fr   |   📝 Substack   |   🐦 @samuelberthe   |   🦋 @samber.bsky.social   |   💼 LinkedIn

image

Hi. I'm Samuel. I write Go libraries. It started as a hobby, turned into a side project, and is now my attempt at making open source a full-time job. The jury is still out. The coffee budget is not.

It began the usual way: I needed something at work that didn't exist, built it, and thought "someone else probably needs this too." That pattern never stopped. The most well-known result is lo, a utility library built on Go generics. It's now used in production at companies of all sizes, such as RedHat, VMware, Tencent, Bytedance, Grafana, and many others.

Adoption comes with perks: AI-slop PRs, and the rare keyboard warrior ready to die on a typo 🙃. But honestly? The community around these projects is overwhelmingly kind, sharp, and generous. And I'm grateful for every single one of you. 💖

The ecosystem kept growing from there: monads, dependency injection, caching, structured errors, and 35+ log/slog handlers. If your stack uses Terraform, Kubernetes, the Grafana stack, apps you've definitely opened today (if you're Chinese), or a few places you'd rather not think about 😅 #pr0n — there's a fair chance my code is already quietly running somewhere.

On the community side: I started the Generative AI meetup in Nantes (Fr) from scratch: no audience, no budget, no certainty anyone would show up. It became the largest GenAI meetup in France 🇫🇷. I also run hackathons, speak at conferences, and write on Substack.

If your team ships with any of my libraries and you want to help me keep doing this, sponsoring on GitHub goes a long way. No SLA included, but bugs get fixed with genuine enthusiasm.

My lifetime goal? git push --force into a satellite. Just kidding. Well... maybe not entirely.


The Go Toolkit

Turns out Go generics unlock a lot. I'm still finding out how much.

Library What it does
🔧 lo Lodash-style helpers for Go: Map, Filter, Reduce, and 90+ more
🌀 mo Monads for Go: Option, Result, Either, Future
⚙️ do Dependency injection with generics for Go
🌊 ro Reactive streams & event-driven programming for Go

Be aware, 22 letters left for my next Go projects. Plenty of runway. 😂😂😂

At this pace I'll own the entire alphabet before Go drops GOPATH from the docs.


The Go slog Ecosystem

Go 1.21 introduced log/slog as the standard structured logger. I built 35+ handlers so you only configure slog once and route logs anywhere:

At some point "just one more handler" stopped being a joke. When you have 1, the next 42 come effortlessly.

Core

Project Description
🔀 slog-multi Fanout, pipeline, routing, and failover between multiple handlers
🎨 slog-formatter Attribute formatting and transformation
🎲 slog-sampling Log sampling policies to reduce high-volume noise
🃏 slog-mock Mock handler for unit testing

HTTP middlewareslog-gin · slog-echo · slog-fiber · slog-chi · slog-http

Monitoring & observabilityslog-logstash · slog-syslog · slog-fluentd · slog-loki · slog-datadog · slog-sentry · slog-otel · slog-graylog · slog-quickwit · slog-rollbar · slog-betterstack

Notificationsslog-slack · slog-telegram · slog-webhook · slog-mattermost · slog-microsoft-teams

Messaging & streamingslog-kafka · slog-nats · slog-channel · slog-parquet

Adaptersslog-zap · slog-zerolog · slog-logrus


Go Utilities

The stuff that didn't fit anywhere else but was too useful to delete.

Project Description
💥 oops Errors with context, stack traces, and structured metadata
🔥 hot In-memory cache: LRU, LFU, TinyLFU, W-TinyLFU, ARC, 2Q, S3FIFO, SIEVE, FIFO, N-random; TTL, sharding
🕸️ go-mod-graph Web-based Go module dependency graph visualizer
🐰 go-amqp-pubsub Resilient pub/sub framework for RabbitMQ, auto-reconnects and binds on network failure
🔁 go-singleflightx x/sync/singleflight with generics and an extended API
📦 go-batchify Group and deduplicate concurrent tasks to reduce downstream load
🔤 go-type-to-string Extract a string representation of any Go type
📏 go-metered-io Drop-in io.Reader/io.Writer that tracks total bytes transferred
🔌 go-tcp-pool TCP connection pool with auto-reconnect as a net.Conn drop-in
📊 go-psi Linux Pressure Stall Information (PSI) reader and starvation notifier
🔍 go-quickwit Go ingestion client for Quickwit search engine
🛡️ go-safe-csv-writer encoding/csv fork that prevents CSV injection and data exfiltration

Claude Code / AI Tooling

AI-native tooling built by someone who spends way too much time inside the tool. You know... dopamine...

Project Description
🛠️ cc Claude Code toolchain and marketplace
cc-caffeine Keep Claude Code alive while commuting, prevents laptop sleep
🧠 cc-skills Reusable AI agent skills for marketing and engineering
🐹 cc-skills-golang AI agent skills purpose-built for production Go projects
🤖 go-playground-mcp MCP server for Go Playground, run and share Go code from your AI assistant
🛡️ the-great-gpt-firewall Curated list of sites blocking AI crawlers via robots.txt
🔢 tiktoken-cli Count LLM tokens in files and directories from the terminal
📊 vscode-token-counter VS Code extension showing live token counts in the status bar

Awesome Collections

Lists of things so you don't have to ChatGPT them at 2am.

Project Description
awesome-prometheus-alerts 1.000 production-ready Prometheus alerting rules for 100 services
📊 awesome-olap Curated list of OLAP databases and analytical query engines
🫟 awesome-user-research Curated list of tools for Product Managers and UX Researchers

Prometheus & Observability

If you can't measure it, you can't get paged on it at 3am.

Alert on everything. Sleep on nothing.

Project Description
awesome-prometheus-alerts 1.000 production-ready Prometheus alerting rules for 100 services
📊 prometheus-query-js JavaScript client for the Prometheus HTTP query API
📈 chartjs-plugin-datasource-prometheus Prometheus datasource plugin for Chart.js
📤 promql-exporter Prometheus exporter that re-exposes PromQL query results as metrics (replacing federation and remote-write for niche use-cases)
🏓 hyperping-exporter Prometheus exporter for Hyperping uptime monitoring
☁️ clevercloud-exporter Prometheus exporter for Clever Cloud infrastructure metrics

Tools & Utilities

Random things? Maybe. Useless? Never.

Project Description
🧾 invoice-as-a-service Generate professional PDF invoices from a single HTTP POST, with S3 upload
📝 headercheck Linter that checks and fixes required file headers, golangci-lint compatible
🔑 sync-ssh-keys Sync server ~/.ssh/authorized_keys from GitHub/GitLab org membership
🔀 git-contrib-graph Git contribution graph rendered in the terminal

Writing & Talks

Occasionally I stop writing code long enough to write words about code, with live demo that goes exactly as planned.

Substack - I write about Go, open-source, and software engineering on Substack. Deep dives into performance engineering, library design, and lessons learned from maintaining high-traffic OSS projects.

Talks - Slides and resources from my conference talks and meetup presentations. Topics include generative AI, performance engineering, observability, Golang, and building open-source communities.

Generative AI meetup replays 🇫🇷 - When my camera does not crash in the middle of the talk.


🚀 Fuel My Work

All those green squares, and yet rent is still due every month.

My open-source libraries ship in production at companies of all sizes, maybe yours too. Sponsorship keeps the libraries maintained, documented, and evolving.

What your sponsorship funds
🐛 Bug fixes & security patches Rapid response to issues affecting production systems
📖 Documentation & examples Real-world patterns, migration guides, and tutorials
🔬 New features & research Exploring what Go can do next
🌍 Community support Answering questions, reviewing PRs, mentoring contributors

Become a sponsor

💎 Corporate Sponsorship Tiers

Ideal for teams that depend on lo, mo, do, oops, or awesome-prometheus-alerts in production.

Tier Benefit
☕️ Individual backers Fuel the coffee machine
🥉 Insider Private channel + early access + roadmap vote
🥈 Supporter Logo in sponsored repos (READMEs and websites)
🥇 Partner Logo everywhere + priority issue response + co-marketing

Contact for partnership

🙏 Thank You, Sponsors

Pinned Loading

  1. lo lo Public

    💥 A Lodash-style Go library based on Go 1.18+ Generics (map, filter, contains, find...)

    Go 21.2k 938

  2. do do Public

    ⚙️ A dependency injection toolkit based on Go 1.18+ Generics.

    Go 2.7k 106

  3. mo mo Public

    🦄 Monads and popular FP abstractions, powered by Go 1.18+ Generics (Option, Result, Either...)

    Go 3.3k 110

  4. oops oops Public

    🔥 Error handling library with context, assertion, stack trace and source fragments

    Go 935 36

  5. cc-skills-golang cc-skills-golang Public

    🧑‍🎨 A collection of Golang agentic skills that works

    Go 1.5k 97

  6. awesome-prometheus-alerts awesome-prometheus-alerts Public

    🚨 Collection of Prometheus alerting rules

    Astro 8k 1.1k