45 repositorios
Patterns for structuring code into packages to separate domain logic from executable entry points.
Distinct from Code Organization: Focuses on the structural separation of domain logic and binaries, distinct from general project management.
Explore 45 awesome GitHub repositories matching software engineering & architecture · Package-Based Code Organization. Refine with filters or upvote what's useful.
DefinitelyTyped is a community-maintained type store and centralized JavaScript type registry. It serves as a repository of static TypeScript type declarations for third-party JavaScript libraries, providing the necessary metadata to enable compile-time safety and editor intelligence for external modules not originally written in TypeScript. The project operates as a collaborative ecosystem where contributors define, validate, and maintain type declarations through a structured review process. This involves mapping type definition versions to specific library and compiler releases to ensure s
Implements scoped package naming conventions to maintain compatibility with package managers.
This project is an educational platform and tutorial series designed to teach the Go programming language through the practice of test-driven development. It provides a structured path for developers to master language fundamentals, concurrency, and standard library usage by building functional applications in small, verifiable increments. The core methodology centers on the test-driven development cycle, where failing tests are written before implementation to define requirements and ensure code correctness. This approach is applied across a wide range of practical scenarios, including the c
Separates domain logic from executable entry points to allow multiple binaries to share the same underlying codebase and library functions.
Bit is a component-based development platform and monorepo orchestrator used to build, manage, and share reusable software components across projects. It functions as a system for modular software architecture, providing a component registry for publishing and distributing independent software modules via remote scopes. The platform distinguishes itself through lane-based versioning, which isolates feature development into parallel tracks for comparison and merging. It utilizes a scope-based namespace registry to organize components into hierarchical groups and employs environment-driven comp
Maps local directory structures to a remote component registry to synchronize development and distribution.
The Rust Programming Language Book is the official technical guide and educational resource for the Rust language. It provides a comprehensive walkthrough of the language's design, focusing on its core identity as a systems programming language that enforces memory safety and high-performance execution without the need for a garbage collector. The project is distinguished by its focus on ownership, borrowing, and lifetime tracking, which allow the compiler to verify memory safety and thread safety at compile time. It covers the language's unique approach to zero-cost abstractions, including t
Bundles multiple crates into a single unit to manage dependencies and build processes.
This project is a community-driven style guide that defines standards for formatting and structuring Ruby code. It serves as a collection of language conventions and best practices intended to ensure that Ruby applications are written idiomatically and maintainably. The guide functions as a static analysis standard, providing a reference that automated linting tools use to enforce uniform coding patterns and structural rules. By mapping written guidelines to these automated configurations, it establishes a shared source of truth for code consistency. The scope of the project covers Ruby code
Organizes coding standards into specific structural patterns and examples for consistent application.
This project provides a comprehensive guide to architectural patterns and best practices for building scalable, maintainable, and performant web applications using FastAPI. It focuses on standardizing development approaches for Python web services, emphasizing robust request validation, dependency injection, and automated documentation standards to ensure consistent API design. The guide distinguishes itself by promoting domain-driven modular packaging, which organizes application logic into isolated, feature-based directories to support long-term codebase scalability. It also details strateg
Groups application logic into bounded contexts with dedicated modules for routes, services, and models.
This project is a comprehensive set of standards for the Swift ecosystem, providing a code style guide, API design standards, and a memory management guide. It establishes standardized naming and formatting rules to ensure consistent and maintainable source code. The project includes a linting configuration used by automated tools to detect and enforce syntax patterns. These rules are designed to standardize code style and can be integrated into build phases to block commits with formatting errors. The guidelines cover a broad range of development capabilities, including the use of access mo
Establishes standards for grouping protocol conformances and functionality into extensions to maintain a clean class structure.
This project establishes a collection of interoperability standards for the PHP ecosystem. It defines common technical specifications to ensure that separate software projects and libraries can work together without compatibility issues. The standards cover a variety of core domains, including specifications for class autoloading through namespace-to-path mapping, shared coding style guides for codebase uniformity, and common component interfaces for services such as logging and caching. It also defines shared specifications for network communication to ensure consistent interactions between
Standardizes how class names translate to file system locations to enable automatic loading of source files.
This project is a namespace-based logging utility for JavaScript runtimes, including Node.js and web browsers. It provides a system for categorizing output into distinct namespaces to enable filtered visibility and color-coded identification of log sources. The utility allows for dynamic log control, where output streams can be toggled on or off via environment variables or method calls without restarting the application. It includes an execution time profiler that calculates the elapsed time between consecutive log calls to identify performance bottlenecks. Further capabilities include the
Assigns consistent visual colors to log sources based on their unique namespace identifiers for easier identification.
Agent Skills is a framework for bundling executable scripts and metadata to extend the capabilities and tool-use of language model agents. It provides a standardized directory structure for packaging specialized workflows, technical instructions, and portable agent capabilities for distribution across different AI platforms. The project features a tool optimization suite used to refine skill triggers and evaluate the reliability of agent-activated capabilities. It includes a context-aware knowledge manager that organizes technical references into a hierarchy, loading them on demand to reduce
Implements a standardized directory structure for packaging and distributing specialized agent workflows and technical instructions.
s3fs-fuse es un sistema de archivos basado en FUSE que monta buckets de Amazon S3 y almacenamiento de objetos compatible con S3 como directorios locales. Funciona como una pasarela de almacenamiento de objetos en la nube, traduciendo llamadas estándar del sistema de archivos POSIX a solicitudes de API RESTful para permitir que los objetos remotos se accedan como si fueran archivos locales. El proyecto permite el mapeo de almacenes de objetos remotos a rutas locales en Linux, macOS y FreeBSD. Admite la integración con proveedores externos compatibles con S3 mediante el uso de URLs de servicio personalizadas y estilos de solicitud especializados. El sistema incluye capacidades para el almacenamiento en caché local de datos y metadatos para reducir la latencia de red y la frecuencia de las solicitudes a la API. El acceso se gestiona mediante autenticación basada en credenciales y firma de solicitudes utilizando variables de entorno o archivos de credenciales.
Simulates a hierarchical directory structure by interpreting flat S3 object keys as filesystem paths.
Xgo is a programming language that combines familiar constructs from languages like C/C++, Go, Python, and JavaScript with a natural language-style syntax that reads closer to plain English. It executes programs compatible with the Go language, allowing reuse of existing Go libraries and tooling, and supports mixing Go and XGo source files within a single package for gradual adoption of its simplified syntax. The language distinguishes itself through direct foreign function interface capabilities, enabling calls to C/C++ and Python libraries using specialized string literal syntax without man
Organizes code into packages and functions using Go-style syntax for modular development.
Vimwiki is a personal wiki plugin and text editor extension for Vim that organizes interconnected text files. It functions as a Markdown knowledge base and a Zettelkasten note system, allowing for the creation of a networked system of notes and documentation. The project provides tools for wiki administration, enabling users to create, rename, and navigate between linked documents via internal linking. It supports various markup formats, including Markdown and MediaWiki, and can transform this content into HTML for web publishing. The system covers personal knowledge management through globa
Maps logical wiki page titles to their corresponding physical file paths on disk for organized document retrieval.
This project is a framework for packaging and installing standardized capabilities, scripts, and instructions that LLM agents execute to perform complex tasks. It functions as a tool orchestrator and skill framework, bundling instructions and resources into portable formats that agents discover and use for repeatable workflows. The system distinguishes itself through a manifest-driven discovery process, allowing agents to identify available capabilities and their execution parameters. It supports the deployment of these modular capability sets into isolated runtime environments using remote U
Bundles instructions and scripts into portable packages that agents discover and install to expand their toolset.
This project is a comprehensive AI infrastructure that combines an LLM agent orchestration framework, an autonomous research system, and a local AI environment. It centers on the creation of a personal knowledge graph and a programmatic prompt engineering library to provide long-term memory and optimized reasoning for artificial intelligence tasks. The system is distinguished by its ability to compose multi-agent teams using specialized personas and deterministic skills to execute complex workflows. It features an autonomous research pipeline capable of deep investigations and adversarial ana
Provides standardized skill packages with setup and verification files for predictable agent capability deployment.
Checkstyle is a Java static analysis tool and linter designed to identify and enforce coding standards and best practices. It functions as a code quality auditor and Javadoc validation tool, checking source code against configurable rulesets to ensure structural and stylistic consistency. The project allows for the creation of custom linting rules by extending a core API to inspect the abstract syntax tree. It further enables specialized validation through the use of XPath expressions to query the syntax tree for specific code patterns and violations. Capability areas include the enforcement
Ensures all package-level annotations are located within the package-info file for proper organization.
oapi-codegen is an OpenAPI specification compiler and code generator for Go. It transforms OpenAPI definitions into type-safe Go client libraries, server boilerplate, and data models to facilitate contract-first API development. The tool distinguishes itself through a flexible customization system that allows users to override generated types and imports via specification extensions. It supports the use of custom text templates to redefine the final source code structure and provides a specification overlay mechanism to modify or remove endpoints without altering the original source file. Th
Maps external references to different Go packages to manage large specifications and reuse data models.
This project is a visual guide that explains the internal architecture of a UI library through annotated diagrams and step-by-step walkthroughs. It covers core mechanisms including how browser events are normalized into a unified system, how the fiber tree is constructed and reconciled for incremental updates, how state and effect hooks are managed through their lifecycle, and how the scheduler prioritizes work units to maintain responsive rendering. The resource distinguishes itself by mapping the library's package dependency hierarchy and providing visual explanations of how these internal
Maps the core packages of a UI library and their dependencies through visual diagrams.
100 Go Mistakes is a reference book and code review companion that catalogues frequent Go programming anti-patterns and provides corrected implementations for each one. It covers a wide range of common pitfalls, from range loop variable capture and interface nil handling to error wrapping and map iteration randomization, helping developers recognize and avoid these issues in their own code. The project distinguishes itself by offering a structured, example-driven approach to learning idiomatic Go. It covers core design decisions such as when to use pointer versus value receivers, how to apply
Provides guidance on naming packages by their purpose rather than generic categories.
Higress is an AI API gateway and cloud-native traffic manager that functions as a Kubernetes ingress controller. It provides a centralized system for routing, securing, and optimizing traffic directed toward large language models, AI agents, and microservice architectures. The project distinguishes itself through deep AI orchestration, including the ability to host and manage Model Context Protocol servers that transform REST APIs into tools for AI agents. It features specialized AI infrastructure for model request proxying, protocol translation across multiple providers, and semantic-based c
Wraps models, agents, and servers into standardized product packages with custom metadata and guides.