8 مستودعات
Architectural patterns for defining and extending software interfaces.
Distinguishing note: Focuses on developer-facing API structure.
Explore 8 awesome GitHub repositories matching software engineering & architecture · API Design Patterns. Refine with filters or upvote what's useful.
This project is a programmable, high-performance drawing engine designed for building collaborative whiteboards, diagramming tools, and infinite canvas applications. It provides a reactive graphics runtime that manages complex canvas interactions, viewport animations, and input handling through a unified signal-based API. The framework is built on a schema-driven data store that maintains application state in a strictly typed, centralized record system, enabling efficient UI updates and persistent data management. The engine distinguishes itself through a highly modular architecture that supp
Implements a type-safe pattern for defining custom shape and binding types.
This project is a comprehensive educational resource focused on the principles, patterns, and trade-offs required to design scalable, reliable, and high-performance distributed systems. It provides a structured curriculum that covers the fundamental architectural strategies necessary for building modern software infrastructure, ranging from high-level system decomposition to low-level networking and data management. The repository distinguishes itself by offering deep dives into complex architectural patterns, such as microservices-based decomposition, event-driven communication, and command-
Provides guidance on selecting communication protocols and integration patterns for backend services.
This project provides a comprehensive collection of standardized conventions and architectural patterns designed to maintain consistent code quality, secure workflows, and project stability. It serves as a structured guide for implementing engineering processes, including automated testing, dependency management, and environment configuration across diverse software development lifecycles. The framework distinguishes itself by offering a unified approach to version control and interface design. It enforces linear development practices through standardized commit messages and branch protection
Structures service interfaces around nouns and standard HTTP methods for predictable and scalable communication.
This project is a Python cryptography library that provides a collection of cryptographic primitives and high-level recipes for implementing secure encryption and authentication. It functions as a symmetric encryption toolkit and a cryptographic hash provider, offering both a low-level cryptographic interface for building custom protocols and high-level tools for securing data. The library covers a broad range of security capabilities, including symmetric data encryption, the derivation of cryptographic keys from passwords or secret values, and data integrity verification through the generati
Organizes functionality into low-level primitives and high-level recipes to prevent common implementation errors.
OpenTelemetry Go is a framework for generating and collecting distributed traces, metrics, and logs from Go applications. It provides a standardized telemetry instrumentation API for adding observability markers to code and a corresponding SDK for processing and emitting these signals. The project utilizes a configurable observability pipeline to sample and export telemetry data to external backends using the OTLP wire protocol. It features a pluggable export system and a separation between the public API and the SDK implementation, allowing telemetry to be routed to third-party platforms wit
Separates the public instrumentation API from the SDK implementation, allowing multiple SDKs to coexist behind the same interface.
يوفر هذا المشروع مجموعة شاملة من أنماط التصميم الموحدة، واتفاقيات التسمية، وتكوينات البيئة لتطوير Objective-C. ينشئ إطار عمل متسقاً لتصميم API، وإدارة الذاكرة، وتنظيم المشروع لضمان بقاء قواعد الكود قابلة للقراءة والصيانة عبر الفرق. يحدد الدليل معايير محددة لعزل مساحة الاسم باستخدام بادئات الفئة ونظام منظم لتسمية الأصول. ويحدد أنماطاً معمارية لبروتوكولات التفويض وآليات معالجة الأخطاء التي تهدف إلى تحسين سلامة النوع والوضوح. يمتد التغطية إلى تنسيق الكود المصدري، وتنظيم هيكل الفئة، وتنفيذ الـ singletons الآمنة للخيوط. كما يتضمن معايير لتكوين مشروع Xcode، ومواءمة التسلسلات الهرمية للملفات المادية مع مجموعات المشروع وإدارة إعدادات البناء.
Provides architectural patterns for designing developer-facing APIs, including delegate protocols and error handling.
This C++ data visualization library is a scientific plotting framework used to create 2D and 3D charts, network graphs, and geographic maps. It operates as a multi-backend graphics library, decoupling high-level plotting logic from low-level rendering engines to support various output backends. The project distinguishes itself with a dual-interface API, providing both a global functional interface for rapid prototyping and an object-oriented interface for precise control. It features a component-based layout engine for managing tiled grids and subplots, alongside a layered plot state that all
Provides a dual-interface API offering both a global functional approach for rapid prototyping and an object-oriented interface for granular control.
This project is a software engineering playbook providing a collection of standardized guidelines and processes for managing the full software development lifecycle and team operations. It serves as a high-level framework for organizing agile project management, API design, containerized development standards, and markdown documentation workflows. The framework establishes a system for language-agnostic API design to automate client library generation and documentation. It also defines standards for providing uniform contributor environments and toolchains through virtualized containers. The
Establishes language-agnostic patterns for defining HTTP service interfaces and automating client library generation.