A curated list of awesome system integration software, patterns and resources.
System integration is the process of linking together different IT systems (components) to functionally cooperate as a whole.
API Management solutions offer a comprehensive approach to handling the entire API lifecycle. They enable developers to create, publish, secure, and monitor APIs, ensuring efficient and reliable communication between systems. With features such as authentication, rate limiting, and analytics, these tools provide centralized control and enhanced security, making it easier to manage and scale APIs across different platforms and environments. - Akana API Management Platform - Provides comprehensive lifecycle management, enabling rapid digital transformation and robust compliance across multi-cloud environments. - Amazon API Management - Leverages AWS scalability and security to efficiently create, monitor, and manage APIs. - Anypoint Platform - Combines API design, integration, and management into one unified platform, streamlining connectivity and development. - Amplify API Management Platform - Offers an open, agile approach to API management with robust integration and flexible deployment options. - Apigee - Delivers powerful analytics, security, and scalability for enterprise-grade API management from Google. - Azure API Management - A hybrid, multicloud solution that simplifies API lifecycle management with comprehensive security and analytics. - Boomi Cloud API Management - A cloud-native platform enabling seamless API deployment and centralized management with strong integration capabilities. - DigitMarket API Manager - Transforms APIs into strategic business tools through end-to-end lifecycle management and enhanced operational insights. - Gravitee.io API Management (⭐273) - A lightweight, open-source platform offering flexible API governance, robust security, and straightforward configuration. - IBM API Connect - Provides a scalable, secure, and intuitive environment for creating, managing, and monetizing APIs across clouds. - IBM webMethods API Management - Offers a comprehensive suite for API lifecycle management that seamlessly integrates on-premises and cloud systems. - Kong Enterprise - A cloud-native, enterprise-grade solution that enhances API connectivity, microservices orchestration, and security via a rich plugin architecture. - Layer7 API Management - Ensures secure and efficient API development with continuous lifecycle management and advanced integration features. - Red Hat 3scale API Management - Simplifies API monetization and governance with a cloud-native approach and powerful scaling capabilities. - Sensedia API Management - Provides a full-lifecycle API solution with advanced security, performance monitoring, and streamlined integration. - Traefik API Management - Provides an API Management as Code platform to DevOps and Platform Engineering Teams who favor less ClickOps and more GitOps-driven API lifecycle workflows. - Tyk API Management - Delivers high-performance, open-source API management focused on flexibility, robust security, and scalability. - WSO2 API Manager (⭐906) - A fully open-source API platform offering robust governance, flexible deployment, and community-driven innovation. - Zuplo API Management - A developer-centric, lightweight platform featuring GitOps integration, rapid edge deployment, extensive OpenAPI support, and seamless monetization. ⬆ back to top ### API Design API design, documentation, and life-cycle automation tools streamline the process of creating, maintaining, and evolving APIs. These tools offer efficient means to design consistent and scalable APIs, generate comprehensive documentation, and automate various stages of the API life-cycle, enhancing developer experience and promoting API adoption. - Apicurio Studio (⭐1k) - A web-based, open-source API design tool that leverages the OpenAPI specification. - Dredd (⭐4.2k) - Validate API description docs against backend implementation using this language-agnostic CLI tool. - OpenAPI-GUI (⭐1.4k) - Create and validate OpenAPI specs with ease using this intuitive graphical user interface. - OpenAPI Diff (⭐951) - Compare OpenAPI specs with version control and visualize the differences in HTML or Markdown format. - OpenAPI Generator (⭐24k) - Automate the creation of API client libraries, server stubs, documentation and config files with this powerful OpenAPI Spec tool. - OpenAPI Style Validator (⭐218) - Ensure that your OpenAPI specs meet your organization’s standards with this flexible and customizable style validator. - Spectral (⭐2.7k) - Detect and fix errors in your JSON/YAML files using this linter tool that supports OpenAPI 3.0 & 2.0 and AsyncAPI. - Swagger Editor (⭐9.2k) - Create, describe, and document your API with ease using this open source editor built specifically for OpenAPI-based APIs. - Zally (⭐926) - Ensure the quality of your OpenAPI specs with this linter tool that provides extensive analysis and feedback.
⬆ back to top ### API Documentation Explore a collection of tools and platforms designed to create, maintain, and present clear, concise, and user-friendly documentation for APIs. These resources facilitate seamless collaboration between developers and enable effective communication of API functionalities and specifications. - DapperDox (⭐420) - Generates elegant, interactive API documentation from OpenAPI/Swagger specs with easy customization and automated updates. - OpenAPI Explorer (⭐334) - Creates intuitive, interactive user interfaces from OpenAPI specs, simplifying API exploration and testing. - RapiDoc (⭐1.8k) - Produces highly customizable, interactive API documentation with responsive design and rich configuration options. - Redoc (⭐24k) - Delivers clean, modern documentation with advanced theming, multi-language support, and seamless integration. - Slate (⭐36k) - Converts markdown into stylish, static API documentation with intuitive navigation and clear code examples. - Stoplight Elements (⭐2k) - Provides modular, attractive UI components for building comprehensive API reference and tutorial documentation. - SwaggerHub - An integrated API design and documentation hub that enhances team collaboration, version control, and automated testing. - Swagger UI (⭐27k) - Offers an interactive, in-browser tool for visualizing and testing APIs directly from OpenAPI specifications. - SpectaQL (⭐1.1k) - Generates static, customizable documentation for GraphQL schemas, making complex API structures easy to understand. - Zudoku (⭐256) - A customizable framework built on OpenAPI, focused on delivering exceptional developer experiences through quality documentation.
⬆ back to top ### API Gateway API Gateways act as intermediaries between client applications and backend services, enabling key features such as request routing, authentication, rate limiting, and caching. They simplify the process of managing, securing, and monitoring APIs by providing a unified entry point for various services. - Apinto (⭐1.5k) - A Golang-based gateway that offers dynamic routing, multi-tenancy, and robust API access control for modern architectures. - Ambassador Edge Stack - A Kubernetes-native API gateway designed for high-scale environments with flexible routing and advanced security features. - Apache APISIX (⭐15k) - A high-performance, dynamic gateway featuring real-time traffic management and powerful plugin integrations. - Apache ShenYu (⭐8.6k) - A Java-native gateway excelling in protocol conversion, service proxying, and comprehensive API governance. - Envoy Gateway (⭐1.9k) - CNCF Envoy-based gateway with Gateway API, mTLS, JWT, and other built-ins. - Gloo Edge (⭐106) - An Envoy Proxy–based gateway offering advanced traffic control, enhanced security, and observability for microservices ecosystems. - Kong API Gateway (⭐41k) - A scalable, cloud-native gateway that simplifies API management through extensive plugin support and seamless microservices integration. - KrakenD API Gateway (⭐2.2k) - An ultra-high performance gateway with efficient middleware configuration, robust security, and seamless scaling. - Ocelot (⭐8.5k) - A .NET-based gateway offering intuitive routing and easy integration for lightweight API management. - Spring Cloud Gateway (⭐4.6k) - Leverages the Spring ecosystem to deliver robust routing, filtering, and security for microservices. - Traefik API Gateway (⭐55k) - Combines Traefik Proxy, a fully declarative application proxy with enterprise-grade access control, distributed security, and premium integrations. - Tyk API Gateway (⭐10k) - An enterprise-grade, open-source gateway supporting REST, GraphQL, TCP, and gRPC with advanced rate limiting and analytics.
⬆ back to top ### API Testing The API testing tools section provides a list of software tools and frameworks that developers can use to test REST APIs and message brokers. This section includes GUI clients for testing REST APIs and message brokers, mocking tools for simulating API responses, as well as various testing tools and frameworks to automate testing processes. - API clients - Advanced REST Client (⭐1.4k) - A robust open-source API client for testing and debugging RESTful services with an intuitive interface. - Bruno (⭐35k) - A fast, offline API client designed for git-friendly workflows and seamless testing. - curl (⭐38k) - A versatile command-line tool for data transfer across multiple protocols, essential for quick API testing. - curlie (⭐3.3k) - A modern, user-friendly frontend to curl that combines simplicity with powerful performance. - HTTPie (⭐36k) - An intuitive CLI HTTP client that simplifies crafting API requests and inspecting responses. - HttpMaster - Free and lightweight desktop tool for HTTP testing and debugging. - Hoppscotch (⭐72k) - A lightweight, web-based API development tool offering real-time testing with an intuitive interface. - Insomnia (⭐36k) - A cross-platform client that streamlines API debugging and testing for both REST and GraphQL services. - posting (⭐9.4k) - A modern, terminal-based API client designed for efficient and seamless API interactions. - Postman - The industry-standard tool for API development and testing, featuring automation, mock servers, and collaborative documentation. - resty (⭐2.6k) - A Lua-based HTTP client framework providing an interactive shell for streamlined REST service testing. - SoapUI (⭐1.6k) - A comprehensive open-source solution for testing both SOAP and REST web services with extensive automation features. - MQ clients - JMSToolBox (⭐216) - A universal JMS client offering broad compatibility and streamlined messaging testing across various brokers. - kcat (⭐5.5k) - A lightweight command-line tool for Apache Kafka, providing efficient message production and consumption. - MQTT Explorer (⭐3.4k) - A detailed MQTT client delivering structured topic visualization and intuitive debugging. - Offset Explorer - A comprehensive GUI for managing Apache Kafka clusters with user-friendly monitoring and administration tools. - Service Bus Explorer (⭐2.1k) - An advanced GUI for Azure Service Bus that enables in-depth testing and seamless management of topics, queues, and subscriptions. - Mocking tools - Hoverfly (⭐2.4k) - A lightweight API simulation tool that enables rapid HTTP(S) service virtualization for efficient testing. - Imposter (⭐391) - A flexible mock server supporting REST, OpenAPI, SOAP, and more to simulate diverse API behaviors. - Microcks (⭐1.6k) - A Kubernetes-native tool for API mocking and testing that supports AsyncAPI, OpenAPI, and Postman Collections. - Mockable - An easy-to-configure service for creating custom HTTP responses, ideal for rapid prototyping and testing. - Mockbin (⭐113) - A simple endpoint generator for testing HTTP requests with real-time logging and feedback. - Mockoon (⭐7.4k) - A user-friendly tool for designing and running mock REST APIs with real-time simulation and easy setup. - MockServer (⭐4.7k) - A powerful solution for mocking any HTTP/HTTPS-based service, streamlining integration testing. - Mocky (⭐2k) - A free online service that generates custom HTTP responses for testing API endpoints. - Prism (⭐4.6k) - An open-source HTTP mock server that replicates API behavior for early testing and validation. - WireMock (⭐6.8k) - A robust and flexible API mocking tool delivering reliable, real-time simulation for comprehensive testing. - Testing tools and frameworks - Apache JMeter (⭐8.8k) - A feature-rich tool for load testing and performance analysis across diverse web applications and services. - Gatling (⭐6.7k) - A powerful load testing framework with a developer-friendly DSL that delivers detailed performance metrics. - Grafana k6 (⭐28k) - Open-source, JS-scriptable load-testing tool for CI/CD. - Karate (⭐8.5k) - A unified testing framework that merges API automation, mocking, and performance testing with simple, expressive syntax. - Pyresttest (⭐1.1k) - A Python-based testing tool offering easy YAML/JSON-driven REST API testing and microbenchmarking. - REST Assured (⭐6.9k) - A Java DSL that simplifies REST API testing with intuitive syntax and seamless integration into CI pipelines. - Schemathesis (⭐2.5k) - A Python library for property-based testing of API schemas, ensuring reliability through robust edge-case detection. - Taurus (⭐2k) - An open-source automation framework that simplifies continuous testing with intuitive configuration and integration support.
⬆ back to top ### BRE Business Rules Engines and Business Rules Management Systems (BRMS) are software systems that allow organizations to define, manage, and execute business rules. These rules are used to automate decision-making processes, enforce business policies, and ensure regulatory compliance. A BRMS provides a way for organizations to centrally manage their business rules and make changes to them quickly and easily, without requiring changes to the underlying code. It is a valuable tool for businesses that need to be agile and respond quickly to changing market conditions. - Drools (⭐6k) - Open-source engine that supports advanced Decision Model and Notation (DMN) with Eclipse IDE integration for efficient rule development. - Easy Rules (⭐5k) - Lightweight Java-based rules engine designed for straightforward rule processing and rapid decision automation. - FICO Blaze Advisor - Enterprise-grade decision engine that empowers both business and technical users with an intuitive interface for fast rule creation and management. - IBM ODM - Scalable decision management system that streamlines rule authoring, testing, and updates while ensuring compliance and agility. - NxBRE (⭐132) - Specialized .NET open-source rule engine offering efficient rule processing tailored for Microsoft environments. - OpenL Tablets (⭐172) - Flexible open-source decision management system that simplifies defining and executing business rules and decision tables. - Progress Corticon - Model-driven BRMS enabling rapid, no-code rule creation that delivers high-performance automated decisions with guaranteed integrity. - Red Hat Decision Manager - Enterprise-class decision platform built on Drools, offering advanced DMN support, intuitive UIs, and high availability for large-scale automation. - ZEN Engine (⭐1.1k) - A cross-platform, open-source Business Rules Engine written in Rust that executes JSON Decision Models through interconnected graphs of decision tables, functions, and expressions.
⬆ back to top ### BPM BPM solutions are software tools that help businesses streamline and automate their operational processes to improve efficiency and productivity. These solutions typically provide features such as process modeling, workflow management, task automation, and reporting. They can be used to automate a wide range of processes, from simple tasks like data entry to complex workflows involving multiple departments and stakeholders. - Appian BPM Suite - Low-code BPM platform that empowers both IT and citizen developers to quickly build process- and case-centric applications. - Genpack Cora SeQuence - Agile process orchestration tool that enhances business efficiency by seamlessly integrating and managing workflows. - IBM Business Automation Workflow - Integrated platform combining workflow automation and BPM to optimize operational processes and decision-making. - Oracle BPM Suite - Comprehensive solution offering robust process modeling, workflow automation, and real-time analytics to drive operational excellence. - Pega Platform - Advanced BPM and RPA platform featuring intelligent process automation and workforce analytics to streamline operations. - Red Hat Process Automation Manager - Cloud-native platform that enables cross-functional teams to design, deploy, and manage automated business workflows with agility. - SAP Process Orchestration - Robust BPM offering that combines process orchestration with application integration for end-to-end operational efficiency. - TIBCO BPM Enterprise - Enterprise BPM solution delivering process automation, documentation, and predictive analytics to enhance performance and decision-making.
⬆ back to top ### Data Mapping Solution Data Mapping tools are used to define and transform data between different systems, applications, and formats. These tools allow for the mapping of data from source to target, allowing for data transformation and integration. This section covers different data mapping solutions that can be used to facilitate data mapping and transformation processes for different use cases. - Altova MapForce - Graphical data mapping solution that enables any-to-any conversion, reducing complexity and accelerating integration projects. - AtlasMap (⭐203) - Interactive web-based tool that simplifies mapping across Java, XML, CSV, and JSON data sources with an intuitive interface. - JOLT (⭐1.6k) - Java-based JSON transformation library that uses a specification-driven approach for effortless JSON-to-JSON conversions. - JSLT (⭐670) - Powerful JSON query and transformation language inspired by jq and XPath, designed for rapid and flexible data manipulation.
⬆ back to top ### CDC Change Data Capture (CDC) solutions enable real-time identification and capture of changes made to data in databases, data warehouses, and other data sources. These tools continuously monitor data changes and propagate them to downstream systems, enabling real-time data synchronization, event-driven architectures, and maintaining data consistency across distributed systems. CDC is essential for modern data architectures, microservices, and real-time analytics. - Debezium (⭐11k) - Open-source distributed platform for change data capture that turns your existing databases into event streams for real-time data integration. - IBM InfoSphere CDC - Enterprise CDC solution that captures and delivers data changes with minimal impact on source systems and low latency. - Maxwell’s daemon (⭐4.1k) - An open-source CDC tool for MySQL that reads database binlogs and streams row-level changes as JSON to systems like Kafka, Kinesis, or other destinations. - Oracle GoldenGate - Enterprise-grade real-time data integration and replication solution that provides comprehensive CDC capabilities for heterogeneous databases and cloud platforms. - Qlik Replicate - Universal data replication software that provides real-time CDC capabilities for modern data architecture and analytics.
⬆ back to top ### ESB Enterprise Service Bus (ESB) solutions facilitate the integration of disparate systems and applications by providing a communication layer that allows them to exchange information. ESBs offer a range of capabilities such as message routing, transformation, protocol conversion, and data mediation. They typically support various messaging patterns and communication protocols and provide a centralized platform for managing and monitoring message traffic. - Anypoint Platform - Comprehensive integration solution that leverages robust ESB capabilities to connect and orchestrate disparate systems. - Apache ServiceMix - Versatile open-source integration container combining messaging, routing, and service mediation for flexible enterprise connectivity. - ArcESB - Flexible integration platform that synchronizes data across applications, streamlines partner connectivity, and enhances data accessibility. - IBM App Connect - Robust integration solution that connects diverse applications and protocols, ensuring seamless data flow across the enterprise. - IBM webMethods Integration - Comprehensive platform that accelerates application integration and simplifies connectivity across heterogeneous systems. - NServiceBus (⭐2.1k) - Developer-friendly, .NET-based service bus that simplifies messaging and orchestrates service integration efficiently. - Oracle Service Bus - Powerful ESB solution that virtualizes and manages service interactions to reduce integration complexity. - Oracle SOA Suite - Comprehensive SOA platform that orchestrates services into composite applications, driving efficient business process integration. - Red Hat Fuse - Cloud-native integration platform that delivers distributed integration capabilities for agile, scalable connectivity. - TIBCO BusinessWorks - Enterprise-grade integration platform implementing proven hybrid integration patterns for reliable data exchange. - UltraESB - High-performance ESB engineered for extreme throughput with zero-copy proxying and non-blocking IO techniques. - WSO2 Enterprise Integrator (⭐384) - API-centric, cloud-native integration platform offering robust, distributed capabilities for modern software architectures.
⬆ back to top ### ETL ETL (Extract, Transform, Load) and ELT (Extract, Load, Transform) are processes used to integrate and consolidate data from multiple sources. This section covers a range of open source and commercial tools for performing these tasks, including data ingestion, transformation, and loading into data warehouses or other data storage systems. - Apache InLong (⭐1.4k) - One-stop, full-scenario integration framework for massive data that supports data ingestion, synchronization, and subscription with real-time ETL capabilities. - Apache NiFi (⭐5.4k) - Automated data integration tool with a visual interface that seamlessly extracts, transforms, and delivers data across systems. - Airbyte (⭐18k) - Flexible, open-source data integration platform that builds ELT pipelines to move data from diverse sources to modern destinations. - CloverDX - Enterprise ETL suite offering robust data transformation and workflow orchestration for scalable integration. - Estuary Flow (⭐768) - Versatile, scalable platform that provides both real-time and batch data integration for ETL and ELT pipelines. - Fivetran - Managed ELT that syncs 700 + sources to data warehouses. - Hevo - No-code, fully automated data pipeline platform that supports extensive integrations, simplifying complex data workflows. - IBM DataStage - Robust platform that cleanses, transforms, and delivers reliable data, empowering businesses with trusted insights. - Informatica PowerCenter - Enterprise-class solution that streamlines big data and cloud analytics through comprehensive data integration management. - Microsoft SSIS - Proven data integration solution for building scalable ETL processes within enterprise environments using SQL Server. - Oracle Data Integrator - Comprehensive platform that addresses batch loads, real-time processes, and SOA-enabled services for end-to-end data management. - Pentaho Data Integration (⭐8k) - Intuitive, visual ETL tool that simplifies data ingestion, blending, and cleansing across multiple sources without heavy coding. - SAS Data Management - Robust solution that transforms, integrates, and secures data to enhance quality and reliability across the enterprise. - Stitch - Developer-friendly SaaS ETL service that effortlessly extracts data from numerous sources into data warehouses for streamlined analytics. - Talend Data Integration - Versatile platform that unifies disparate data sources into actionable insights to empower informed business decisions.
⬆ back to top ### Integration Frameworks The Integration frameworks section includes software tools and libraries that help developers implement and manage integration patterns in their applications. These frameworks are based on well-established Enterprise Integration Patterns (EIPs), which provide a standard vocabulary and architecture for designing and implementing integration solutions. The frameworks in this section can help simplify the process of integrating different systems, applications, and data sources by providing pre-built connectors, message routing, and transformation capabilities. - Apache Camel (⭐5.8k) - Robust integration framework leveraging Enterprise Integration Patterns to seamlessly connect diverse systems and APIs. - Ballerina (⭐3.7k) - Innovative programming language designed for effortless creation and integration of network services and APIs. - Frank!Framework (⭐141) - Low-code Java messaging framework that simplifies system connectivity and data integration through configurable XML setups. - Spring Integration (⭐1.5k) - Extension of the Spring ecosystem that provides out-of-the-box integration capabilities using proven Enterprise Integration Patterns.
⬆ back to top ### iPaaS Integration Platform as a Service (iPaaS) is a cloud-based platform that enables businesses to integrate different systems, applications, and data sources with ease. It provides a unified platform for managing data flows between various systems, simplifying the process of integrating different systems and automating workflows. iPaaS tools typically provide a visual interface for designing, deploying, and managing integrations, as well as pre-built connectors and APIs for integrating with popular systems and services. - Anypoint Platform - Combines API management and integration into one platform, enabling seamless connectivity across diverse applications. - Boomi AtomSphere - Cloud-native, intelligent platform that connects systems effortlessly while automating integration processes. - Celigo Integration Platform - User-friendly iPaaS with prebuilt templates for rapid SaaS-to-SaaS integrations and intuitive drag-and-drop design. - Jitterbit Harmony - Comprehensive integration solution offering prebuilt workflows and automation templates to accelerate business processes. - IBM Cloud Integration - Next-generation platform leveraging AI to streamline integration, increase scalability, and speed up deployment. - IBM webMethods - All-in-one integration platform that unifies applications, simplifies processes, and boosts overall efficiency. - Informatica Intelligent Cloud Services - Suite of cloud data management tools that accelerates productivity and simplifies application and data integration. - OpenText Alloy - Enterprise data management solution that transforms basic integration into actionable insights and smarter decision-making. - Oracle Integration Cloud Service - Robust platform with prebuilt connectivity for both SaaS and on-premises apps, streamlining integration processes. - SAP Integration Suite - Cloud-native solution offering prebuilt adapters, API management, and event brokering for end-to-end connectivity. - SnapLogic Intelligent Integration Platform - AI-driven platform that connects applications and data rapidly, ensuring efficient and scalable integrations. - TIBCO Cloud Integration - Flexible, API-led and event-driven platform that empowers you to integrate virtually any system quickly. - Tray.io - Low-code automation platform with a drag-and-drop interface, making it simple to build scalable integrations and workflows. - Workato - Unified integration and workflow automation solution that simplifies complex processes and enhances operational efficiency.
⬆ back to top ### MaaS Cloud Messaging as a Service (MaaS) refers to cloud-based messaging platforms that enable reliable, secure, and scalable communication between distributed applications and services. These platforms provide various messaging patterns such as publish-subscribe, request-reply, and streaming. They also offer features such as message routing, filtering, transformation, and persistence, and support various protocols and APIs for integration with different systems. - Amazon MQ - Fully managed message broker supporting Apache ActiveMQ and RabbitMQ, ensuring reliable and secure messaging. - Amazon MSK - Managed Apache Kafka service that simplifies cluster setup, scaling, and real-time data streaming. - Amazon SQS - Reliable, fully managed queuing service to decouple microservices and scale distributed applications seamlessly. - Amazon SNS - Managed pub/sub messaging service that flexibly notifies subscribers and supports various delivery protocols. - Alibaba Cloud Message Queue for Apache Kafka - High-throughput Kafka service with seamless Alibaba Cloud integration for real-time data processing. - Alibaba Cloud Message Queue for RabbitMQ - Scalable RabbitMQ solution offering low latency and high throughput for distributed messaging. - Alibaba Cloud Message Service - Distributed messaging service that ensures reliable data transfer between decoupled systems. - AlibabaMQ for Apache RocketMQ - Robust message queue service supporting asynchronous communication with high availability and durability. - Anypoint MQ - Enterprise-class messaging service integrated with Anypoint Platform for flexible and reliable message orchestration. - Azure Event Hubs - A high-throughput, fully managed event-ingestion (publish-subscribe) service, supports the Kafka protocol natively. - Azure Service Bus - Cloud messaging solution that supports multiple patterns and protocols for robust enterprise integration. - CloudAMQP - Managed RabbitMQ service featuring an intuitive web console, advanced analytics, and seamless scalability. - Confluent Cloud - Fully managed Kafka service offering enterprise features like schema registry, connectors, and governance. - Google Cloud Managed Service for Apache Kafka - Simplifies Kafka deployment and management on Google Cloud for real-time streaming applications. - Google Cloud Pub/Sub - High-throughput messaging service that supports event-driven architectures with flexible delivery models. - Huawei Cloud Distributed Message Service - Fully managed messaging service that ensures secure, scalable, and reliable communication between applications. - Huawei Cloud Distributed Message Service for Kafka - Managed Kafka solution that simplifies scaling and management while delivering high performance and security. - IBM MQ on Cloud - Enterprise messaging service that offers secure, reliable data transfer across applications in a cloud environment. - IronMQ - Elastic, cloud-native message queue designed for scalable and reliable processing of high-volume messages. - Oracle Cloud Streaming - Serverless, real-time event streaming platform with Apache Kafka compatibility for efficient data processing. - Solace PubSub+ Cloud - Integrated event streaming platform providing full visibility and control over your data pipelines. - Yandex Message Queue - Cloud messaging service compatible with Amazon SQS API for easy integration with existing systems. - Yandex Managed Service for Apache Kafka - Fully managed Kafka service with automated scaling, monitoring, and maintenance for hassle-free streaming.
⬆ back to top ### MFT Managed File Transfer (MFT) solutions provide secure and reliable file transfer capabilities that help organizations meet regulatory compliance requirements, improve operational efficiency, and reduce the risk of data breaches. MFT software typically includes features such as encryption, digital signatures, user access controls, and detailed audit logs to ensure that data is transmitted securely and can be tracked throughout the transfer process. - ArcESB Managed File Transfer - Enterprise-grade MFT solution with an intuitive interface and powerful automation for streamlined file exchanges. - Axway Managed File Transfer - Robust platform offering advanced security and efficient, reliable data transfer across enterprise systems. - GoAnywhere MFT - Comprehensive solution delivering centralized, secure file transfers with automation and complete audit logging. - GlobalSCAPE EFT - Hardened file transfer server that ensures end-to-end encryption, automation, and compliance for mission-critical data. - IBM Sterling Secure File Transfer - Scalable and high-performance MFT platform designed for secure, fast, and reliable file exchange. - IBM webMethods MFT - Integrated managed file transfer solution that supports flexible deployment across hybrid environments. - JSCAPE MFT Server - Secure, protocol-agnostic platform with automation and compliance. - Oracle Managed File Transfer - Comprehensive platform that simplifies secure file exchange and management for enterprise operations. - Progress MOVEit - Secure, automated file transfer solution with guaranteed delivery, encryption, and compliance tools for regulated industries. - TIBCO Managed File Transfer - Centralized MFT platform with robust automation and security features designed to support diverse file transfer scenarios. - Titan MFT Server - Enterprise-level MFT server offering high availability, failover capabilities, and efficient large-scale file automation.
⬆ back to top ### MDM Master Data Management (MDM) solutions help organizations create a single, authoritative source of accurate and consistent data across different systems, applications, and departments. These tools provide capabilities for data profiling, cleansing, enrichment, and governance, enabling organizations to improve data quality, reduce errors, and increase operational efficiency. - IBM InfoSphere Master Data Management - Comprehensive platform that centralizes data governance, ensuring consistency and accuracy across your enterprise. - Informatica Multidomain MDM - Integrated solution for managing and governing master data across all domains, enhancing overall data quality. - Oracle Enterprise Data Management - Robust tool that centralizes master data to support faster, more effective decision-making and operational agility. - Reltio - Cloud-native, multi-domain MDM platform combining data quality, governance, and real-time analytics for a 360° view. - SAP Master Data Governance - Centralized solution that consolidates and governs master data to ensure consistency and high quality. - SAS MDM - Unified platform that integrates data from diverse sources into accurate master records for improved efficiency. - Stibo MDM - Proven multi-domain MDM solution focusing on data transparency and governance to provide a single source of truth. - Teradata MDM - Establishes a consistent analytical foundation by maintaining accurate reference data for enhanced ROI. - TIBCO EBX - Comprehensive platform for governing and managing shared data assets, ensuring consistency and enabling smarter decisions.
⬆ back to top ### Messaging Message brokers are a type of middleware that allows communication between different applications or systems by facilitating the exchange of messages. They can handle different messaging patterns, such as point-to-point, publish-subscribe, and request-reply, and provide features such as message transformation, routing, and filtering. - Apache ActiveMQ (⭐2.3k) - Open-source broker that implements JMS, enabling seamless conversion between synchronous and asynchronous messaging. - Apache ActiveMQ Artemis (⭐973) - Next-generation message broker from Apache ActiveMQ with high performance, clustering support, and multi-protocol capabilities. - Apache Kafka (⭐30k) - Distributed, high-throughput system designed for real-time data streaming and fault-tolerant processing. - Apache Pulsar (⭐14k) - Versatile pub/sub and streaming platform offering scalable, low-latency messaging for modern applications. - Apache RocketMQ (⭐21k) - High-performance distributed messaging platform engineered for low latency and high throughput. - Apache Qpid (⭐59) - AMQP-compliant messaging tool with multi-language support for enterprise-grade message delivery. - BlazingMQ (⭐2.6k) - Distributed message queuing system focused on efficiency and reliability for modern workflow needs. - Centrifugo (⭐9k) - Scalable real-time messaging server that minimizes delay in delivering events to online users. - Eclipse Mosquitto (⭐9.8k) - Lightweight MQTT broker optimized for low-power devices with robust encryption and authentication. - EMQX (⭐15k) - High-performance MQTT broker built for IoT and industrial applications, ensuring scalable message delivery. - IBM MQ - Enterprise-grade messaging solution providing robust features, high availability, and multi-protocol support. - KubeMQ - Kubernetes-native message broker and queue system designed for scalability, high availability, and seamless cloud integration. - LavinMQ (⭐749) - High-performance message queue server implementing AMQP 0-9-1 and MQTT protocols, built with Crystal for exceptional throughput and minimal resource usage. - NATS (⭐17k) - Lightweight, high-performance messaging system ideal for microservices and cloud-native architectures. - NSQ (⭐25k) - Realtime distributed messaging platform designed to operate at scale, handling billions of messages per day with decentralized topology. - Oracle AQ - Integrated messaging solution within Oracle databases, offering reliable and efficient message delivery. - RabbitMQ (⭐12k) - Popular open-source broker implementing AMQP, known for reliability, clustering, and ease-of-use. - Redpanda (⭐10k) - Kafka-compatible streaming platform that eliminates Zookeeper, delivering high performance and low latency. - Red Hat AMQ - Enterprise messaging platform based on open-source technologies, offering scalable and reliable message delivery. - TIBCO Enterprise Message Service - Standards-based JMS implementation that enables efficient and robust exchange of messages between applications. - VerneMQ (⭐3.3k) - High-performance distributed MQTT broker designed for scalable and efficient message delivery in modern environments.
⬆ back to top ### RPA Robotic Process Automation (RPA) solutions are software tools that automate repetitive, rule-based tasks within business processes. RPA bots can perform tasks such as data entry, data extraction, and data processing with accuracy and speed, freeing up human workers to focus on more complex tasks. - Automation Anywhere - Intelligent automation ecosystem that streamlines business processes and reduces errors through advanced RPA capabilities. - Blue Prism - No-code platform delivering robust, scalable automation to minimize manual tasks and boost productivity. - OpenRPA (⭐2.6k) - Enterprise-grade, open-source robotic process automation suite. - Robot Framework (⭐10k) - An open-source automation framework with human-friendly keyword syntax that enables both technical and non-technical users to create test scripts and automate business processes cost-effectively, supporting web, API, mobile, and database automation through extensive libraries and integrations. - TagUI (⭐6k) - An open-source RPA tool that democratizes automation through natural language scripting in 20+ human languages, enabling non-programmers to automate web, desktop, and data tasks while integrating AI/ML capabilities via Python and R for intelligent process automation. - Tungsten RPA - AI-powered, no-code automation solution that enhances accuracy, efficiency, and compliance across workflows. - UiPath - Comprehensive RPA platform that automates routine tasks, enabling scalable digital transformation across enterprises. - WorkFusion - Enterprise automation solution that combines RPA with intelligent automation to streamline complex workflows.
⬆ back to top ### Self-Service Integration Self-service and citizen integrator tools are designed to enable non-technical users to build integrations without the need for extensive programming knowledge. These tools typically feature drag-and-drop interfaces and pre-built connectors for popular applications and services.
⬆ back to top ### Workflow engine Software tools that enable the design, execution, and monitoring of complex workflows or business processes. Workflow engines provide a way to automate and streamline business processes, while orchestration engines help to manage the interactions between different systems or services. - Activiti (⭐10k) - Lightweight, Java-centric BPMN engine that efficiently executes business workflows with a focus on simplicity. - Apache Airflow (⭐40k) - Platform for programmatically creating, scheduling, and monitoring workflows, ideal for managing complex data pipelines. - Argo Workflows (⭐15k) - Container-native workflow engine designed for orchestrating parallel jobs in Kubernetes-based, cloud-native environments. - Azkaban (⭐4.5k) - Distributed scheduler that simplifies managing job dependencies in large-scale data processing environments. - Bonita (⭐167) - Open-source BPMN engine with a designer interface to build and automate complex business processes. - Cadence (⭐8.7k) - Fault-tolerant, stateful platform that reliably orchestrates long-running workflows and complex applications. - Camunda (⭐4.2k) - Flexible workflow and decision automation platform designed for scalable business process management. - Conductor (⭐12k) - Cloud-based orchestration engine that manages microservices workflows, streamlining complex process automation. - Elsa Core (⭐7.1k) - .NET Core library that integrates seamlessly into any application to execute and manage workflows. - Flowable (⭐8.5k) - Compact, efficient set of open-source engines for automating and scaling enterprise workflows. - jBPM (⭐1.6k) - Comprehensive toolkit for automating business processes and decisions with robust workflow management capabilities. - Prefect (⭐19k) - Modern, developer-friendly orchestration tool optimized for data pipelines and complex workflows. - StackStorm (⭐6.2k) - Robust automation engine that combines sensors, triggers, and workflows to orchestrate complex IT processes. - Temporal (⭐14k) - Open-source workflow-as-code platform designed for building reliable, scalable, and fault-tolerant applications.
⬆ back to top
## Integration Patterns Integration patterns
provide standardized solutions for common integration problems within an
enterprise. Enterprise Integration Patterns (EIP) provide a common
language for describing integration problems and solutions, while
Integration Architecture Patterns address high-level concerns of
enterprise architects. Service-Oriented Architecture (SOA) patterns
provide guidance for designing and implementing service-oriented
architectures, ensuring that services are scalable, reusable, and
loosely coupled. ### Enterprise Integration Patterns Patterns
from a book by Gregor Hohpe and Bobby Woolf. - Aggregator
- How do we combine the results of individual, but related messages so
that they can be processed as a whole?
- Canonical
Data Model - How can you minimize dependencies when integrating
applications that use different data formats? - Channel
Adapter - How can you connect an application to the messaging system
so that it can send and receive messages? - Channel
Purger - How can you keep ‘left-over’ messages on a channel from
disturbing tests or running systems? - Claim
Check - How can we reduce the data volume of message sent across the
system without sacrificing information content?
- Command
Message - How can messaging be used to invoke a procedure in another
application?
- Competing
Consumers - How can a messaging client process multiple messages
concurrently? - Composed
Message Processor - How can you maintain the overall message flow
when processing a message consisting of multiple elements, each of which
may require different processing?
- Content
Enricher - How do we communicate with another system if the message
originator does not have all the required data items available?
- Content
Filter - How do you simplify dealing with a large message, when you
are interested only in a few data items?
- Content-Based
Router - How do we handle a situation where the implementation of a
single logical function (e.g., inventory check) is spread across
multiple physical systems?
- Control
Bus - How can we effectively administer a messaging system that is
distributed across multiple platforms and a wide geographic area?
- Correlation
Identifier - How does a requestor that has received a reply know
which request this is the reply for? - Datatype
Channel - How can the application send a data item such that the
receiver will know how to process it? - Dead
Letter Channel - What will the messaging system do with a message it
cannot deliver?
- Detour
- How can you route a message through intermediate steps to perform
validation, testing or debugging functions? - Document
Message - How can messaging be used to transfer data between
applications? - Durable
Subscriber - How can a subscriber avoid missing messages while it is
not listening for them? - Dynamic
Router - How can you avoid the dependency of the router on all
possible destinations while maintaining its efficiency? - Envelope
Wrapper - How can existing systems participate in a messaging
exchange that places specific requirements on the message format, such
as message header fields or encryption?
- Event
Message - How can messaging be used to transmit events from one
application to another? - Event-Driven
Consumer - How can an application automatically consume messages as
they become available? - Format
Indicator - How can a
messages data format be designed to allow for possible future changes? - [Guaranteed Delivery](https://www.enterpriseintegrationpatterns.com/patterns/messaging/GuaranteedMessaging.html) - How can the sender make sure that a message will be delivered, even if the messaging system fails? - [Idempotent Receiver](https://www.enterpriseintegrationpatterns.com/patterns/messaging/IdempotentReceiver.html) - How can a message receiver deal with duplicate messages? - [Invalid Message Channel](https://www.enterpriseintegrationpatterns.com/patterns/messaging/InvalidMessageChannel.html) - How can a messaging receiver gracefully handle receiving a message that makes no sense? - [Message](https://www.enterpriseintegrationpatterns.com/patterns/messaging/Message.html) - How can two applications connected by a message channel exchange a piece of information? - [Message Dispatcher](https://www.enterpriseintegrationpatterns.com/patterns/messaging/MessageDispatcher.html) - How can multiple consumers on a single channel coordinate their message processing? - [Message Expiration](https://www.enterpriseintegrationpatterns.com/patterns/messaging/MessageExpiration.html) - How can a sender indicate when a message should be considered stale and thus shouldnt
be processed? - Message
Translator - How can systems using different data formats
communicate with each other using messaging?
- Message
Broker - How can you decouple the destination of a message from the
sender and maintain central control over the flow of messages? - Message
Bus - What is an architecture that enables separate applications to
work together, but in a decoupled fashion such that applications can be
easily added or removed without affecting the others?
- Message
Channel - How does one application communicate with another using
messaging? - Message
Endpoint - How does an application connect to a messaging channel to
send and receive messages? - Message
Filter - How can a component avoid receiving uninteresting messages?
- Message
History - How can we effectively analyze and debug the flow of
messages in a loosely coupled system?
- Message
Router - How can you decouple individual processing steps so that
messages can be passed to different filters depending on a set of
conditions? - Message
Sequence - How can messaging transmit an arbitrarily large amount of
data? - Message
Store - How can we report against message information without
disturbing the loosely coupled and transient nature of a messaging
system?
- Messaging
Bridge - How can multiple messaging systems be connected so that
messages available on one are also available on the others? - Messaging
Gateway - How do you encapsulate access to the messaging system from
the rest of the application? - Messaging
Mapper - How do you move data between domain objects and the
messaging infrastructure while keeping the two independent of each
other? - Normalizer
- How do you process messages that are semantically equivalent, but
arrive in a different format? - Pipes
and Filters - How can we perform complex processing on a message
while maintaining independence and flexibility?
- Point-to-Point
Channel - How can the caller be sure that exactly one receiver will
receive the document or perform the call? - Polling
Consumer - How can an application consume a message when the
application is ready?
- Process
Manager - How do we route a message through multiple processing
steps when the required steps may not be known at design-time and may
not be sequential? - Publish-Subscribe
Channel - How can the sender broadcast an event to all interested
receivers? - Recipient
List - How do we route a message to a list of dynamically specified
recipients? - Request-Reply
- When an application sends a message, how can it get a response from
the receiver? - Resequencer
- How can we get a stream of related but out-of-sequence messages back
into the correct order? - Return
Address - How does a replier know where to send the reply? - Routing
Slip - How do we route a message consecutively through a series of
processing steps when the sequence of steps is not known at design-time
and may vary for each message?
- Scatter-Gather
- How do you maintain the overall message flow when a message needs to
be sent to multiple recipients, each of which may send a reply?
- Selective
Consumer - How can a message consumer select which messages it
wishes to receive?
- Service
Activator - How can an application design a service to be invoked
both via various messaging technologies and via non-messaging
techniques? - Smart
Proxy - How can you track messages on a service that publishes reply
messages to the Return Address specified by the requestor? - Splitter
- How can we process a message if it contains multiple elements, each of
which may have to be processed in a different way?
- Test
Message - What happens, though, if a component is actively
processing messages, but garbles outgoing messages due to an internal
fault?
- Transactional
Client - How can a client control its transactions with the
messaging system?
- Wire
Tap - How do you inspect messages that travel on a point-to-point
channel?
⬆ back to top ### Integration Architecture Patterns Design patterns used to connect systems and applications in an efficient and seamless manner. - API-led Connectivity pattern - Use APIs to connect different systems and applications. - Anti Corruption Layer Pattern - Add a layer to isolate and transform data between systems. - Change Data Capture Pattern - Capture and propagate changes made to a database or data source in real-time. - Hybrid API Management pattern - Manage APIs that span both cloud and on-premises environments using a central control plane. - Hybrid Integration pattern - Integrate systems and applications that are deployed both on-premises and in the cloud using a combination of integration technologies.
⬆ back to top ### Microservice API Patterns MAP (Microservice API Patterns) is a set of proven solutions to common problems encountered when designing, implementing, and maintaining message-based APIs. It focuses on the message representations or payloads exchanged during API calls and their impact on the design and runtime qualities of an API. Proper governance of API specifications and implementations is essential for their long-term maintenance. - Foundation - Frontend Integration - How can client-side end-user interfaces that are physically separated from server-side business logic and data storage be populated and updated with computing results, result sets from searches in data sources, and detailed information about data entities? How can application frontends invoke activities in a backend or upload data to it? - Backend Integration - How can distributed applications and their parts, which have been built independently and are deployed separately, exchange data and trigger mutual activity while preserving system-internal conceptual integrity without introducing undesired coupling? - Public API - How can an API be made available to an unlimited and/or unknown number of API clients outside the organization that are globally, nationally, and/or regionally distributed? - Community API - How can the visibility of and the access to an API be restricted to a closed user group that does not work for a single organizational unit but for multiple legal entities (such as companies, nonprofit/nongovernment organizations, and governments)? - Solution-Internal API - How can access to and usage of an API be limited to an application, for instance, components in the same or another logical layer and/or physical tier? - API Description - Which knowledge should be shared between an API provider and its clients? How should this knowledge be documented?
⬆ back to top ### SOA Patterns SOA patterns are design solutions that provide guidelines and best practices for developing flexible and reusable service-oriented applications. These patterns address various aspects of service-oriented application design, including service identification, interaction, composition, and granularity. - Foundational Inventory Patterns - Canonical Protocol - Defines a common communication protocol between services to enable interoperability and decoupling. - Canonical Schema - Defines a standard data model and format for exchanging data between services. - Domain Inventory - Identifies and categorizes the types of services within a particular domain. - Enterprise Inventory - Identifies and categorizes the types of services within a particular domain. - Logic Centralization - Centralizes business logic within a service layer to reduce redundancy and promote consistency. - Service Layers - Centralizes business logic within a service layer to reduce redundancy and promote consistency. - Service Normalization - Centralizes business logic within a service layer to reduce redundancy and promote consistency.
⬆ back to top ## Resources Some useful specifications, standards, articles and documentation. ### API Specification - API Blueprint (⭐8.6k) - A powerful high-level language for designing and documenting APIs that allows software engineers to easily collaborate and create efficient APIs. - AsyncAPI (⭐4.6k) - An essential tool for developing Event-Driven Architectures (EDA) and enables engineers to build a better tooling ecosystem. - CloudEvents (⭐5.4k) - A specification for describing event data in common formats to provide interoperability across services, platforms and systems. - GraphQL (⭐14k) - A sophisticated query language and runtime for building efficient APIs that empowers engineers to retrieve data from existing systems with ease. - JSON:API (⭐7.5k) - A standardized specification for building APIs that simplifies the representation of resources, relationships, and metadata, making it easier for software engineers to create efficient APIs. - OpenAPI (ex.Swagger) (⭐29k) - A language-agnostic specification for creating RESTful APIs that enables both humans and machines to understand the capabilities of a service without the need for source code or documentation. - RAML (⭐3.8k) - A RESTful API Modeling Language that allows software engineers to design and create efficient APIs by modeling resources, endpoints, and interactions. - Standard Webhooks (⭐1.4k) - Open source tools and guidelines for sending webhooks easily, securely, and reliably. - WSDL - A powerful XML-based interface description language for SOAP-based services that enables software engineers to describe the functionality of a web service and automate the creation of client code.
⬆ back to top ### Articles - API-Security-Checklist (⭐22k) - Best practices about REST API security. - Architectural Styles and the Design of Network-based Software Architectures - Roy Fielding’s dissertation defining REST. - Enterprise Integration Using REST - Discusses the constraints and flexibility that you have with nonpublic APIs, and lessons learned from doing large scale RESTful integration across multiple teams. - Richardson Maturity Model - Explained by Martin Fowler, originally presented by Leonard Richardson. - Web API Design: Crafting interfaces that developers love - Creating Web APIs that are consistent, intuitive, and user-friendly for developers.
⬆ back to top ### CertificationsApollo Graph Developer - Associate Certification - Developers who obtain this certification possess a solid foundational knowledge of GraphQL and the Apollo tool suite to design a schema, run an Apollo Server 4, and perform queries with Apollo Client 3 on the frontend.
Apollo Graph Developer - Professional Certification - Developers who obtain this certification demonstrate strong familiarity with Apollo Federation concepts. They can apply those concepts to build a federated supergraph or move an existing monolithic graph to federation.
⬆ back to top ### Data Formats - Apache Avro (⭐3.1k) - Data serialization system that provides compact, fast, and efficient serialization of structured data. It supports schema evolution, allows for efficient data compression, and is designed to work well with big data processing frameworks. - BSON - Binary-encoded serialization format for JSON-like documents that is designed to be lightweight and efficient. It supports rich data types and is widely used in NoSQL databases, such as MongoDB. - CSV - A simple and widely used data format that stores tabular data in plain text. It is easy to read and write, and can be processed by most programming languages. - JSON - A lightweight and easy-to-read data format that is widely used for data exchange. It supports a wide range of data types and is compatible with many programming languages. - NDJSON (⭐751) - A standard for delimiting JSON objects in stream protocols. It allows for efficient processing of large JSON datasets and is widely used in big data processing. - Protocol Buffers (⭐67k) - A language-neutral and platform-neutral serialization mechanism that is designed to be highly efficient and extensible. It supports rich data types and is widely used in distributed systems, such as gRPC and Apache Kafka. - XML - A flexible and widely used markup language that is used for storing and exchanging structured data. It supports rich data types and is compatible with many programming languages. - YAML (⭐399) - A human-friendly and easy-to-read data serialization format that is widely used for configuration files and data exchange. It supports rich data types and is compatible with most programming languages.
⬆ back to top ### Integration Styles - File Transfer - Data is exchanged through file exchange between applications. - Messaging - Applications exchange messages using a messaging infrastructure. - Remote Procedure Invocation - Applications call functions or procedures on a remote server over a network. - Shared Database - Multiple applications access and manipulate the same data through a common database.
⬆ back to top ### Market Analysis - API Management - Gartner Critical Capabilities for Full Life Cycle API Management - Gartner Magic Quadrant for Full Life Cycle API Management - The Forrester Wave: API Management Solutions - BPM - Gartner Critical Capabilities for Intelligent Business Process Management Suites - Gartner Magic Quadrant for Intelligent Business Process Management Suites - ETL - Gartner Critical Capabilities for Data Integration Tools - Gartner Magic Quadrant for Data Integration Tools - iPaaS - Gartner Critical Capabilities for Enterprise Integration Platform as a Service - Gartner Magic Quadrant for Enterprise Integration Platform as a Service - The Forrester Wave: Enterprise iPaaS - RPA - Gartner Critical Capabilities for Robotic Process Automation - Gartner Magic Quadrant for Robotic Process Automation - The Forrester Wave: Robotic Process Automation
⬆ back to top ### Protocols - AMQP 0-9-1 - A message queuing protocol that enables the exchange of messages between applications or systems. AMQP 0-9-1 provides reliability, security, and flexibility to handle complex messaging scenarios. - AMQP 1.0 - A widely accepted message queuing protocol that provides reliable, interoperable, and efficient messaging between systems. AMQP 1.0 supports a broad range of messaging scenarios and is ideal for complex enterprise-level applications. - CoAP - A specialized application protocol designed for constrained devices in the Internet of Things (IoT) ecosystem. CoAP offers a lightweight, low-overhead communication mechanism to support resource-constrained devices. - HTTP - A widely used protocol that facilitates communication between web servers and clients. HTTP enables the transfer of data over the internet, making it possible for web applications to function seamlessly. - JSON-RPC - A simple and lightweight remote procedure call protocol that enables communication between systems using JSON data. JSON-RPC offers stateless communication and is suitable for resource-constrained devices. - MQTT - A lightweight and efficient publish-subscribe protocol that supports messaging between devices. MQTT enables low-overhead communication and is ideal for IoT and mobile applications. - OpenMessaging (⭐290) - A cloud native, vendor-neutral open specification for distributed messaging. - SOAP - A messaging protocol that uses XML to enable communication between systems. SOAP supports a wide range of messaging scenarios, including distributed computing and enterprise applications. - STOMP - A messaging protocol that offers simple, text-oriented communication between systems. STOMP is ideal for low-latency, high-performance messaging scenarios.
⬆ back to top ### Standard APIs - JDBC - A Java-based API that provides universal data access to relational databases. JDBC offers a consistent and efficient way to access and manipulate data, making it a popular choice among developers. - JMS - A messaging API that enables Java applications to send and receive messages. JMS supports reliable messaging and is widely used in enterprise-level applications. - ODBC - A widely accepted API that provides a standardized way to access data from various database management systems. ODBC offers a consistent interface to access data, making it easy to develop database applications. - OData - An open protocol that enables the creation and consumption of queryable and interoperable REST APIs. OData simplifies the development of REST APIs and offers a standardized way to access data.
⬆ back to top ### Structure and Validation - JSON Schema (⭐4.3k) - A powerful tool for validating the structure of JSON data. JSON Schema enables developers to ensure that JSON data conforms to a specific structure, making it easier to process and manipulate. - Schematron - A rule-based validation language that enables developers to define and validate business rules, data reporting, quality control, and other validation scenarios. Schematron offers a flexible way to validate XML documents. - XML Schema - A schema language that offers facilities for describing the structure and constraining the contents of XML documents. XML Schema enables developers to ensure that XML data conforms to a specific structure, making it easier to process and manipulate.
⬆ back to top ## Contributing Your contributions are always welcome! Please take a look at the contribution guidelines first.