nikos912000 / graphql-kotlin

Libraries for running a GraphQL server in Kotlin

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

GraphQL Kotlin

Build Status codecov Awesome Kotlin Badge

GraphQL Kotlin consists of number of libraries that aim to simplify GraphQL integration for Kotlin applications.

📦 Modules

⌨️ Usage

Below is a basic example of how graphql-kotlin-schema-generator converts your Kotlin code into a GraphQL schema. For more details, see our documentation below or in the individual module READMEs

// Your existing Kotlin code

data class Widget(val id: Int, val value: String)

class WidgetService {
  fun widgetById(id: Int): Widget? {
    // grabs widget from a data source, might return null
  }
}

// Generate the schema

val config = SchemaGeneratorConfig(supportedPackages = listOf("org.example"))
val queries = listOf(TopLevelObject(WidgetService()))

toSchema(config, queries)

will generate

type Query {
  widgetById(id: Int!): Widget
}

type Widget {
  id: Int!
  value: String!
}

📋 Documentation

Examples and documentation are available on our documentation, or in each module README file.

If you have a question about something you can not find in our documentation, the indivdual modules, or javadocs, feel free to create an issue and tag it with the question label.

👥 Contact

This project is part of Expedia Group open source but also maintained by a dedicated team

✏️ Contributing

To get started, please fork the repo and checkout a new branch. You can then build the library locally with Maven

mvn clean install

See more info in CONTRIBUTING.md

⚖️ License

This library is licensed under the Apache License, Version 2.0

About

Libraries for running a GraphQL server in Kotlin

License:Apache License 2.0


Languages

Language:Kotlin 97.3%Language:JavaScript 2.0%Language:Shell 0.4%Language:HTML 0.2%Language:CSS 0.0%