Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. GraphQL
  3. Artemis

Artemis

MITDartv7.13.0-beta.2

A discontinued Dart code generator that builds type-safe Dart classes from GraphQL schemas and queries.

GitHubGitHub
491 stars129 forks0 contributors

What is Artemis?

Artemis was a code generation tool for Dart and Flutter that automatically created type-safe Dart classes from GraphQL schemas and query files. It parsed GraphQL SDL and query documents to generate `.graphql.dart` files, providing compile-time type safety and reducing manual boilerplate when working with GraphQL APIs. The project has been discontinued, with users encouraged to migrate to alternatives like Ferry or graphql_codegen.

Target Audience

Dart and Flutter developers building applications that consume GraphQL APIs and who want type-safe client-side code generation.

Value Proposition

Developers chose Artemis for its Apollo-like type generation in the Dart ecosystem, offering automated, schema-driven code generation with configurable scalar mapping and naming schemes to ensure robust type safety.

Overview

Build dart types from GraphQL schemas and queries

Use Cases

Best For

  • Generating type-safe Dart models from GraphQL schemas in Flutter apps
  • Automating boilerplate code for GraphQL API clients in Dart projects
  • Ensuring compile-time validation of GraphQL queries and mutations
  • Mapping custom GraphQL scalars to Dart types with custom parsers
  • Configuring multiple schema mappings for complex GraphQL architectures
  • Migrating from JavaScript Apollo tooling to a Dart/Flutter equivalent

Not Ideal For

  • New projects requiring long-term maintenance and active community support
  • Teams that need seamless integration with modern Flutter state management libraries like Riverpod or Bloc
  • Developers looking for up-to-date features such as real-time subscriptions or advanced caching strategies
  • Projects where minimizing migration effort to newer GraphQL tools is a priority

Pros & Cons

Pros

Type-Safe Code Generation

Automatically generates Dart classes from GraphQL schemas, ensuring compile-time validation and reducing manual boilerplate, as highlighted in the type-safe features section.

Custom Scalar Mapping

Supports mapping custom GraphQL scalars to Dart types with configurable parsers, allowing for complex data handling, detailed in the custom scalars configuration.

Flexible Configuration

Offers extensive options via build.yaml for schema mapping and output control, enabling tailored code generation for different project needs, as shown in the schema mapping table.

Query Helper Generation

Generates GraphQLQuery subclasses that simplify query execution when used with ArtemisClient, improving developer experience, mentioned in the ArtemisClient section.

Cons

Project Discontinuation

Artemis is no longer maintained, as announced in the README notice, meaning no bug fixes, security updates, or new features will be added, making it risky for production use.

Complex Setup Process

Requires detailed configuration in build.yaml with multiple options like scalar_mapping and schema_mapping, which can be cumbersome and error-prone for developers unfamiliar with the tool.

Tight Coupling to Deprecated Stack

Heavily relies on the gql package and ArtemisClient, making migration to newer tools like Ferry or graphql_codegen challenging and increasing technical debt.

Open Source Alternative To

Artemis is an open-source alternative to the following products:

Apollo Client
Apollo Client

Apollo Client is a comprehensive state management library for JavaScript that enables you to manage both local and remote data with GraphQL.

Frequently Asked Questions

Quick Stats

Stars491
Forks129
Contributors0
Open Issues42
Last commit2 years ago
CreatedSince 2019

Tags

#dart#hacktoberfest#schema-first#graphql#type-safety#api-client#flutter#code-generation#build-tool#apollo

Built With

j
json_serializable
b
build_runner
D
Dart

Included in

GraphQL15.0k
Auto-fetched 18 hours ago

Related Projects

graphql-fluttergraphql-flutter

A GraphQL client for Flutter, bringing all the features from a modern GraphQL client to one easy to use package.

Stars3,273
Forks643
Last commit1 month ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub