Skip to content

Commit 5c81638

Browse files
committed
Docs & Codecov Configuration Change
1 parent 44e8df2 commit 5c81638

18 files changed

Lines changed: 189 additions & 121 deletions

File tree

‎.github/PULL_REQUEST_TEMPLATE.md‎

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,23 +3,19 @@
33
Thank you for contributing to **UltimateAuth**!
44
Please complete the following checklist to help us review your PR effectively.
55

6-
---
76

87
## 📘 Summary
98
Describe what this PR does and why it’s needed.
109

11-
---
1210

1311
## 🔍 Details
1412
Explain any important implementation details, design decisions, or considerations.
1513

16-
---
1714

1815
## 🧩 Related Issues
1916
Link any related issues:
2017
<!-- Example: Fixes #42 -->
2118

22-
---
2319

2420
## 🛠 Changes
2521
- [ ] New feature

‎.github/codecov.yml‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@ coverage:
55
status:
66
project:
77
default:
8-
target: 50%
9-
threshold: 5%
8+
target: 70%
9+
threshold: 0%
1010
patch:
1111
default:
12-
target: 20%
12+
target: 50%
1313
threshold: 0%

‎README.md‎

Lines changed: 107 additions & 88 deletions
Original file line numberDiff line numberDiff line change
@@ -33,15 +33,15 @@ UltimateAuth is an open-source auth framework with platform-level capabilities t
3333
| Phase | Version | Scope | Status | Release Date |
3434
| ----------------------- | ------------- | ----------------------------------------- | -------------- | ------------ |
3535
| First Preview | 0.1.0-preview | "Stable" Preview Core | ✅ Completed | 07.04.2026 |
36-
| First Release* | 0.1.0 | Fully Documented & Quality Tested | 🟡 In Progress | Q2 2026 |
37-
| Product Expansion | 0.2.0 | Full Auth Modes | 🟡 In Progress | Q2 2026 |
38-
| Security Expansion | 0.3.0 | MFA, Reauth, Rate Limiting | 🔜 Planned | Q2 2026 |
39-
| Infrastructure Expansion| 0.4.0 | Redis, Distributed Cache, Password Hasher | 🔜 Planned | Q2 2026 |
40-
| Multi-Tenant Expansion | 0.5.0 | Multi tenant management | 🔜 Planned | Q3 2026 |
41-
| Extensibility Expansion | 0.6.0 | Audit, events, hooks | 🔜 Planned | Q3 2026 |
42-
| Performance Expansion | 0.7.0 | Benchmarks, caching | 🔜 Planned | Q3 2026 |
43-
| Ecosystem Expansion | 0.8.0 | Migration tools | 🔜 Planned | Q4 2026 |
44-
| v1.0 | 1.0.0 | Locked API, align with .NET 11 | 🔜 Planned | Q4 2026 |
36+
| First Release* | 0.1.0 | Fully Documented & Quality Tested | ✅ Completed | 04.10.2026 |
37+
| Product Expansion | 0.2.0 | Full Auth Modes | 🟡 In Progress | Q4 2026 |
38+
| Security Expansion | 0.3.0 | MFA, Reauth, Rate Limiting | 🟡 In Progress | Q4 2026 |
39+
| Infrastructure Expansion| 0.4.0 | Redis, Distributed Cache, Password Hasher | 🔜 Planned | Q1 2027 |
40+
| Multi-Tenant Expansion | 0.5.0 | Multi tenant management | 🔜 Planned | Q1 2027 |
41+
| Extensibility Expansion | 0.6.0 | Audit, events, hooks | 🔜 Planned | Q1 2027 |
42+
| Performance Expansion | 0.7.0 | Benchmarks, caching | 🔜 Planned | Q1 2027 |
43+
| Ecosystem Expansion | 0.8.0 | Migration tools | 🔜 Planned | Q2 2027 |
44+
| v1.0 | 1.0.0 | Locked API, align with .NET 11 | 🔜 Planned | Q2 2027 |
4545

4646
*v 0.1.0 already provides a skeleton of multi tenancy, MFA, reauth etc. Expansion releases will enhance these areas.
4747

@@ -51,19 +51,6 @@ UltimateAuth is an open-source auth framework with platform-level capabilities t
5151

5252
We keep it up-to-date with current priorities, planned features, and progress. Feel free to follow, comment, or contribute ideas.
5353

54-
<details>
55-
56-
> UltimateAuth is currently in the final stage of the first preview release (v 0.1.0-preview).
57-
58-
> Core architecture is complete and validated through working samples.
59-
60-
> Ongoing work:
61-
> - Final API surface review
62-
> - Developer experience improvements
63-
> - EF Core integration polishing
64-
> - Documentation refinement
65-
</details>
66-
6754
---
6855

6956
## 🌟 Why UltimateAuth
@@ -99,7 +86,7 @@ Modern security built-in by default:
9986
- Session reuse detection
10087
- Device tracking
10188
- Hardened auth flows
102-
- Safe defaults with extensibility
89+
- Safe defaults
10390

10491
### 5) Extensible & Lightweight
10592

@@ -115,7 +102,8 @@ Designed specifically for real-world .NET environments:
115102

116103
- Blazor Server
117104
- Blazor WASM
118-
- .NET MAUI
105+
- Blazor Web App
106+
- .NET MAUI & Hybrid Apps
119107
- Backend APIs
120108

121109
Traditional auth solutions struggle here — UltimateAuth embraces it.
@@ -124,111 +112,139 @@ Traditional auth solutions struggle here — UltimateAuth embraces it.
124112

125113
# 🚀 Quick Start
126114
> ⏱ Takes ~2 minutes to get started
115+
>
116+
> **This Quick Start uses a Blazor Server application with in-memory persistence.**
117+
It is intentionally designed as the simplest path to a working UltimateAuth application.
127118

128-
### 1) Install packages
119+
> For Entity Framework Core, Blazor WebAssembly, Blazor Web App, Resource API, persistent storage, and other real-world configurations, see the [Real-World Setup guide](https://github.com/CodeBeamOrg/UltimateAuth/blob/dev/docs/content/getting-started/real-world-setup.md).
120+
121+
### 1) Install UltimateAuth
129122

130-
1.1 Core Packages
131123
```bash
132-
dotnet add package CodeBeam.UltimateAuth.Server
124+
dotnet add package CodeBeam.UltimateAuth.InMemory.Bundle
133125
dotnet add package CodeBeam.UltimateAuth.Client.Blazor
134126
```
135-
1.2 Persistence & Reference Packages (Choose One)
136-
```bash
137-
dotnet add package CodeBeam.UltimateAuth.InMemory.Bundle (for debug & development)
138-
dotnet add package CodeBeam.UltimateAuth.EntityFrameworkCore.Bundle (for production)
139-
```
140-
### 2) Configure services (in program.cs)
141-
Server registration:
142-
```csharp
143-
builder.Services
144-
.AddUltimateAuthServer()
145-
.AddUltimateAuthEntityFrameworkCore(db =>
146-
{
147-
// use with your database provider
148-
db.UseSqlite("Data Source=uauth.db");
149-
});
150127

151-
// OR
128+
### 2) Configure UltimateAuth
129+
130+
Register UltimateAuth in `Program.cs`:
152131

132+
```csharp
133+
// Server registration
153134
builder.Services
154135
.AddUltimateAuthServer()
155-
.AddUltimateAuthInMemory(); // Development
136+
.AddUltimateAuthInMemory();
156137

138+
// Client registration
139+
builder.Services.AddUltimateAuthClientBlazor();
157140
```
158141

159-
Client registration:
160142

161-
```csharp
162-
builder.Services.AddUltimateAuthClientBlazor();
163-
```
164143
**Usage by application type:**
165144

166145
- **Blazor Server App** → Use both Server and Client registrations
167146
- **Blazor WASM / MAUI** → Use Client only
168-
- **Auth Server / Resource API** → Use Server only
147+
- **UAuthHub (Auth Server) / Resource API** → Use Server only
148+
149+
### 3) Configure the Application Pipeline
150+
Add the UltimateAuth middleware and endpoints:
169151

170-
### 3) Configure pipeline
171152
```csharp
172153
// app.UseHttpsRedirection();
173154
// app.UseStaticFiles();
174155
175156
app.UseUltimateAuthWithAspNetCore(); // Includes UseAuthentication() and UseAuthorization()
176-
// Place Antiforgery or something else needed
157+
// Place Antiforgery or something else before endpoint registration if needed
177158
app.MapUltimateAuthEndpoints();
178159

179160
app.MapRazorComponents<App>()
180161
.AddInteractiveServerRenderMode()
181162
.AddUltimateAuthRoutes(UAuthAssemblies.BlazorClient());
182163
```
183164

184-
### 4) Add UAuth Script
185-
Place this in `App.razor` or `index.html` in your Blazor client application:
186-
```csharp
187-
<script src="_content/CodeBeam.UltimateAuth.Client.Blazor/uauth.min.js"></script>
165+
### 4) Add UAuthApp
166+
UltimateAuth uses `UAuthApp` as the root integration point for its client authentication state and Blazor lifecycle.
167+
168+
Replace the default router in your `App.razor` or `Routes.razor` with:
169+
170+
```razor
171+
@using CodeBeam.UltimateAuth.Client.Blazor
172+
173+
<UAuthApp UseBuiltInRouter="true" AppAssembly="typeof(Program).Assembly" DefaultLayout="typeof(Layout.MainLayout)">
174+
<ChildContent>
175+
@* Add application-wide UI providers or other root components here. *@
176+
</ChildContent>
177+
178+
<NotAuthorized>
179+
<p>Not authorized.</p>
180+
</NotAuthorized>
181+
</UAuthApp>
188182
```
189183

190-
### 5) 🗄️ Database Setup (EF Core)
184+
`UAuthApp` can provide the built-in router, authentication state, and UltimateAuth client lifecycle integration for your component tree.
191185

192-
After configuring UltimateAuth with Entity Framework Core, you need to create and apply database migrations.
186+
> Need full control over routing?
193187
194-
5.1) Install EF Core tools (if not installed)
195-
```bash
196-
dotnet tool install --global dotnet-ef
188+
> UAuthApp also supports applications that provide their own Blazor Router. See the Blazor Routing guide for advanced routing configuration.
189+
190+
### 5) Add the UltimateAuth Client Script
191+
Place this in `App.razor` or `index.html` in your Blazor client application:
192+
```html
193+
<script src="_content/CodeBeam.UltimateAuth.Client.Blazor/uauth.min.js"></script>
197194
```
198-
5.2) Add migration
199-
```bash
200-
dotnet ef migrations add InitUAuth
195+
196+
### 6) Optional: Blazor Usings
197+
Add this in `_Imports.razor`:
198+
```csharp
199+
@using CodeBeam.UltimateAuth.Client.Blazor
201200
```
202201

203-
5.3) Update database
202+
### 7) Optional: Add Sample Data
203+
For the fastest way to try auth process, install the UltimateAuth sample seed package:
204+
204205
```bash
205-
dotnet ef database update
206+
dotnet add package CodeBeam.UltimateAuth.Sample.Seed
206207
```
207-
💡 Visual Studio (PMC alternative)
208208

209-
If you are using Visual Studio, you can run these commands in Package Manager Console:
209+
Register the development seed:
210+
210211
```bash
211-
Add-Migration InitUAuth -Context UAuthDbContext
212-
Update-Database -Context UAuthDbContext
212+
builder.Services.AddUltimateAuthSampleSeed();
213213
```
214-
⚠️ Notes
215-
- Migrations must be created in your application project, not in the UltimateAuth packages
216-
- You are responsible for managing migrations in production
217-
- Automatic database initialization is not enabled by default
218214

219-
### 6) Optional: Blazor Usings
220-
Add this in `_Imports.razor`
215+
Then seed the application during development:
216+
221217
```csharp
222-
@using CodeBeam.UltimateAuth.Client.Blazor
218+
if (app.Environment.IsDevelopment())
219+
{
220+
await app.SeedUltimateAuthAsync();
221+
}
223222
```
224223

225-
### ✅ Done
224+
The development seed includes ready-to-use accounts:
225+
226+
| Identifier | Secret |
227+
|------------|----------|
228+
| `admin` | `admin` |
229+
| `user` | `user` |
230+
231+
You can use these credentials to test the auth flows immediately.
232+
233+
> Development only: Sample users and credentials are intended for evaluation and local development. Do not use them in production.
234+
235+
### ✅ You're Ready
226236

227237
---
228238

229239
## 💡 Usage
230240

231-
Inject IUAuthClient and simply call methods.
241+
**One Client. Your Auth Application API.**
242+
243+
For most application-level authentication and identity operations, start with `IUAuthClient`.
244+
245+
`IUAuthClient` provides a single entry point to UltimateAuth capabilities such as authentication flows, users, sessions, tokens, profiles, credentials, and authorization — without requiring your application code to manage the underlying authentication transport.
246+
247+
> UltimateAuth treats authentication and identity as application services. Your application works with explicit operations and structured results while UltimateAuth handles the underlying authentication flow.
232248
233249
### Examples
234250
Login
@@ -239,8 +255,8 @@ private async Task Login()
239255
{
240256
var request = new LoginRequest
241257
{
242-
Identifier = "UAuthUser",
243-
Secret = "UAuthPassword",
258+
Identifier = "admin",
259+
Secret = "admin",
244260
};
245261
await UAuthClient.Flows.LoginAsync(request);
246262
}
@@ -254,9 +270,9 @@ private async Task Register()
254270
{
255271
var request = new CreateUserRequest
256272
{
257-
UserName = _username,
258-
Password = _password,
259-
Email = _email,
273+
UserName = "NewUser",
274+
Password = "NewUserPassword",
275+
Email = "newuser@example.com",
260276
};
261277

262278
var result = await UAuthClient.Users.CreateAsync(request);
@@ -282,11 +298,14 @@ private async Task LogoutOthersAsync()
282298
}
283299
```
284300

285-
UltimateAuth turns Auth into a simple application service — not a separate system you fight against.
286-
- No manual token handling
287-
- No custom HTTP plumbing
288-
- No fragile redirect logic
289-
- All built-in with extensible options.
301+
With `IUAuthClient`, common application code doesn't need to manually orchestrate:
302+
- token handling
303+
- authentication HTTP calls
304+
- session operations
305+
- redirect plumbing
306+
- client-specific authentication flows
307+
308+
Start with the simple API. Drop down to UltimateAuth's extensibility points when your application needs more control.
290309

291310
---
292311

0 commit comments

Comments
 (0)