{"id":14997496,"url":"https://github.com/pandatecham/be-lib-fluent-minimal-api-mapper","last_synced_at":"2025-04-15T01:15:00.237Z","repository":{"id":229383567,"uuid":"776589392","full_name":"PandaTechAM/be-lib-fluent-minimal-api-mapper","owner":"PandaTechAM","description":"Automate your minimal API routing with this simple package. Streamline endpoint registration with ease.","archived":false,"fork":false,"pushed_at":"2025-02-17T12:40:52.000Z","size":160,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"development","last_synced_at":"2025-04-15T01:14:52.786Z","etag":null,"topics":["aspnetcore","fluent","mapping","minimal-api","modular-monolith","nuget","pandatech"],"latest_commit_sha":null,"homepage":"","language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PandaTechAM.png","metadata":{"files":{"readme":"Readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-03-23T23:16:15.000Z","updated_at":"2025-02-17T12:40:35.000Z","dependencies_parsed_at":null,"dependency_job_id":"65eca976-2883-449b-a146-2ded22d889d0","html_url":"https://github.com/PandaTechAM/be-lib-fluent-minimal-api-mapper","commit_stats":{"total_commits":3,"total_committers":2,"mean_commits":1.5,"dds":"0.33333333333333337","last_synced_commit":"712fe183f393aaa2290e3907638f96fc4665f809"},"previous_names":["pandatecham/be-lib-fluent-minimal-api-mapper"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PandaTechAM%2Fbe-lib-fluent-minimal-api-mapper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PandaTechAM%2Fbe-lib-fluent-minimal-api-mapper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PandaTechAM%2Fbe-lib-fluent-minimal-api-mapper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PandaTechAM%2Fbe-lib-fluent-minimal-api-mapper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PandaTechAM","download_url":"https://codeload.github.com/PandaTechAM/be-lib-fluent-minimal-api-mapper/tar.gz/refs/heads/development","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248986315,"owners_count":21194025,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aspnetcore","fluent","mapping","minimal-api","modular-monolith","nuget","pandatech"],"created_at":"2024-09-24T17:03:38.473Z","updated_at":"2025-04-15T01:15:00.214Z","avatar_url":"https://github.com/PandaTechAM.png","language":"C#","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Pandatech.FluentMinimalApiMapper - Simplify Your API Routing\n\nFluentMinimalApiMapper is a streamlined, focused NuGet package designed to bring ease and efficiency to the registration\nof minimal API endpoints in ASP.NET Core applications, especially within modular monolithic architectures. Inspired by\nthe concept behind the Carter package, FluentMinimalApiMapper hones in on the essential feature of endpoint mapping,\npresenting a lightweight and highly focused tool to enhance your project's structure and startup flow.\n\n## Why No Carter?\n\nWhile Carter offers a broad range of features for handling minimal APIs, its adaptability in modular monolithic\nstructures can be less than ideal. FluentMinimalApiMapper steps in to fill this gap, offering a specialized approach\nthat prioritizes seamless endpoint mapping across modular setups without the overhead of unused features.\n\n## Considerations\n\n- **Startup Performance:** The package employs reflection to dynamically register endpoints, which may introduce a\n  slight\n  delay in startup time as the number of endpoints grows. This trade-off is considered for the benefit of reduced\n  boilerplate code and improved maintainability.\n\n- **Assembly Scanning:** FluentMinimalApiMapper intelligently registers endpoints on a per-assembly basis. For projects\n  with a\n  singular API layer, manual assembly specification is unnecessary, as the package will automatically scan the current\n  assembly.\n\n## Getting Started\n\nIntegrating FluentMinimalApiMapper into your project is straightforward. Below are the basic steps to set up your\n`Program.cs` to leverage this package for automatic endpoint registration.\n\n### Program.cs Registration Example\n\n```csharp\nvar builder = WebApplication.CreateBuilder(args);\n// Single project with one assembly\nbuilder.AddMinimalApis();\nvar app = builder.Build();\napp.MapEndpoints();\napp.Run();\n```\n\n```csharp\nvar builder = WebApplication.CreateBuilder(args);\n// Multiple projects with multiple assemblies (e.g., modular monolithic)\nbuilder.AddEndpoints([typeof(Startup).Assembly, typeof(OtherAssembly).Assembly]);\nvar app = builder.Build();\napp.MapMinimalApis();\napp.Run();\n```\n\n### Endpoint Example\n\n```csharp\npublic class MyEndpoint : IEndpoint\n{\n    public void AddRoutes(IEndpointRouteBuilder app)\n    {\n        app.MapGet(\"/myroute\", () =\u003e \"Hello, World!\");\n    }\n}\n```\n\nBy encapsulating your endpoint definitions within classes that implement `IEndpoint`, you maintain a clean and organized\nproject structure, with the added benefit of FluentMinimalApiMapper's automatic discovery and registration capabilities.\n\n## Conclusion\n\nFluentMinimalApiMapper is designed to offer a focused, efficient solution for managing minimal API endpoints in modular\nmonolithic architectures. Its design philosophy centers around simplicity and performance, catering specifically to\ndevelopers who seek a straightforward approach to endpoint mapping without the need for additional overhead. Adopt\nFluentMinimalApiMapper today to streamline your API development process.\n\n## License\n\nPandatech.FluentMinimalApiMapper is licensed under the MIT License.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpandatecham%2Fbe-lib-fluent-minimal-api-mapper","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpandatecham%2Fbe-lib-fluent-minimal-api-mapper","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpandatecham%2Fbe-lib-fluent-minimal-api-mapper/lists"}