Zero Dependencies
Pure Go implementation with no external dependencies. Just add to your project and start using.
dplyr-inspired data manipulation with full type safety and zero dependencies

Install plyGO with a single command:
go get github.com/mansoldof/plyGOCreate your first data pipeline in seconds:
package main
import "github.com/mansoldof/plyGO"
type Person struct {
Name string
Age int
Salary float64
}
func main() {
people := []Person{
{"Alice", 30, 75000},
{"Bob", 25, 60000},
{"Charlie", 35, 90000},
}
plygo.From(people).
Where("Age").GreaterThan(30).
OrderBy("Salary").Desc().
Show()
}plyGO brings the elegance of R's dplyr to Go, making data manipulation intuitive and enjoyable. Chain operations together to build complex data pipelines with minimal code.
// Filter, select, and transform in one pipeline
result := plygo.From(employees).
Where("Department").Equals("Engineering").
Select("Name", "Salary").
OrderBy("Salary").Desc().
Collect()Unlike reflection-heavy alternatives, plyGO uses Go generics to provide compile-time type safety while maintaining flexibility.
// Type-safe operations with struct inference
filtered := plygo.From(people).
Where("Age").GreaterThan(25).
Where("Salary").LessThan(80000).
Collect()Designed with Go's philosophy in mind: simple, efficient, and reliable. No magic, no surprises, just clean code that works.
Learn the fundamentals
Master the basics
Real-world use cases
MIT License