ItalyPaleAle
fadb1a5552
feat: add FRANCIS_HOST to connect to a standalone Francis runtime
...
FRANCIS_HOST decides where the Francis actor runtime lives. When set to "embedded" (the default), Pocket ID starts the runtime inside its own process.
Any other value is the address, or a comma-separated list of addresses, of a standalone Francis runtime. Pocket ID then connects to it as a remote actor host and starts no embedded runtime.
Because when using a remote runtime, it's likewise not possible to enforce a single instance of Pocket ID is running at once, the env vars currently have the `EXPERIMENTAL_` prefix, are **undocumented**, and show a warning if used.
Notes:
- Connecting to a standalone runtime also needs FRANCIS_HOST_PSK or FRANCIS_HOST_JWT_FILE, and optionally (but recommended) FRANCIS_CA.
- When connecting to a remote runtime, exporting Pocket ID data does not include the actor state, which will need to be backed up and restored separately
2026-09-19 23:38:18 -07:00
Mike Beaumont
b5a07a29ef
feat: include passkey icons based on AAGUID ( #1756 )
2026-09-19 09:41:53 -07:00
Elias Schneider
63050add4e
feat(ux): replace individual save buttons with single "unsaved changes bar" ( #1757 )
2026-09-19 15:23:06 +00:00
Elias Schneider
43c0b797fd
fix: don't auto submit OAuth device codes
2026-09-17 21:08:52 +02:00
Elias Schneider
81cb290bed
fix: show more user friendly error page for authorize interaction failures
2026-09-15 16:59:35 +02:00
Alessandro (Ale) Segala
de2780bbef
fix: serve bundled logo if no custom logo is set ( #1748 )
2026-09-14 11:33:31 +02:00
c65b77c980
chore(deps): Bump the "all-dependencies" group with 3 updates across multiple ecosystems ( #1739 )
...
Co-authored-by: Kyle Mendell <kyle@pocket-id.org >
Co-authored-by: Kyle Mendell <kmendell@ofkm.us >
Signed-off-by: dependabot[bot] <support@github.com >
2026-09-07 09:24:16 -05:00
Alessandro (Ale) Segala and copilot-swe-agent[bot]
7c79a9e14b
feat: add explicit public keys for federated client credentials ( #1702 )
...
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
2026-08-28 21:12:15 +00:00
Elias Schneider
915a6bcf08
feat: allow admins to auto grant APIs to CIMD clients ( #1692 )
2026-08-18 20:02:14 +02:00
Alessandro (Ale) Segala
6fba970159
tests: fix flaky update application image e2e test ( #1690 )
2026-08-15 00:35:15 +02:00
Alessandro (Ale) Segala
155a1fcba0
feat: support multiple client secrets per OIDC client ( #1679 )
2026-08-11 00:54:52 +00:00
Elias Schneider
3ca9a55c71
feat: hide apps without launch url on My Apps page
2026-08-10 22:53:35 +02:00
Elias Schneider
0c9a03e519
feat: add animated logo as default logo
2026-08-08 20:50:37 +02:00
Elias Schneider and Alessandro Segala
d6a47243db
feat: add settings for limiting what passkeys can be used ( #1662 )
...
Co-authored-by: Alessandro (Ale) Segala <43508+ItalyPaleAle@users.noreply.github.com >
2026-08-07 11:17:38 +02:00
Alessandro (Ale) Segala
1c9233c236
fix: make OIDC client token lifetimes optional ( #1650 )
2026-08-05 20:11:40 +00:00
Elias Schneider
4fe6f0688c
tests: use smaller francis.bin
2026-08-05 22:02:00 +02:00
08407ae564
feat: include Francis data in Pocket ID backups ( #1645 )
...
Co-authored-by: Claude <noreply@anthropic.com >
Co-authored-by: Elias Schneider <login@eliasschneider.com >
2026-08-05 19:57:38 +00:00
Elias Schneider
5d43c4aaeb
feat: add ability to customize session duration of clients ( #1641 )
2026-08-03 23:23:29 +02:00
Elias Schneider
69d55ada6c
fix: explicitly set SameSite to Lax for cookies
2026-08-03 22:58:01 +02:00
Elias Schneider
7a4d0dd275
refactor: standardize API error handling ( #1635 )
2026-08-02 23:36:06 +02:00
Elias Schneider
9e72bc1c70
feat: display country and city on qr code login approval screen
2026-07-30 00:22:31 +02:00
Elias Schneider
0c27f733b9
feat: drop user initiated one time access token login method
2026-07-29 23:49:08 +02:00
Elias Schneider and ItalyPaleAle
e1fd1d320f
feat: add qr code alternative sign in method ( #1594 )
...
Co-authored-by: ItalyPaleAle <43508+ItalyPaleAle@users.noreply.github.com >
2026-07-28 01:30:13 +02:00
Elias Schneider
ca28ddcb04
fix: race condition in initial admin setup
2026-07-28 00:19:01 +02:00
Elias Schneider
ad06ea6e00
fix: datatype mismatch between postgres and sqlite causes import to fail
2026-07-22 18:13:13 +02:00
Elias Schneider
316cf47ceb
fix: INTERNAL_APP_URL not reflected in UI URLs
2026-07-13 10:51:24 +02:00
Elias Schneider
28a553f63b
feat: add tab bar navigation for crowded pages
2026-07-10 15:33:02 +02:00
Alessandro (Ale) Segala
b2711ced99
fix: /authorize endpoint crashes when list of scopes is empty ( #1575 )
2026-07-08 17:48:32 -07:00
Sean McKenzie and Elias Schneider
6734585712
feat: add description field to oidc clients ( #1547 )
...
Co-authored-by: Elias Schneider <login@eliasschneider.com >
2026-07-08 13:41:51 +02:00
Elias Schneider and Alessandro Segala
09d196f7c5
feat: add OAuth APIs with scoped permissions ( #1542 )
...
Co-authored-by: Alessandro (Ale) Segala <43508+ItalyPaleAle@users.noreply.github.com >
2026-07-06 12:25:02 -07:00
Alessandro (Ale) Segala
d359438814
tests(e2e): make API key renewal date picker navigation date-independent ( #1560 )
2026-07-02 21:16:47 -05:00
Elias Schneider
931a6c2adb
feat: drop TOFU support for callback URL
2026-07-02 14:05:37 +02:00
8564d35682
feat: login code input boxes ( #1545 )
...
Co-authored-by: james <james@goldfish.net >
Co-authored-by: Elias Schneider <login@eliasschneider.com >
2026-07-02 07:56:18 +00:00
97bd466f38
feat: prompt admin with PKCE client support hint ( #1499 )
...
Co-authored-by: james <james@goldfish.net >
Co-authored-by: Alessandro (Ale) Segala <43508+ItalyPaleAle@users.noreply.github.com >
Co-authored-by: Elias Schneider <login@eliasschneider.com >
Co-authored-by: Kyle Mendell <kmendell@ofkm.us >
2026-06-28 11:10:30 -07:00
Elias Schneider
d467855870
feat: add ability to skip consent for client
2026-06-26 23:35:26 +02:00
Elias Schneider
16b5c16a66
fix: CSP error with response_mode=form_post
2026-06-26 14:51:56 +02:00
Elias Schneider
2ed703540d
fix: don't reject offline_accessscope
2026-06-26 14:43:22 +02:00
Elias Schneider
7eaaea717b
tests(e2e): fix flaky test
2026-06-22 23:00:10 +02:00
Elias Schneider
8689ddd72b
feat: improve error handling on authorize page
2026-06-22 22:12:14 +02:00
Elias Schneider
8158452b37
refactor: use fosite for OAuth 2.0 logic ( #1520 )
2026-06-22 18:42:02 +02:00
Elias Schneider
dbbe2a403a
tests(e2e): fix locators after shadcn upgrade
2026-06-21 20:52:42 +02:00
Elias Schneider
effd2a146f
tests(e2e): fix wrong assertion
2026-06-16 12:08:38 +02:00
Elias Schneider
8a75774971
fix: callback URL validation not validated if prompt=none
2026-06-16 12:02:57 +02:00
Elias Schneider
3d9d4de619
fix: PAR parameters not respected by authorize page
2026-06-16 09:29:34 +02:00
Thibault NORMAND and Elias Schneider
68a5abdcca
feat(oauth): add support for Pushed Authorization Requests (RFC9126) ( #1404 )
...
Co-authored-by: Elias Schneider <login@eliasschneider.com >
2026-06-02 14:02:12 +02:00
Elias Schneider
9ad2bfc7b3
tests(e2e): don't compare hashes of profile pictures
2026-05-29 13:43:21 +02:00
Elias Schneider
b3d40a476b
feat: improve design trough the whole application
2026-05-29 11:37:34 +02:00
Elias Schneider
f13424720b
tests(e2e): use custom Playwright route for callback URL checks
2026-05-29 09:44:37 +02:00
Elias Schneider
0c95b7c3cc
feat: add support for response_mode=fragment
2026-05-29 09:14:44 +02:00
Elias Schneider
9dd3d319cf
feat: delete OAuth refresh token on RP initiated logout ( #1480 )
2026-05-19 17:05:44 +02:00