Supercharge your Application's quality, security, productivity, and DX with GitHub Marketplace.

Photo by Growtika on Unsplash

Supercharge your Application's quality, security, productivity, and DX with GitHub Marketplace.

Table of contents

No heading

No headings in the article.

GitHub Marketplace is a platform that allows developers to discover, purchase, and integrate tools and services that complement their development workflows. It is a central location where developers can find apps, "actions", tools, and services that work with GitHub to help them build and customize their development process.

The marketplace provides a wide range of tools and services that can help developers with tasks like code review, testing, security, project management, documentation, and more. The general segregation involves popular tech categories like :

  • API Management

  • Code Quality

  • Code Review

  • Continuous Integration (CI)

  • Dependency Management

  • Deployment

  • Monitoring

  • Security

  • Utilities

You can discover, browse, and install free and paid tools, including GitHub Apps, OAuth Apps, and GitHub Actions, and developers can browse through categories or search for specific tools that fit their needs.

Overall, GitHub Marketplace simplifies the process of finding and integrating (ideally verified by GitHub) third-party tools into a developer's workflow by providing a centralized platform that features a variety of tools and services that integrate directly with GitHub.

Here are some top GitHub Apps and Actions along with some alternatives in their fields:

  1. CircleCI : A continuous integration and delivery platform to help automate builds with customizable OS (+ Docker), CPU, GPU, RAM, with 70% faster build times. It also consists of built-in features like audit logs, restricted contexts, LDAP, and is FedRAMP certified + SOC2 Type-II compliant. Other Alternatives and similar apps are Travis CI, Azure Pipelines, Google Cloud Build, Buddy (build test deploy, etc. on a git push, with Docker and Kubernetes support), Doppler (manage secrets), Qovery (deploy production-like environments in your AWS account in seconds => you just push your code, they do auto deploy, manage infra, cloud cost optimizations, and multi-cloud integrations), etc.

  2. CodeClimate : Code climate is designed to help your team write pure code. It provides static and automatized analysis for Ruby on Rails, JavaScript, PHP (beta), or Python (beta) code, and after that gives you easy-to-read and practical results. It also helps in TECH DEBT assessments (flags duplication + complexity + structures => helps to determine maintenance), test coverages, and style checks.

  3. SonarCloud : SonarCloud is a cloud-based code quality and security service to track down hard-to-find bugs and quality issues thanks to powerful static code analyzers. Thus, it helps to catch security vulnerabilities, bugs, and "Code smells" in your PRs and Repositories. It ensures Code Quality as well. For similar alternatives check GitGuardian (checking hardcoded values), Snyk (known vulnerabilities detection), LGTM (continuous security analysis, 1600+ analysis), Socket Security, Licensebat, etc.

  4. Datree : The Datree app allows engineering teams to automatically identify errors in newly committed YAML configs, including k8s manifests, and prevent these misconfigurations from reaching production. They identify errors and misconfigurations for K8s Manifests and YAML configs, and run K8s schema validation and policy check for K8s manifest files. Datree can also combine workflow results and THEN we can observe results together. Similar alternative includes BridgeCrew (Find and fix security and compliance issues in Terraform, AWS CloudFormation, ARM templates, Kubernetes, and more).

  5. ImgBot : Web pages with optimized images load faster. Faster pages have higher conversion rates, lower bounce rates, and happier users. And of course, smaller images reduce bandwidth costs for you and your visitors. However, when you’re shipping code and hitting deadlines, it’s easy to forget about optimizing your images. For this, ImgBot provides lossless image compression and optimization done automatically and the changes are introduced as a quick new PR.

  6. Sentry : Sentry's SDK hooks into your runtime environment and automatically reports errors, uncaught exceptions, and unhandled rejections as well as other types of errors depending on the platform. It provides real-time crash reporting in production, ALONG WITH:

    • Integrates into Github dev flow => linking errors to the commit and the author likely responsible AND CREATE NEW Github issues + resolving errors with commit message.

    • Great context of Errors by stack trace, browser/OS, env, users affected, and user's actions that lead to this error.

    • Define custom alert rules with severity (+ frequency) and notification type (SMS, Chat, Slack, etc.).

      Other Alternative : LogRocket -> Integrates with Sentry and Bugsnag to add video and logs to every bug report. (Record or get screenshots so no need to guess how did we get the error, gives videos along with console logs, JS errors, Network requests, and browser metadata, also get state values in React, Redux, etc.)

  7. Mockend : Mockend lets you mock a backend for prototyping/testing your frontends. In better frame of words, it lets you host fake REST or GraphQL APIs in minutes by simply creating a config file in your repo. So you can work instantly on frontend without deploying or waiting for backend. Also see Hoppscotch : similar to Postman but rich in features = Post Request Tests (typecheck status code, filter response headers, parse response data, set env variables, write JS code, etc.), HTTP, duplex Websocket communications over single TCP connection, Socket.IO server, GraphQL, Authorization, Server-Sent Events (receive stream of updates without polling or resorting), MQTT, etc.

  8. Crowdin : Crowdin is a localization management platform that helps companies, teams, and individuals stay agile when translating products like mobile, desktop & web apps, websites, games, help documentation, and more. Works for/between Developers (integrates with version control systems) & Designers - Marketing - Customer Support, etc. It supports over 30 file formats like md, xml, json, csv, yml, etc.

  9. Apollo Studio : Apollo Studio's app provides a GitHub Checks integration for Studio's schema check features to ensure safety and non-breaking changes, and also helps to monitor usage metrics. The knowledge gained from monitoring the usage statistics helps to determine if there are clients actively using the changing parts of your schema. Other alternatives can be GraphQL Inspector (Github App & Action, CLI, or API) and GraphQL Hive. GraphQL Inspector compares schemas and notifies changes, detects breaking or dangerous changes, finds duplicate/similar schemas, serves a GraphQL server with fake data and GraphiQL, etc.

  10. Gitbook : Although not completely tech-related, Gitbook is a documentation platform to create beautiful documentation of products, APIs, internal knowledge, and gives rich text editors while providing TWO-WAY SYNCING of the markdown MD files from GitHub to Gitbook.

  11. Github Actions : GitHub Actions help to automate, customize, and execute your software development workflows right in your repository. They have also simplified multi-container testing, logging, matrix workflow testing, cloud deployment, ticket generation, package publishing and management, version updates, fast distribution via CDNs, etc.

    Some popular Github Actions are Checkout, Download/Upload-Artifact, Cache, Setup-Node, Github-Script, etc.

  12. Cypress.io : Cypress is a "full-stack" JavaScript-based testing framework for web applications. It allows you to write end-to-end tests for your application's UI and APIs. The Cypress team maintains the official Cypress GitHub Action for running Cypress end-to-end and component tests. It includes NPM (pnpm and yarn as well) installation, custom caching, additional configuration options, and simplifies the setup of advanced workflows with Cypress. Instead of building everything ourselves, we can use previously created macros and have things handled for us. For example, cypress-io/github-action@v5 will run npm install for us, properly cache Cypress (so that next time the installation is rapidly faster), run our application using npm start command, and run npx cypress run command for us. All this with just four lines in our YAML (workflow) file.

That's a wrap! Hope you found this blog informative. Feel free to share your thoughts and let me know which Apps and Actions you found useful and why!