28 repositorios
Markers used to associate structured metadata with language constructs for compile-time inspection.
Distinct from Metadata Attachments: Distinct from Metadata Attachments: focuses on source code annotations for language-level introspection rather than pipeline data streams.
Explore 28 awesome GitHub repositories matching software engineering & architecture · Code Annotations. Refine with filters or upvote what's useful.
Ace is a high-performance, browser-based code editor and JavaScript text editor component designed to be embedded into web applications. It functions as a feature-rich alternative to standard text areas, providing a syntax highlighting engine and support for multiple programming and markup languages. The editor is distinguished by its ability to handle large documents containing millions of lines while maintaining stable performance. It supports multi-cursor editing, allowing simultaneous modifications at multiple selection points across a document. The project covers a broad range of develo
Displays markers and tooltips in the gutter to show metadata or status information for specific lines.
Crystal is a statically typed, compiled programming language designed for high performance and memory safety. It leverages an LLVM-based compiler to translate source code into optimized machine-executable binaries, while its type-inference-based static analysis enforces strict safety rules during the build process. The language distinguishes itself through a fiber-based concurrent runtime that manages lightweight execution units for asynchronous input and output without blocking the main process. It also features a powerful compile-time macro system that allows for the inspection and transfor
Crystal defines custom markers to associate structured information with types, methods, variables, and parameters for later inspection.
This project is a comprehensive educational resource and programming course covering C++ language semantics and features from C++03 through C++26. It provides structured tutorials and technical guides focused on modern C++ development. The material offers specialized instruction on template metaprogramming, including the use of type traits and compile-time computations. It features detailed guides on concurrency and parallelism for multi-core execution, as well as a reference for software design applying SOLID principles and RAII. Additionally, it covers build performance optimization to redu
Covers the use of attributes and metadata to provide hints for optimization and deprecation.
Quarkus is a Kubernetes-native Java framework designed for building high-performance, memory-efficient applications. It utilizes ahead-of-time native compilation to transform Java code into standalone, optimized binaries that eliminate the need for a virtual machine, enabling rapid startup and reduced memory consumption. By performing code augmentation during the build phase, it shifts heavy processing tasks away from runtime, ensuring that applications are optimized for cloud-native environments. The framework distinguishes itself through a unified approach to reactive and imperative program
Tracks method execution time and invocation counts automatically using standard code annotations.
JavaPoet is a source code generator and metaprogramming utility for the Java language. It functions as an abstract syntax tree construction library that allows developers to model classes, methods, and fields as objects before emitting them as source code. The library distinguishes itself through automatic import management and code formatting. It tracks referenced types to generate required import statements and handles line wrapping, semicolon placement, and indentation to ensure generated files remain readable. The tool covers a broad range of generation capabilities, including the defini
Supports adding structured metadata annotations to classes, methods, and fields during code generation.
go-swagger is a toolkit for working with Swagger/OpenAPI 2.0 specifications in Go. It generates server, client, and CLI code from a specification document, and can also produce a specification by scanning annotated Go source code. The project includes a static validation engine that checks documents against the schema and project-specific rules, and a specification transformation pipeline that resolves, flattens, and merges documents. The toolkit generates both client and server code from the same specification, ensuring consistency in request and response handling. It also produces a command
Scans Go source annotations to produce a complete Swagger specification document.
Epoxy is an Android library for building complex RecyclerView screens using a model-driven approach. It generates RecyclerView adapter models at compile time from annotated custom views, data binding layouts, or view holders, eliminating the manual boilerplate typically associated with view holders and adapters. The library provides a diffing engine that automatically compares model lists and applies minimal updates with animations for insertions, removals, and moves. The library distinguishes itself through its controller-based model building, where a controller class with a buildModels meth
Generates RecyclerView model classes from annotated abstract classes with view binding in holders.
Vespa is a distributed search engine, vector database, and machine learning ranking engine. It serves as an AI search platform designed to handle large-scale document indexing and complex query processing across a cluster of nodes, combining keyword retrieval with high-dimensional embedding storage for semantic similarity search. The platform distinguishes itself by integrating machine learning models directly into the search pipeline to perform real-time inference and ranking. It converts these models into ranking expressions to score and order results based on relevance, while providing a s
Implements specialized source annotations to mark and manage components within the source code.
FEX is an emulator that executes 32-bit and 64-bit x86 binaries on ARM64 hardware. It functions as a binary translation framework that converts guest machine code into host instructions using a JIT compilation engine and a persistent code cache. The project features a Vulkan graphics wrapper that translates OpenGL and Vulkan API calls to native host drivers, enabling cross-architecture graphics rendering. It includes a dedicated root filesystem manager for downloading, mounting, and switching between compressed filesystem images required for guest application environments. The system provide
Marks generated JIT code with symbols to identify performance bottlenecks using profiling tools.
This project is a PHP docblock annotation parser and reflection metadata tool designed to extract structured metadata from doc-comments and convert them into class instances. It functions as a system for retrieving and managing custom metadata attached to classes, methods, and properties. The library includes a metadata caching system to store parsed results, which reduces the performance overhead associated with repeated reflection calls and string parsing. It also serves as a static analysis utility for validating source code structure and enforcing coding standards through automated docblo
Extracts structured metadata from source code annotations for runtime analysis via reflection.
Generate Java types from JSON or JSON Schema and annotate those types for data-binding with Jackson, Gson, etc
Attaches @JsonView annotations to generated fields for controlling Jackson serialization views.
CppGuide is a curated collection of educational resources and practical guides focused on C++ server development, Linux kernel internals, concurrent programming, network protocols, and security exploitation. It provides structured learning paths for backend developers, covering everything from interview preparation to building high-performance network servers and understanding operating system fundamentals. The guide distinguishes itself by offering in-depth, hands-on tutorials that walk through real-world implementations, including building a Redis-like server from scratch, designing custom
Teaches using C++17 attributes to convey intent to the compiler and static analyzers.
Springfox is a Java library that automatically generates OpenAPI-compliant documentation for Spring-based REST services. It scans Spring controller annotations and model classes at runtime to produce machine-readable API specifications, and bootstraps an interactive Swagger UI interface on application startup for browsing and testing documented endpoints. The project provides a migration path from Swagger 2 to OpenAPI 3, replacing legacy annotations and dependencies with OpenAPI 3 equivalents through a starter dependency and configuration change. It integrates with Spring's application contex
Scans Spring controller annotations to automatically produce an OpenAPI-compliant specification.
Este proyecto es un recurso educativo integral y una serie de tutoriales para aprender scripting en Bash y programación shell. Sirve como guía técnica y manual de referencia para escribir scripts de automatización y crear herramientas reutilizables dentro de un entorno Linux. El material se centra en la automatización de DevOps y SysOps, cubriendo el desarrollo de herramientas de línea de comandos personalizadas, automatización de administración de sistemas y la implementación de automatización de seguridad, como la generación de contraseñas aleatorias y protección contra DDoS. El alcance abarca los fundamentos del lenguaje, incluyendo variables, bucles y lógica condicional, así como capacidades operativas como monitoreo de salud del sistema, resumen de logs de servidores web y gestión remota de servidores vía SSH. También aborda la interacción con la terminal mediante la construcción de menús interactivos, formato de salida y alias de comandos. El contenido está estructurado como una serie de guías, un ebook y una referencia de scripting.
Covers the use of comments to provide non-executable documentation within scripts.
jscpd is a code duplication detector that scans source code across 223 languages to find identical or near-identical copy-pasted blocks using a rolling hash algorithm. It is built with a Rust core for high performance, exposed through a Node.js API and CLI, and can be run as a standalone binary with no runtime dependencies. The tool detects duplicates in embedded languages within Vue, Svelte, Astro, and Markdown files by tokenizing each language block separately, and it supports extensionless scripts via shebang detection. The project distinguishes itself through its integration capabilities
Uses code annotations to mark sections that should be ignored during duplication analysis.
TypeSpec is a language for defining cloud API shapes and generating OpenAPI, JSON Schema, and client/server code from a single source of truth. It functions as a protocol-agnostic API designer that models REST, gRPC, and other API protocols using a unified, extensible syntax, with a decorator-based metadata system for attaching metadata, validation rules, and lifecycle visibility to API models and operations. The compiler produces OpenAPI 3.0 specifications and other artifacts, and the tool supports declaring API versions and tracking changes to models, properties, and operations across releas
Compiles TypeSpec API definitions into OpenAPI 3.0 specifications and other artifacts.
Carp is a statically typed Lisp compiler that compiles Lisp-like syntax directly to C source code, enabling seamless integration with existing C libraries and low-level system programming. It manages memory deterministically at compile time using ownership tracking and linear types, eliminating garbage collection pauses and runtime overhead while ensuring type safety through an inferred static type system. The language distinguishes itself through compile-time macro expansion and metaprogramming capabilities, allowing code generation and transformation before final binary output. It enforces
Attaches documentation, type signatures, and deprecation notices to named bindings.
danger-js es una herramienta de revisión de código automatizada y plugin de pipeline de CI que funciona como un linter de pull requests. Verifica mensajes de commit, rastrea cambios en dependencias y asegura que los pull requests cumplan con los estándares del proyecto publicando comentarios y feedback automatizados directamente en la interfaz de control de versiones. El sistema se integra con varios proveedores de Git, incluyendo GitHub, GitLab y BitBucket, para recuperar metadatos de pull requests y ejecutar reglas de revisión personalizadas. Permite a los equipos empaquetar y distribuir convenciones de revisión como módulos compartibles y admite la ejecución de reglas escritas en lenguajes transpilados mediante configuración de runtime. El proyecto cubre una amplia gama de capacidades de automatización, incluyendo gobernanza de calidad de código, auditorías de gestión de dependencias y la aplicación de etiqueta en pull requests. Puede analizar resultados de linters externos, ejecutores de pruebas y herramientas de cobertura para reportar fallos, monitorear tamaños de bundle y detectar anti-patrones o palabras prohibidas dentro del código base. La herramienta puede ejecutarse como un paso de compilación dentro de un pipeline de integración continua o localmente mediante git-hooks.
Scans the codebase for FIXME and TODO markers and triggers failures if they are detected.
OpenEvolve is an open-source framework for evolutionary computation that uses language models to drive automated optimization across multiple domains. It can evolve system prompts for large language models, refine source code across programming languages, search for optimal GPU kernel configurations, discover interpretable mathematical expressions from data, and maintain diverse populations of high-performing solutions. The framework integrates multiple evolutionary strategies, including MAP-Elites diversity mapping and island-based topologies, to avoid premature convergence and preserve a wid
Marks delimited code blocks with start and end comments so mutation operators target only those sections.
c3c is the compiler for the C3 programming language, transforming source code into executable binaries, static libraries, or dynamic libraries using an LLVM backend. It implements a system based on result-based error handling, scoped memory pooling, and a semantic macro system. The compiler provides first-class support for hardware-backed SIMD vectors that map directly to processor instructions and enables runtime polymorphism through interface-based dynamic dispatch. The project covers a broad set of low-level capabilities, including manual and pooled memory management, inline assembly inte
Marks symbols as deprecated, unused, or mandatory to trigger specific compiler warnings.