I'm excited to announce the release of FlowBased.NetCore v1.0.1, now available on NuGet!
What is FlowBased.NetCore?
FlowBased.NetCore is a plug-and-play documentation and business flow management framework for ASP.NET Core applications. It gives you an embedded enterprise-grade documentation portal with zero frontend setup — just two lines of code and you're running.
Two-line integration
builder.Services.AddFlowBased();
app.UseFlowBased();
That's it. You now have:
- A full admin dashboard with CRUD for applications, modules, and flows
- A public documentation portal (separately themed, independently authenticated)
- Markdown/HTML editing with a rich toolbar
- File attachments with drag-and-drop
- Automatic versioning on every edit
- Full-text search
- Technical dependency mapping (APIs, services, repositories, database tables)
- Code snippet support
- Dark mode
What's New in v1.0.1
Annotation-Driven Discovery
This release introduces three new attribute types that make it even easier to document and discover your application's architecture:
-
[BusinessFlow]— Mark classes that orchestrate business processes (e.g.,CheckoutFlow,RefundFlow) -
[Integration]— Mark classes that integrate with external providers (e.g.,Stripe,PayPal,SendGrid) -
[EventHandler]— Mark classes that handle domain events (e.g.,OrderCreatedHandler,PaymentReceivedHandler)
These join the existing attribute family: [ApiEndpoint], [Service], [Repository], and [Entity].
New Discovery API Endpoints
The admin API now exposes:
| Endpoint | Description |
|---|---|
GET /{prefix}/api/discovery/annotated/business-flows |
Classes with [BusinessFlow]
|
GET /{prefix}/api/discovery/annotated/integrations |
Classes with [Integration]
|
GET /{prefix}/api/discovery/annotated/event-handlers |
Classes with [EventHandler]
|
All seven annotation types are now discoverable via the API, and the admin dashboard's flow editor includes multi-select dropdowns for the new types.
Display Annotations on Enums
DocumentationType and FlowBasedRole now carry [Display(Name, Description)] attributes, making dropdown labels in the UI much more descriptive.
NuGet Packaging Fix
Sub-project DLLs are now bundled correctly into the NuGet package without requiring consumers to add them as separate NuGet dependencies.
Getting Started
Install
dotnet add package FlowBased.NetCore
Configure
using FlowBased.NetCore.AspNetCore.DependencyInjection;
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddFlowBased(options =>
{
options.Title = "My App Docs";
options.RoutePrefix = "flowdocs";
options.StoragePath = Path.Combine(builder.Environment.WebRootPath ?? "wwwroot", "FlowBasedDocs");
options.EnableVersioning = true;
options.AllowMarkdown = true;
});
var app = builder.Build();
// Seed demo data (optional)
using (var scope = app.Services.CreateScope())
{
var service = scope.ServiceProvider.GetRequiredService<IFlowService>();
await SeedData.SeedAsync(service);
}
app.UseFlowBased();
app.Run();
Annotate your code
[BusinessFlow("Order Processing", "Handles the complete order lifecycle")]
public class OrderProcessingService { ... }
[Integration("Stripe", "Stripe", "Payment processing via Stripe")]
public class StripePaymentGateway { ... }
[EventHandler("OrderCreated", "OrderCreated", "Sends notifications when an order is created")]
public class OrderCreatedHandler { ... }
The dashboard will automatically surface these annotations in the flow editor.
Features at a Glance
- Zero-config embedded SPA — No npm, no webpack, no separate deployment
- JSON file storage — No database required
- Full-text search — Names, descriptions, tags, content
- Automatic versioning — Every edit is a snapshot
- File attachments — Drag-and-drop, paste, GUID storage
- Markdown + HTML — Both content types, server-side Markdig rendering
- Code snippets — Named, language-tagged examples
- Technical dependency mapping — Link flows to APIs, services, repos, DB tables
- Auto-discovery — Scans assemblies for controllers, services, repositories, entities, and now business flows, integrations, and event handlers
- Lines-of-code estimation — Categorized by type
- RBAC — 6-level role hierarchy with per-application permissions
- Public documentation portal — Read-only, separately themed, independently auth-controlled
- Dark mode — Independent toggles for admin and docs portal
- Custom branding — Accent color, title, route prefix
- Broad compatibility — Works with .NET 6 through .NET 10
Package Details
| Package | FlowBased.NetCore |
| Version | 1.0.1 |
| License | MIT |
| Author | Muhammad Rehman Tahir |
| Repository | github.com/MRehmanTahir/FlowBased.NetCore |
| Target | net8.0+ (Shared library targets netstandard2.1) |
What's Next
-
buildTransitivesupport for automaticusingdirectives - Searchable annotation dropdowns in the flow editor (already in the dashboard UI)
- Further API refinements based on feedback
Give it a try and let me know what you think! Feedback, issues, and PRs are welcome on GitHub.
Built by Muhammad Rehman Tahir
Top comments (0)