Onion Architecture: A Flexible Approach to Developing Software
Domain-driven design is an approach to developing software thats connected to an evolving model of core business concepts. Onion architecture is built on this concept, with layers connected through in...
Automatic C4 diagrams for a distributed microservice ecosystem with GitHub Actions
Documenting components and their relations in a distributed microservice ecosystem is crucial to maintain clarity and avoid confusion. The C4 Model provides a compact and clear way to describe the sys...
Principles & Best practices of REST API Design
This best-practices article provides guidelines for developers to create reliable and consistent RESTful Web services across multiple service suites, positioning them for rapid public adoption by inte...
Top 10 Architecture Characteristics / Non-Functional Requirements with Cheatsheet
In this article, Love Sharma explores the top 10 characteristics of software architecture, also known as non-functional requirements, and provides a cheatsheet for implementing them. Just like with bu...
Architecture as Code with C4 and Plantuml
Bertrand Florat discusses the use of C4 model to represent the architecture of a large microservices-based project. The article covers different architecture views, including the application view, sof...
How to Document Software Architecture?
Every application has an architecture that constantly evolves. Its important to not only pass everything related to it to the team but also keep the information up to date. This article focuses on how...
IcePanel | The C4 model collaboration tool
IcePanel is a powerful collaboration tool for software engineering and product teams that allows you to align on technical decisions with ease. With IcePanel, you can visually design C4 model diagrams...
Product Architecture Document Template
GitHub is a comprehensive platform for all software development needs. The platform offers a range of services such as Automate any workflow, Host and manage packages, Find and fix vulnerabilities, In...
# PlantUML Icon-Font Sprites
This JSON structure contains information about PlantUML Icon-Font Sprites. To get started with this feature, you would require common.puml. You can include it either through the local directory or via...
Barfi: A Python visual Flow Based Programming library
Barfi is a Flow Based Programming environment in Python that provides a graphical programming interface. The library integrates easily into your existing Python workflows using `barfi.Block`s and `bar...
Build a Real-time Data Analytics Pipeline with Airbyte, Kafka, and Pinot
Learn how to use Airbyte, Kafka, and Pinot to build a real-time data pipeline for a user-facing analytics dashboard. This article explores three popular open-source products in the data space, Airbyte...
Difference between API Observability and API Monitoring
API monitoring and observability are ways of monitoring application program interfaces (APIs) to gain insight into their availability, performance, and proper functionality. The article discusses the ...
Getting the most out of TypeScript - Union Types
TypeScript provides the ability to add Types and union types can be a better way of doing things, as demonstrated by authentication details. This article explains how TypeScript differs from tradition...
Sending Reliable Event Notifications with Transactional Outbox Pattern
In this article, Dunith Dhanushka explains how the Transactional Outbox pattern can help solve the problem of dual writes in distributed systems. The article discusses the drawbacks of synchronous and...
TypeScript: Interfaces or Types. What’s the Difference?
In TypeScript, both interfaces and types can be used to define types, but they have different purposes. Interfaces are used to define the structure of object types, while type aliases provide a name f...
Aada Finance to Embrace Full Visibility and Transparency
Aada Finance, a peer-to-peer lending protocol on the Cardano blockchain, is going open source to ensure complete visibility and transparency of its smart contract code. Aada Finance plans to deploy it...
Azure-PlantUML: Creating Visually Appealing and Memorable Diagrams for Azure Systems
Azure-PlantUML is a toolset for creating PlantUML diagrams with Azure components. It includes symbols, macros and stereotypes for all Azure services using official Microsoft Azure architecture icons. ...
C4-PlantUML: A Collection of PlantUML Diagrams for C4 Architecture Model
C4-PlantUML is an open-source project that provides a collection of PlantUML diagrams for the C4 architecture model, which is a simple and intuitive way to describe software architecture. These diagra...
Disruptor-net: A High Performance Inter-Thread Message Passing Framework for .NET
Disruptor-net is a .NET port of LMAX Disruptor, a high performance inter-thread message passing framework. It can be succinctly defined as a circular queue with a configurable sequence of consumers, a...
Software Architecture Diagramming and Patterns
Learn how software architecture diagrams can help you plan for and implement changes in your network, visualize strategic initiatives, and stay ahead of your organization’s needs. We’ll cover the basi...