Skip to content

gloo.foo

Shell-style programming framework for Go

Go Version License GitHub Stars

What is gloo.foo?

gloo.foo is a Go framework for building composable, shell-style commands. Create commands that pipe together like Unix utilities, but with Go's type safety, performance, and zero-dependency portability.

// Build pipelines with composable commands
pipeline := gloo.Pipe(
    mycommands.Read("input.txt"),
    mycommands.Filter(criteria),
    mycommands.Transform(options),
    mycommands.Write("output.txt"),
)

err := gloo.Run(pipeline)

Why gloo.foo?

Shell composability meets Go reliability:

  • 🐚 Familiar patterns - Commands pipe together naturally
  • 🔥 Type safety - Catch errors at compile time
  • Performance - In-memory operations, no subprocess overhead
  • 📦 Zero dependencies - Single binary, works anywhere
  • 🧩 Modular - Each command is an independent Go module
  • 🌍 Extensible - Third-party commands work seamlessly

Quick Start

go get github.com/gloo-foo/framework
package mycommand

import gloo "github.com/gloo-foo/framework"

type flags struct {
    IgnoreCase bool
}

type command gloo.Inputs[gloo.File, flags]

func New(pattern string, parameters ...any) gloo.Command {
    return command(gloo.Initialize[gloo.File, flags](append(parameters, pattern)...))
}

func (c command) Executor() gloo.CommandExecutor {
    return gloo.Inputs[gloo.File, flags](c).Wrap(
        gloo.LineTransform(func(line string) (string, bool) {
            // Your processing logic here
            return line, true
        }).Executor(),
    )
}

func IgnoreCase(f *flags) { f.IgnoreCase = true }

Learn More


Built for developers who want shell power with Go reliability

FrameworkDocumentationExamplesDiscussions

Pinned Loading

  1. framework framework Public

    Gloo Foo - The power of shell pipes glue, pure Go

    Go 1

  2. pipe pipe Public

    Go 1

Repositories

Showing 6 of 6 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…