cli VS gqlgen

Compare cli vs gqlgen and see what are their differences.

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
cli gqlgen
253 43
35,275 9,598
1.8% 1.2%
9.7 9.3
4 days ago 5 days ago
Go Go
MIT License MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

cli

Posts with mentions or reviews of cli. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-06.
  • The power of the CLI with Golang and Cobra CLI
    9 projects | dev.to | 6 Apr 2024
    This package is widely used for powerful CLI builds, it is used for example for Kubernetes CLI and GitHub CLI, in addition to offering some cool features such as automatic completion of shell, automatic recognition of flags (the tags) , and you can use -h or -help for example, among other facilities.
  • pyaction 4.28.0 Released
    3 projects | dev.to | 16 Feb 2024
    GitHub CLI 2.44.1
    3 projects | dev.to | 16 Feb 2024
    This Docker image is designed to support implementing Github Actions with Python. As of version 4.0.0., it starts with the official python docker image as the base which is a Debian OS. It specifically uses python:3-slim to keep the image size down for faster loading of Github Actions that use pyaction. On top of the base, we've installed curl gpg, git, and the GitHub CLI. We added curl and gpg because they are needed to install the GitHub CLI, and they may come in handy anyway (especially curl) when implementing a GitHub Action.
  • The Ladybird Browser Project
    8 projects | news.ycombinator.com | 6 Feb 2024
    You might be interested in GitHub's cli tool, which is open source, if you want to access GitHub without running their proprietary JS code.

    https://cli.github.com/

  • Essential Command Line Tools for Developers
    29 projects | dev.to | 15 Jan 2024
    View on GitHub
  • NixOS has one fatal flaw
    3 projects | news.ycombinator.com | 15 Dec 2023
    (Context: I'm pretty thick into Nix, and have been for about four years. Most of this post is focussed on the NixOS desktop experience, so DevOps nerds, ymmv.)

    Unpopular opinion: Nix is not that hard.

    What's "hard" from a nix-promotion strategy is motivating people to understand why they would want the benefits it offers. Mostly because Nix, especially with home-manager, dramatically worsens UX for several day-to-day tasks, simply by violating the Law of Least Surprise every couple of hours in normal use.

    I want a fully idempotent, version-locked, rewindable user environment, with a version-controlled central config, because I have half a dozen devices that, for reasons, I need to keep perfectly interchangeable with one another. Most users do not want this, for the simple fact that mutating their configs and differentiating them locally on specific machines is not a bug, but a feature.

    Even more than that, it's an expectation that most software developers share as well.

    Case in point: I filed a bug against the GitHub CLI last week. If any org has the scope and motivation to build software that's compatible with NixOS, an OS most of whose users are developers, it should be GitHub, which is, at least notionally, all about developers, developers, developers. A change in GH required a config format migration, which was sensibly done by opening the config .yml and rewriting it.

    Of course, this breaks NixOS not just in practice but in principle. NixOS/home-manager makes config files read-only. Surprise! https://github.com/cli/cli/issues/8462

    The response from GitHub was basically, "yeah, we knew this was going to happen, we mentioned it to the packagers at NixOS, but we did it anyway, because it was still the best way to proceed for us." (And they weren't wrong.)

    Now, once a month is an annoyance, but I run into these problems daily. I can't imagine any sane person -- which I am not -- would persist with using it.

    Why do I keep using NixOS, then? Because I am terribly and disproprotionately annoyed by small changes in my user experience, which I find disruptive to my workflow and hence threaten my success. For me, forbidding apps from mutating the config files I established for them is a selling point. Being able to version-control an idempotent declarative config for all of them at once is heaven.

    Unless you're like me, you'll hate NixOS. But some were meant for Nix.

    Because

  • pyaction 4.27.0 Released
    2 projects | dev.to | 8 Dec 2023
    GitHub CLI 2.40.0
    2 projects | dev.to | 8 Dec 2023
    This Docker image is designed to support implementing Github Actions with Python. As of version 4.0.0., it starts with the official python docker image as the base which is a Debian OS. It specifically uses python:3-slim to keep the image size down for faster loading of Github Actions that use pyaction. On top of the base, we've installed curl gpg, git, and the GitHub CLI. We added curl and gpg because they are needed to install the GitHub CLI, and they may come in handy anyway (especially curl) when implementing a GitHub Action.
  • Everything I install and set up on a new MacBook as a web developer
    6 projects | dev.to | 5 Dec 2023
    Two CLI tools I install right away are the GitHub CLI (via brew) and the Netlify CLI (via npm).
  • I (kind of) killed Mercurial at Mozilla
    12 projects | news.ycombinator.com | 21 Nov 2023
    From the second article, a minor point but possibly helpful to other here, he contrasts doing everything in the terminal with stacked commits vs going to the Github UI. If people aren't aware, Github offers a cli tool[1]. I've been using it for a few months now and am finding it does make me more productive -- it's nice to be able to open up a PR directly from my terminal. I do still use the GH UI for a lot of things, but I'll often at least start in the terminal, and it also makes the transition from terminal to browser easy as many commands support the `--web` flag open up the right page for you (eg `gh repo view --web`).

    [1] https://cli.github.com/

gqlgen

Posts with mentions or reviews of gqlgen. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-06-25.
  • Who moved my error codes? Adding error types to your GoLang GraphQL Server
    6 projects | dev.to | 25 Jun 2023
    GraphQL’s spec, as it turns out, does not specify how servers should handle internal errors at all, leaving it entirely to the choice of the frameworks’ creators. Take for example our GoLang GraphQL framework of choice - gqlgen. It makes no distinction between intentional and unexpected errors: all errors are returned as-is to the client within the error message. Internal errors, which often contain sensitive information like network details and internal URIs, would leak to clients easily if not caught manually by the programmer.
  • “Go is hard to justify unless at massive scale”
    4 projects | /r/golang | 23 May 2023
    Better look into this one: https://github.com/99designs/gqlgen for GraphQL powered by Go. It's spec first approach and requires the least boilerplate code to write. It also incorporates seamlessly with Apollo Federation.
  • Go with PHP
    19 projects | news.ycombinator.com | 10 May 2023
    I left PHP for Go.

    - with http://sqlc.dev I don't have to write ORM or model code anymore.

    - with http://goa.design I can have well-documented API's that any team can generate a client for in any language. It also generates the HTTP JSON and gRPC servers for me so I can focus on my logic.

    - with https://github.com/99designs/gqlgen I can define GraphQL revolvers that play well with sqlc (any RDBMS) or I can use a key-value store.

    - speaking of key-value stores, Go allows them to be embedded! Even SQLite now has the https://litestream.io/ project to make it super simple to use a durable, always backed-up SQLite database even in a serverless context.

    Go is faster, uses less memory, and has really-well designed stdlib without all the bugs I used to face trying to use the PHP stdlib.

  • Golang tech stack
    11 projects | /r/golang | 12 Mar 2023
    Gqlgen if I need GraphQL
  • Scalable APIs with GraphQL Server Codegen Preset
    3 projects | dev.to | 24 Jan 2023
    Some of these features are inspired by gqlgen so check it out if you need a Golang GraphQL server implementation.
  • How to develop a Web app in go
    9 projects | /r/golang | 19 Jan 2023
    If you want to use GraphQL: https://github.com/99designs/gqlgen
  • Libraries you use most of your projects?
    30 projects | /r/golang | 2 Nov 2022
    In addition to the ones you mentioned, I also always use: + sqlc - Compile SQL to type-safe code + gqlgen - generate GraphQL server from schema + oapi-codegen - Go client and server boilerplate from OpenAPI 3 specifications + pester - Go http calls with retries and backoff + backoff - exponential backoff algorithm in Go
  • Ent: An Entity Framework for Go
    9 projects | news.ycombinator.com | 30 Oct 2022
    I have no experience in Django but in Ent with GraphQL.

    Ent is not a full-featured web framework so you need to implement many of features by your own or use other libraries (e.g. http server and session management).

    If you are only looking for ORM + GraphQL then I highly recommend trying Entgql, an Ent extension for GraphQL with Gqlgen library [1]. Once you define an ORM schema, it will generate GraphQL Query for Relay server. Still you need to implement GraphQL Mutations by your own but at least it will create Input types for you (both for Create/Update).

    [1]: https://github.com/99designs/gqlgen

  • Best packages?
    11 projects | /r/golang | 16 Oct 2022
    gqlgen for GraphQL services. It's well documented and maintained.
  • Decent examples querying models from Postgres
    6 projects | /r/golang | 5 Sep 2022
    For me sqlc work wonders. If you are developing a user facing api and are fine to go with graphql, with gqlgen you can even autobind (search the page for @goModel) the models that sqlc generates from your queries. A glorious match

What are some alternatives?

When comparing cli and gqlgen you can also consider the following projects:

graphql-go - GraphQL server with a focus on ease of use

Fiber - ⚡️ Express inspired web framework written in Go

Gin - Gin is a HTTP web framework written in Go (Golang). It features a Martini-like API with much better performance -- up to 40 times faster. If you need smashing performance, get yourself some Gin.

Echo - High performance, minimalist Go web framework

go-kit - A standard library for microservices.

cobra - A Commander for modern Go CLI interactions

fasthttprouter - A high performance fasthttp request router that scales well

goa - 🌟 Goa: Elevate Go API development! 🚀 Streamlined design, automatic code generation, and seamless HTTP/gRPC support. ✨

mux - A powerful HTTP router and URL matcher for building Go web servers with 🦍

gh.vim - Vim/Neovim plugin for GitHub

graphql-go - An implementation of GraphQL for Go / Golang

CORS - Go net/http configurable handler to handle CORS requests