#+TITLE: kolam #+MACRO: ci-badge [[https://ci.systemreboot.net/jobs/$1][https://ci.systemreboot.net/badge/$1.svg]] {{{ci-badge(kolam-with-guile-3.0)}}} {{{ci-badge(kolam-with-guile-3.0-latest)}}} {{{ci-badge(kolam-website)}}} kolam is a [[https://graphql.org/][GraphQL]] implementation for Scheme. kolam features a parser to parse and serialize GraphQL documents, a type system to create GraphQL schemas, an execution engine to execute GraphQL queries, and a HTTP handler to implement a HTTP GraphQL endpoint. * Download Download release tarballs. - 2022-01-05 [[./releases/kolam-0.1.0.tar.lz][kolam-0.1.0.tar.lz]] [[./releases/kolam-0.1.0.tar.lz.asc][GPG Signature]] Download [[https://systemreboot.net/about/arunisaac.pub][public signing key]]. Browse the [[https://git.systemreboot.net/kolam][development version]] of kolam hosted in a git repository. * Portability Currently, kolam only supports GNU Guile. But, kolam wishes to support other Scheme implementations and patches improving its portability are welcome. * Contributing kolam only implements a subset of the [[https://spec.graphql.org/][GraphQL spec]], but aims to be more complete. Here is a rough roadmap. Your help is welcome! Please write to [[mailto:arunisaac@systemreboot.net][arunisaac@systemreboot.net]]. - [X] Parse GraphQL documents to scheme - [X] Serialize parsed documents back to GraphQL - Type system - [X] Object types - [X] Scalar types (built-in and custom) - [X] Enumeration types - [X] List types - [X] Non-null types - [ ] Interfaces - [ ] Union types - [ ] Input types - [ ] Validate GraphQL queries - Execute GraphQL queries - [X] Query operations - [ ] Mutation operations - [ ] Subscription operations - [X] Field aliases - [ ] Fragments - [ ] Parameterized queries - [ ] Schema introspection - [X] HTTP endpoint * License kolam is free software released under the terms of the [[https://www.gnu.org/licenses/agpl.html][GNU Affero General Public License]], either version 3 of the License, or (at your option) any later version. * What does "kolam" mean? A [[https://en.wikipedia.org/wiki/Kolam][kolam]] is a traditional Tamil decorative art form. It is an intricate geometrical drawing composed of straight lines, curves and loops, drawn around a grid pattern of dots.