linksplatform / linksplatform/Data.Doublets.Gql

Nim Doublets Adapter via GraphQL client + Native DLL

Open
#22 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

good first issue help wanted reward
Dominant language
Rust
Stars
9
Forks
2
PR merge metrics
No merged PRs in 30d

Description

500 RUB reward can be claimed by anyone who completes this task.

This adapter should provide standard Doublets CRUD operations API in the native to Nim code style (the most commonly used one).
The libraries' architecture should take in account the ability to swap GraphQL with a native library that will be shipped later (when we finish translation to C++).
The GraphQL client layer should be usable separately as well as native to Nim's API.
There should be 3 packages for Nimble:
1. Platform.Data.Doublets.Native (DLL api wrapped in Nim only)
2. Platform.Data.Doublets.Gql.Client (GraphQL client to doublets only)
3. Platform.Data.Doublets.Client (Abstract API for both Platform.Data.Doublets.Native and Platform.Data.Doublets.Gql.Client)

![6EBCBF8A-E595-4A4A-B721-DCAA655E3F49](https://user-images.githubusercontent.com/1431904/144573030-5431ad7c-caa8-499d-a919-f8ca90049297.jpeg)

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the existing GraphQL client and native DLL boundary, then map the proposed Nimble packages: Platform.Data.Doublets.Native, Platform.Data.Doublets.Gql.Client, and Platform.Data.Doublets.Client. Done means the three packages expose standard Doublets CRUD operations, the GraphQL client works independently, and the abstract client can use either implementation.

Written by the indexing model from the issue text.

Assessment

Tech stack
graphql, nim
Domain
api, backend-api-design
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.