CATEGORY
Development tools::Procedural macro helpers 1,202 crates
Data as of 2026-07-25 (crates.io database dump, timestamp 2026-07-25T02:00:36Z). Source: crates.io · db-dump.tar.gz · methodology & corrections.
cf-gears-toolkit-db-macrosProc-macro derives for toolkit-db secure ORM layer3,627Apache-2.0
ux-macroBackend agnostic GUI framework3,614MPL-2.0
supply-chain-trust-example-crate-000001Parser for Rust source code3,613MIT OR Apache-2.0
ftl-sdk-macrosProcedural macros for the FTL SDK3,602Apache-2.0
graph-api-deriveDerive macros for the graph-api ecosystem - provides type-safe vertex and edge extensions3,598Apache-2.0
outer_attributeA library providiving `OuterAttribute` that implements `syn::parse::Parse` trait.3,591MIT OR Apache-2.0
cf-gears-toolkit-gts-macrosToolKit GTS proc-macros (#[gts_schema] attribute + gts_instance! function-like macro)3,585Apache-2.0
vgi-rpc-macrosProc-macros for vgi-rpc: #[service], #[unary], #[producer], #[exchange], #[derive(VgiArrow)], #[derive(StreamState)]3,569Apache-2.0
enum_macrosA collection of useful macros to make working with enums easier.3,561MIT OR Apache-2.0
min-specializationExperimental implementation of specialization3,540MIT
syn-pub-itemsParser for Rust source code (patched for pub items)3,535MIT/Apache-2.0
cf-gears-toolkit-macrosToolKit macros3,533Apache-2.0
himarkFor those who crave more ergonomic marker traits3,532MIT
proc-macro-apiA macro helping with exporting APIs in a proc-macro library crate.3,524MIT OR Apache-2.0
universal-tool-macrosDEPRECATED: Use agentic-tools-* crates and agentic-mcp instead. Procedural macros for Universal Tool Framework.3,521MIT
enutil_macrosGeneral Enum Utility Macros3,435MIT
debug-spanVisualize proc-macro2 spans for debugging and assertions3,425MIT
mock-syn-macrosMacros for mock-syn: Mock / wrap syn structs and enums overiding specific fields3,417MIT
eosio_numstr_macros_implInternal use only.3,404MIT OR Apache-2.0
summer-macrossummer-rs Procedural Macros implementation3,369MIT
ax-plat-macrosProcedural macros for the `axplat` crate3,350Apache-2.0
mcpkit-macrosProcedural macros for mcpkit3,338MIT OR Apache-2.0
rust2pickleLibrary to serialize and deserialize Syn syntax trees into Pickle format.3,314Apache-2.0 OR MIT
nodynEasy polymorphism with enums3,311MIT
noir_macros_coreEssential proc-macros and utilities for no_std Rust development3,258MIT
rat_quickdb强大的跨数据库ODM库,支持自动索引创建、统一接口和现代异步架构3,231LGPL-3.0
dupitcopy or clone a value3,204Apache-2.0
enum_reflectEnums reflection library3,176MIT
funlogA procedural macro for tracing Rust function calls3,165MIT
enutilGeneral Enum Utility Macros3,144MIT
config_tools_deriveDerive macros for config-tools.3,125MIT
ferro-macrosProcedural macros for Ferro framework3,125MIT
devela_base_macrosprocedural macros for `devela_base_core`3,112MIT OR Apache-2.0
log_argsA simple procedural macro to log function arguments using the tracing crate.3,108MIT OR Apache-2.0
anodized-coreCore interoperability for the Anodized specification system3,084MIT OR Apache-2.0
uor-foundation-sdkProcedural-macro ergonomics for uor-foundation product, coproduct, and cartesian-product shape construction.3,076Apache-2.0
syn-visitTrait to visit a syn syntax tree by shared reference.3,066MIT OR Apache-2.0
unrest_tmp_syndon't use3,036MIT/Apache-2.0
mileagedeprecated char collections3,034MIT
proc-macro-type-nameConvert Rust field names (snake case) to type names (pascal case) using proc_macro2 identifiers..3,032MIT OR Apache-2.0
serdes-ai-macrosProcedural macros for serdes-ai (tool definitions, output schemas)2,964MIT
stringly_typed_deriveCustom derives for the stringly_typed crate2,955MIT
double-dynMacro for implementing functions with multiple dynamic argument dispatch2,923MIT OR Apache-2.0
pkenumPKaiser's enum utilities.2,916MIT
anodizedA common specification layer for Rust2,890MIT OR Apache-2.0
trait_derive_coreCore implementation for 'trait_derive' crate.2,877MIT
eclair_bindings_deriveproc-macro crate, for use together with 'eclair_bindings'2,821BSD-3-Clause
repr_c_pub_structA library for extracting `#[repr(C)] pub struct`ures.2,803MIT OR Apache-2.0
derive-attr-parserVery simple parser for proc macro attributes2,798MIT OR Apache-2.0
pathfinder-tagged-debug-deriveDebug trait derive macro for pathfinder-tagged types2,790MIT OR Apache-2.0
lapdog-deriveDerive macro for building lapdog search entry structs2,783MIT
default-withFill a struct that cannot implement Default with the remaining fields initialized with Default::default2,771MIT OR Apache-2.0
fmtparseParse format!-like strings2,765EPL-2.0
elif-macrosProcedural macros for elif.rs framework2,765MIT
define_into_enumDefines Into<T> on an enum where all variants wrap T.2,751Apache-2.0
ringkernel-deriveProcedural macros for RingKernel GPU-native actor system2,732Apache-2.0
mquote-implQuasi-quoting library aimed on better readability and usability2,730MIT/Apache-2.0
lombokrs_codegenThe codegen submodule for lombokes project.2,725Apache-2.0
rust-typedGet the types of a struct2,716MIT OR Apache-2.0
ax-config-macrosProcedural macros for converting TOML format configurations to Rust constant definitions.2,713Apache-2.0
macroforge_ts_macrosDerive macros for TypeScript compile-time code generation2,691MIT
algtype_deriveMacros for algtype2,670MIT OR Apache-2.0
macroforge_ts_synTypeScript syntax types for compile-time macro code generation2,662MIT
syn_builderBuilder functions for `syn` structures and enums to ease the generation of Rust code.2,655MIT OR Apache-2.0
macroforge_ts_quoteQuote macro for generating TypeScript code at compile time2,625MIT
general-structsGeneral-structures - this library allows you to create structures with common fields, and those that are different can be…2,615Apache-2.0
derive_displayA convenient attribute to derive `Display` implementation from another trait implementation. Currently supports
`ToTokens`.2,615MIT
mixed_type_procProcedural macros for creating generic mixed type enums.2,576MIT OR Apache-2.0
momenta-macrosProcedural macros for momenta, providing JSX-like syntax for Rust2,571MIT
seam-macrosProcedural macros for the SeamJS compile-time rendering framework2,556MIT
dupit-derivecopy or clone a value2,551Apache-2.0
ssrkit-macrosMacros for SsrKit2,540MIT
supply-chain-trust-example-crate-000004A substitute implementation of the compiler's `proc_macro` API to decouple token-based libraries from the procedural macro use…2,536MIT OR Apache-2.0
log-args-runtimeA simple procedural macro to log function arguments using the tracing crate.2,523MIT OR Apache-2.0
standout-macrosProc macros for compile-time resource embedding in Standout2,505MIT
gonfig_deriveDerive macros for the gonfig configuration management library2,472MIT OR Apache-2.0
herolib-deriveDerive macros for herolib (ToSchema, ToHeroScript, FromHeroScript, Otoml, Actor, rpc_method, OpenRPC client)2,469Apache-2.0
parenthesized_cA library that allows to parse `(C)` attribute tokens in `#[repr(C)]`2,435MIT OR Apache-2.0
stringify-attrAttribute macros for stringifying2,430Zlib
enum2contract-deriveDerive macro implementation for enum2contract.2,430MIT
lombokrslombokrs is a lightweight Rust macro library. It is the simple implementation of lombok Java in Rust.2,423Apache-2.0
trlThis library provides auto generation of some common methods based on Rust macros2,411MIT
proc-state-macroSustain global variables between individual proc-macro call2,409MIT
elicitation_deriveDerive macros for elicitation library2,408Apache-2.0 OR MIT
mira-macrosProcedural macros for Mira: the #[eval] attribute that registers eval factories2,391MIT
kailash-plugin-macrosProc-macros for Kailash WASM plugin development2,381MIT OR Apache-2.0
binary-options-tools-macrosProcedural macros for the binary-options-tools crate. Provides code generation and compile-time utilities for trading platform…2,367non-standard
syn-foldTrait to transform a syn syntax tree by value.2,262MIT OR Apache-2.0
pkenum_coreCore logic for pkenum.2,243MIT
fastmcp-deriveProcedural macros for FastMCP (#[tool], #[resource], #[prompt])2,241MIT
murmer-macrosProc macros for the murmer distributed actor framework2,219MIT OR Apache-2.0
derive-collect-docsCollect documentation from Rust structs using a `CollectDocs` derive macro.2,217Apache-2.0 OR MIT
agent-sdk-macrosErgonomic derive/declarative macros for the Agent SDK (#[derive(Tool)], #[derive(TypedTool)], tool!, #[derive(ToolName)])2,205MIT
syn-visit-mutTrait to visit a syn syntax tree by mutable reference.2,183MIT OR Apache-2.0
proc-stateSustain global variables between individual proc-macro call2,179MIT
configurable_serde_macrosA proc-macro to apply reusable serde configurations - macros.2,166MIT OR Apache-2.0
bevy_gearbox_macrosDerive macros for bevy_gearbox (schedule-based API)2,164MIT OR Apache-2.0
cyclonedds-deriveProc-macro derive for cyclonedds-rust DdsType trait2,142MIT
testnumbat-wasm-deriveTestnumbat WebAssembly smart contract API procedural macros2,135GPL-3.0-only
xlogic-derivePackage for developing, building, testing, packaging and deploying FPGA and ASIC projects2,111Apache-2.0
mqtt-typed-client-macrosProcedural macros for type-safe async MQTT client with automatic topic routing2,111MIT OR Apache-2.0
sync_stream_struct_procProcedural macros for creating sync stream structures2,058MIT OR Apache-2.0
pkenum_macroProcedural macros for pkenum.2,041MIT
hyperstack-macrosProc-macros for defining HyperStack streams2,038non-standard
type-flow-proc-macrosThe procedural macros that are used to make the declarative macros work.2,019MIT
configurable_serdeA proc-macro to apply reusable serde configurations.1,980MIT OR Apache-2.0
closure-passProc-macro for specifying kind of passing variables to closures1,977MIT OR Apache-2.0
trait_deriveSimple proc macro used to generate traits from impl blocks.1,976MIT
prost-canonical-serde-deriveDerive macros for canonical JSON encoding of Prost-generated protobuf bindings1,972Apache-2.0
espresso-logic-macrosProcedural macros for espresso-logic1,972MIT
megadex_deriveSyntactic sugar for managing collections of structs which have multiple indexed accessors.1,956MIT
option-chainA macro for using `?` operator in functions that don't return `Option`.1,937MIT
libsql-orm-macrosProcedural macros for libsql-orm - automatic Model trait implementation and ORM functionality1,923MIT
rec_deriveImplements custom derives for rec1,913MIT
horfimbor-client-derivederive macro for yew and custom-elements1,909non-standard
tryfromfailDerive failing TryFrom for a set of target types.1,901MIT
oxisqlite-macrosoxisqlite-macros — proc-macros for the Pure-Rust oxisqlite engine (C-free fork of limbo)1,899Apache-2.0
pegcel-macrosA PEG parser generator for Syn1,898MIT
cf-modkit-odata-macrosProc-macro derives for OData protocol (FilterField, Schema, etc)1,892Apache-2.0
bevy_auto_system_macroA macro for making bevy system queries more convenient1,892MIT OR Apache-2.0
mquoteQuasi-quoting library aimed on better readability and usability1,879MIT/Apache-2.0
supply-chain-trust-example-crate-000005Quasi-quoting macro quote!(...)1,875MIT OR Apache-2.0
query-flow-macrosProcedural macros for query-flow.1,867MIT OR Apache-2.0
func_coreProcedural macro to create a functional core for named structs1,866MIT
unprolixBoilerplate generator for constructors, getters and setters with derive macros1,860MIT
derive_litA tool to auto-generate literal macros for your data structure1,854MIT
macroforge_tsTypeScript macro expansion engine - write compile-time macros in Rust1,852MIT
plugrs-macrosProcedural macros for the plugrs plugin system1,826MIT
parsanol-deriveDerive macros for parsanol - typed AST generation from parser output1,810MIT
telemetry-safe-deriveDerive macros for compile-time safe telemetry formatting1,780MIT OR Apache-2.0
ax-ctor-bare-macrosMacros for registering constructor functions for Rust under no_std.1,780Apache-2.0
derive_static_strA procedural macro to derive static str implementations1,779MIT
ruskit_macrosProcedural macros for the Ruskit web framework1,764MIT
adv_linalgA small type system and an attribute macro automatically optimizing behind-the-scenes for working in linear algebra.1,751MIT OR Apache-2.0
telemetry-safe-tracing-macrosTracing proc macros for telemetry-safe1,746MIT OR Apache-2.0
ax-ctor-bareRegister constructor functions for Rust at complie time under no_std.1,746Apache-2.0
identify-ttsFunction-like procedural macro for turning transcribers like $($ty)* into arrays of formated stringified TokenTrees for debugging1,702MIT
efxRust XML templating engine for building egui UIs with procedural macros1,701MIT OR Apache-2.0
spanrA tool for proc-macro authors to visualize the spans on generated code.1,692MIT OR Apache-2.0
codex-app-server-sdk-macrosProc macros for codex-app-server-sdk1,688MIT
watt-non-static-runtimeRuntime for executing Rust procedural macros compiled as WebAssembly.1,680MIT OR Apache-2.0
backbeat-macrosDerive macro for backbeat: annotate any struct as a traceable event1,667MIT
konfig-rust-deriveA derive macro for the konfig-rust library, allowing shorthand implementation of the KonfigSection trait1,659MIT
stateful_macro_rulesGenerate macro_rules macros that have states.1,651MIT
pmcp-macrosProcedural macros for PMCP SDK - Model Context Protocol1,626MIT
rust2xmlLibrary to serialize Syn syntax trees into XML format.1,613Apache-2.0 OR MIT
stitcherstitcher provides an ergonomic syntax for declaring deeply nested Rust data structures inline — useful for tests and fixtures…1,611MIT
type-changeConvert between different types of the same field name1,609non-standard
dismantlerGet the types of a struct1,599MIT OR Apache-2.0
extend1Alternative to `Extend::extend_one` that is stable and does not require `#![feature(extend_one)]`.1,596MIT OR Apache-2.0
syn-error-experimentSyn error experiment1,595MIT/Apache-2.0
url_query_stringA Rust procedural macro for generating methods to serialize structs into URL query strings. Provides seamless integration with…1,583MIT
cf-modkit-canonical-errors-macroModKit canonical errors proc-macro1,567Apache-2.0
qrusA QRCode cli tools, can encode and decode1,555MIT
enum2schema_deriveDerive macro implementation for enum2schema.1,549MIT
magic_mapDeclaration-site, fallible struct/enum mapping — automap between types you don't own (DB rows, prost protos, DTOs) with strict,…1,548MIT OR Apache-2.0
envheadA crate to build environment variable names using a static prefix. Works great with the popular clap crate.1,545MIT
patumMake enum conform to a given pattern1,535MIT OR Apache-2.0
dyn_importRust macro to import modules dynamically.1,531non-standard
bitwise_booleanA Rust macro to generate bitwise boolean getters and setters for a struct with u8 field storing up to 8 flags.1,522MIT
amari-flynn-macrosProcedural macros for amari-flynn probabilistic contracts1,516MIT OR Apache-2.0
server-less-parseShared parsing utilities for server-less proc macros1,513MIT
machine_uuidsA library to retrieve a machines UUID1,505MIT OR Apache-2.0
subdefExpressive attribute macro to define nested structures1,462MIT OR Apache-2.0
syn-mergeMerge syn structures by adding cfgs1,461Zlib OR Apache-2.0 OR MIT
tuple_for_eachProvides macros and methods to iterate over the fields of a tuple struct1,457GPL-3.0-or-later OR Apache-2.0 OR MulanPSL-2.0
emojfuscate_derivederive macros for emojfuscate1,441non-standard
rabbitmesh-macrosUniversal procedural macros for RabbitMesh - supports RBAC, ABAC, caching, validation, observability, and more1,429MIT
stringvecA simple macro for creating Vec<String> from various types1,413LGPL-3.0-or-later
unsynn-rustRust grammar for the unsynn parser library [WIP]1,408MIT OR Apache-2.0
domainstack-deriveDerive macros for domainstack: #[derive(Validate, ToSchema, ToJsonSchema)] - validation + auto-generate OpenAPI/JSON Schema1,401MIT OR Apache-2.0
xrune-sigilDerive macro for reference-counted AST nodes — part of the xrune DSL framework1,401MIT
server-less-rpcShared RPC dispatch utilities for server-less proc macros1,356MIT
xrune-nexusCore AST, DsRune trait, and decipher engine for the xrune DSL framework1,341MIT
tagsetEasily create trait-dispatching sum types1,339MIT OR Apache-2.0
edifact-rs-deriveDerive macros for EdifactSerialize / EdifactDeserialize (from edifact-rs)1,336MIT OR Apache-2.0
edynNear drop-in replacement for dynamic-dispatched method calls with up to 10x the speed1,333MIT OR Apache-2.0
fastn-context-macrosProcedural macros for fastn-context1,332UPL-1.0
server-less-macrosProc macros for server-less1,326MIT
act-sdk-macrosProc macros for the ACT SDK (#[act_component], #[act_tool])1,321MIT OR Apache-2.0
server-less-coreCore traits and types for server-less derive macros1,316MIT
elicitation_macrosProcedural macros for MCP tool generation, tracing instrumentation, and newtype wrapping in the elicitation framework1,304Apache-2.0 OR MIT
chat_messageschat_messages is a lightweight Rust library for creating structured messages in chat systems, including HumanMessage, AiMessage,…1,296Apache-2.0
include_url_macroA procedural macro to include URL content as static strings at compile time1,295MIT
es-replay-macrosProcedural macros for the Replay event sourcing library1,295MIT
resonai-macrosProc macros for the resonai LLM agent framework1,292Apache-2.0
try_from_expr_deriveDerive macro for try_from_expr - generates TryFrom<&syn::Expr> implementations1,287MIT
collection_macroGeneral-purpose `seq![]` and `map! {}` collection macros1,260MIT OR Apache-2.0
entity-derive-implInternal proc-macro implementation for entity-derive. Use entity-derive instead.1,228MIT
multi-rpc-macrosInternal procedural macros for the multi-rpc crate. Please use the main multi-rpc crate as a dependency.1,223Apache-2.0
ceres-macrosProcedural macros for the ceres-dsp framework1,216MIT OR Apache-2.0
xrune-incantProc macro entry point for the xrune declarative DSL framework1,207MIT
enum-values-deriveExposes enum values via reflection1,203MIT OR Apache-2.0
hclog_macrosA simple derive macro for crate hclog1,193non-standard
oxidite-macrosProcedural macros for the Oxidite web framework (Model derive, etc.)1,188MIT
picante-macrosProc macros for Picante (input, tracked, interned, and db)1,182Apache-2.0 OR MIT
server-lessComposable derive macros for common Rust patterns1,172MIT
aegis_vm_macroProc-macro for VM-protected functions - RustAegis1,148MIT
xruneDeclarative UI DSL framework with pluggable codegen backends1,132MIT
enum_companionA procedural macro for generating companion enums for structs.1,131MIT