Skip to content
View malikhan-dev's full-sized avatar
🏠
ZenQL
🏠
ZenQL

Block or report malikhan-dev

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
malikhan-dev/README.md

Mohammadreza Malikhan

Backend developer specializing in Go (Golang) and C#, focused on building efficient systems, reusable libraries, and clean backend architectures.

zenql-logo

🌐 Project ZenQL

Expressive, Polymorphic Queries with Streaming Capabilities and a User-Friendly API, inspired by LINQ.

Explore the Repository Β»


πŸ“– About zenql

zenql is an open-source Go DSL inspired by LINQ. It brings expressive querying, streaming, and pipeline execution to slices and various async data sources (such as CSV or JSON Files, MySql Or Postgres databases and etc...). zenql enables efficient processing for high-throughput workloads and large datasets.

The goal is to make data querying in Go more powerful and readable while staying aligned with Go's design principles.

✨ Key Features

  • Fluent & Expressive: A clean, LINQ-like query syntax.
  • Performance-Aware: Designed for high-throughput and efficiency.
  • Versatile: Seamlessly works with slices and external data sources.
  • Developer Experience: Clean, intuitive, and easy to maintain.
  • Data Streaming: Optimized for handling large datasets without overhead.

πŸš€ Developer Friendly

ctx, cancel := context.WithCancel(context.Background())
defer cancel()

var CsvStreamConfig contracts.CsvStreamConf[customer]

if stream:= streams.FromCsv(ctx,CsvStreamConfig);stream.Initiated{
	data := stream.FilterStream(func(c customer) bool {return c.Index > 0}).TakeAll()
} else {
	fmt.Println(stream.err)
}

res := collections.From(UserList).Where(func(user Users) bool {
										return collections.From(user.Addr).Any(func(address Address) bool {
																				return address.City == "Karaj"}).Assert()}).Collect()

πŸ’» About Me

  • Backend developer with a focus on DDD, Microservices,TDD
  • Working primarily with Go, .NET / C# and Blazor WebAseembly
  • Interested in systems design, performance optimization, and library development
  • Creator and main developer of the Zen-Q Go package

πŸ›  Tech Stack

Languages

Go, C#

Technologies & Tools

Golang, Gin, .NET, Asp.Net, Blazor WebAseembly,Linux ,PostgreSQL, Mongodb, Redis, REST APIs and etc

πŸ’‘ Development Principles

  • Write tested,documented, clear and maintainable code
  • Prefer simple and meaningful designs
  • Optimize performance where it matters
  • Build tools that improve the developer experience

πŸ“« Contact

GitHub: https://github.com/malikhan-dev

email: malikhan.dev2020@gmail.com

Pinned Loading

  1. zenql zenql Public

    ZenQL is an internal DSL for Go that provides expressive querying and streaming pipelines over in-memory and async data sources. While inspired by the elegance of C# LINQ, it is built with its own …

    Go 32 2