Home

Awesome

Awesome Integration Awesome

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.

Contents


Projects

API Management

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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

Managed File Transfer

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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

Master Data Management

Master Data Management 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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

Integration Architecture Patterns

Design patterns used to connect systems and applications in an efficient and seamless manner.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

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.

<!--lint disable-->

⬆ back to top

<!--lint enable-->

Resources

Some useful specifications, standards, articles and documentation.

API Specification

<!--lint disable-->

⬆ back to top

<!--lint enable-->

Articles

<!--lint disable-->

⬆ back to top

<!--lint enable-->

Certifications

<details> <summary>API Academy</summary> </details> <details> <summary>APIsec University</summary> </details> <details> <summary>Apollo</summary> </details> <details> <summary>Boomi</summary> </details> <details> <summary>IBM</summary> </details> <details> <summary>Gravitee</summary> </details> <details> <summary>Kong</summary> </details> <details> <summary>Mulesoft</summary> </details> <details> <summary>Oracle</summary> </details> <details> <summary>Red Hat</summary> </details> <details> <summary>SAP</summary> </details> <details> <summary>SnapLogic</summary> </details> <details> <summary>TIBCO</summary> </details> <details> <summary>Workato</summary> </details> <details> <summary>WSO2</summary> </details> <!--lint disable-->

⬆ back to top

<!--lint enable-->

Connectors

<!--lint disable-->

⬆ back to top

<!--lint enable-->

Data Formats

<!--lint disable-->

⬆ back to top

<!--lint enable-->

Integration Styles

<!--lint disable-->

⬆ back to top

<!--lint enable-->

Market Analysis

<!--lint disable-->

⬆ back to top

<!--lint enable-->

Protocols

<!--lint disable-->

⬆ back to top

<!--lint enable-->

Standard APIs

<!--lint disable-->

⬆ back to top

<!--lint enable-->

Structure and Validation

<!--lint disable-->

⬆ back to top

<!--lint enable-->

Contributing

Your contributions are always welcome! Please take a look at the contribution guidelines first.