The New Classical Age of GraphQL: Project Artemis

Artemis Labs OS
Artemis Labs (Open Source)
4 min readDec 14, 2019

Dynamic Data; this is a topic that has become the new focal point as Software Engineers are moving into the roaring 20s. The recent migration from RESTful architecture into using GraphQL for developing APIs has been an up and coming trend in the developer climate as the nodal nature allows for decentralization and reusable abstraction. Yet, there has been a need for testing these capabilities in the Chrome Web Store and offline for product development; competent tooling still does not meet the gap in usage, especially tools that are open sourced.

https://chrome.google.com/webstore/detail/project-artemis/gpncgocimlpojfgbphndpjgkkhdjhnpb?authuser=0

GraphQL usage from 2018-end of 2019 Snapshot taken Dec 14, 2019.

One of the most prevalent data graph platforms Apollo GraphQL is used by millions of developers to facilitate customized client endpoints and querying logic, yet much of their tooling is either closed sourced or not yet existing, leading to decreased accessibility and connectivity for the Apollo developer community and lags in deployment time. Frontend engineers need a more efficient gateway when testing their applications without the need for a server or constant API restructuring.

Project Artemis is an Open Sourced client developer tool for endpoint testing of GraphQL queries in Apollo Client that is fast, independent, and dynamic to scale in performance. The web based extension is best used for React and Express products and applications before developers are ready to release their products to deployment phase.

*In Greek Mythology, Artemis is the twin sister of Apollo, and our client side developer tool was inspired by the unfulfilled demand for proper dev tooling with client side caching available in the Chrome Web Store. Artemis Dev Tool illustrates the dynamic open sourced capabilities for GraphQL data management.

Our Launch release will happen in the next few days, first to the Chrome Web Store and then as an npm package.

Core features include monitoring performance, query data visualization, caching and each session includes a session history of past requests and mutations whilst using introspection to enhance developer experience.

Project Artemis on Github: Currently our project is not yet launched, so it is still privatized, but once released to the web store on Dec 19, 2019 we will be open to open source contributions on our Repo.

https://github.com/ArtemisLabsLLP/Artemis-dev-tool

Artemis Dev Tool can be downloaded in the Google Chrome Web Store, and accessed in the inspector window. For Web Applications that use Apollo Client GraphQL schemas, query endpoint testing and cache management can be done in real time for instant engineering feedback without the need for backend resolver testing.

Our goal is to create a tool that is fluid , systematic and dynamic for optimal graph management. Furthermore, rather than making the tool solely UI/UX friendly, we aimed at mapping it to cater the needs of a developer in a rush to get their Apollo Project started, so we focused on Developer Interface/Developer Experience, or DI/DX derived. The introspection tree along with other graphical representations of the same schema allow us to brainstorm alternative methodologies based on the new way at how we acknowledge data and its relation. Based on better introspection, we can then develop a more robust backend of resolvers to cater to this single endpoint.

The contrast between antiquated patterns like REST and malleable ones like GraphQL, is RESTful is clear and precise and therefore predictable. However, in terms of tradeoffs it seems that this migration is worth the cost, because now our system has become effortlessly scaleable through permutations. In 2019 large firms like Netflix and Twitch have already been converting their baseline entirely into GraphQL and this seems to be more than just a trend.

When we move into 2020 as a growing Tech population, we are inclined to make certain resolutions to improve the way we work with data. But we first need to reflect upon the way we acknowledge and view out data. The roaring 20’s will be the age of agile development and speed, seamless integration systems, and mass decentralization.

--

--