From 49a450a6fa18010e6be3981e55f9fba2a2754656 Mon Sep 17 00:00:00 2001 From: Marek Lesko Date: Thu, 11 Jun 2026 10:33:08 +0200 Subject: [PATCH] Add AGENTS.md with project documentation --- AGENTS.md | 74 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 AGENTS.md diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..ca23a9c --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,74 @@ +# SimpleIdP + +Self-hosted OAuth 2.0 / OpenID Connect identity provider built with ASP.NET Core 8.0 and SimpleIdServer. + +## Features + +- OAuth 2.0 Authorization Code flow with PKCE support +- OpenID Connect authentication +- Multiple authentication methods: + - Password-based + - SMS-based + - OTP (One-Time Password) + - WebAuthn (FIDO2) + - Mobile-based + - Email-based + - Console-based + - Verifiable Presentations +- Multi-realm support +- User management with roles and claims +- Client management with configurable redirect URIs +- Refresh tokens with configurable expiration +- Consent management + +## Technology Stack + +- **Framework**: .NET 8.0 +- **Identity Server**: SimpleIdServer 6.0.*-* +- **UI**: Razor Pages +- **Container**: Docker (multi-stage build) + +## Configuration + +Configuration is loaded from JSON files in the `config/` directory: + +- `users.json` - User definitions (username, password, email, roles, claims, consents) +- `clients.json` - OAuth 2.0 client definitions +- `realm.json` - Realm configuration +- `scopes.json` - Available scopes and claim mappers +- `api.json` - API resource definitions + +## Quick Start + +### Run Locally + +```bash +dotnet run +``` + +The server starts on: +- HTTPS: `https://localhost:65455` +- HTTP: `http://localhost:65456` + +### Run in Docker + +```bash +docker build -t simpleidp . +docker run -p 8080:8080 simpleidp +``` + +## Default Credentials + +The default user is defined in `config/users.json`: + +- Username: `administrator` +- Password: `password` +- Email: `adm@mail.com` + +## Docker Hub + +Image: `mareklesko/simpleidp` + +## CI/CD + +GitLab CI pipeline builds and pushes Docker images on `dev` and `main` branches.