Stavros and GitHub
78f97c8550
refactor: split bootstrap to smaller files for better readability ( #518 )
...
* refactor: split bootstrap to smaller files for better readability
* chore: rename setup routes to setup router
* fix: assign configured providers to app context
2025-12-17 15:04:09 +02:00
Stavros
2f4f2505d7
fix: fix language selector and language detection
2025-12-08 19:03:41 +02:00
Stavros and GitHub
8a3f2080c6
New translations en.json (Portuguese, Brazilian) ( #474 )
2025-11-23 14:10:12 +02:00
Stavros
641b9aa531
feat: log unsafe redirect uri in oauth controller
2025-11-23 14:06:35 +02:00
Stavros
6c90046343
feat: add option to disable ui warnings
2025-11-21 17:37:08 +02:00
Stavros and GitHub
e79d1a8faf
New Crowdin updates ( #450 )
...
* New translations en.json (Chinese Traditional)
* New translations en.json (Chinese Traditional)
* New translations en.json (Vietnamese)
* New translations en.json (Portuguese, Brazilian)
2025-11-21 16:19:24 +02:00
Stavros
9d21d6a14f
fix: use lowercase portuguese code tags
2025-11-21 16:10:00 +02:00
Stavros
e0a8cf5441
fix: set correct bin location in air
2025-11-16 19:42:14 +02:00
Stavros
6d663bb1e8
fix: use unix seconds in db cleanup
2025-11-15 11:45:19 +02:00
Stavros
f4411af0a5
refactor: do not install delve on every rebuild
2025-11-15 11:41:42 +02:00
Stavros
8453c48d9e
feat: add log in json option
2025-11-06 18:11:43 +02:00
Stavros
2af036b38e
feat: add logging for session creation
2025-11-06 16:18:01 +02:00
Stavros and GitHub
32539b0ae9
New translations en.json (Finnish) ( #418 )
2025-11-04 18:42:42 +02:00
Stavros
60dada86a6
feat: add support for listening on unix sockets
2025-11-04 18:42:04 +02:00
Stavros
bb1ecd4183
fix: allow for all subdomains to be considered safe for redirection
2025-11-04 17:58:56 +02:00
Stavros
57aca58de3
fix: ensure providers prefix exists on env variables and flags
2025-11-04 17:50:56 +02:00
Stavros
e23f4f1371
chore: disable env acls
2025-11-04 17:48:45 +02:00
Stavros
20fb63532c
fix: build frontend in ci
2025-11-03 21:30:19 +02:00
Stavros
5f7e89c330
feat: enable eslint in ci
2025-10-31 16:13:51 +02:00
Stavros and GitHub
330c7aa8f1
feat: add support for light mode ( #438 )
...
* feat: add support for light mode
* refactor: use shadcn theme toggle
* fix: fix sonner
2025-10-31 15:55:50 +02:00
Stavros and GitHub
0227af6d2b
refactor: rework decoders logic for cleaner code ( #431 )
...
* refactor: rework decoders logic for cleaner code
* refactor: use strcase lib to handle text case conversions
2025-10-26 12:01:19 +02:00
Stavros
6647c6cd78
refactor: use gorm generics api for database actions
2025-10-19 19:16:53 +03:00
Stavros
7231efcbc3
feat: add routine to cleanup expired sessions
2025-10-19 19:10:24 +03:00
Stavros
5482430907
refactor: generate a verifier on every oauth auth session
2025-10-19 19:03:38 +03:00
Stavros
57b7b66813
fix: let docker meta decide if the version is latest or not
2025-10-14 15:45:50 +03:00
Stavros
64222b6d15
fix: don't use container name in label discovery
2025-10-12 11:29:31 +03:00
Stavros
1b87ed9b99
feat: add config dumps to trace log level
2025-10-12 11:29:31 +03:00
Stavros and GitHub
dc67be2ba0
fix: remove html suffix from docs link
2025-10-11 23:18:20 +03:00
Stavros
9b76a84ee2
feat: add trace logging
2025-10-11 15:27:01 +03:00
Stavros
ed20d2cf51
fix: use correct path for data directory in distroless
2025-10-11 15:18:37 +03:00
Stavros
fc7e395e66
feat: sort configured providers based on name length
2025-10-10 17:16:22 +03:00
Stavros
b940d681c3
feat: use recovery gin middleware in engine
2025-10-10 16:42:19 +03:00
Stavros
a1ec4a69cf
fix: remove spaces before checking oauth name and username
2025-10-10 16:28:52 +03:00
Stavros
5a4855c12c
refactor: move docker connection check to start up
2025-10-10 15:45:04 +03:00
Stavros
05d4dbd68e
fix: ensure data directory exists on docker image
2025-10-10 15:34:09 +03:00
Stavros
ae8347fd28
fix: use docker meta flavors for handling latest, prefix and suffix
2025-10-08 23:11:25 +03:00
Stavros
5b7bda3378
chore: use bun frozen lockfile for builds
2025-10-08 18:56:42 +03:00
Stavros
e878516130
refactor: don't add tinyauth suffix to title
2025-10-08 16:41:41 +03:00
Stavros
e5f1df03c4
feat: add tinyauth to container path
2025-10-08 16:40:22 +03:00
Stavros
c77da30d87
refactor: set gin mode using env
2025-10-08 16:24:14 +03:00
Stavros
287c6f975f
fix: do not allow request if docker labels check fail
2025-10-08 15:44:34 +03:00
Stavros
0255e954f7
refactor: use non-google specific meta tags
2025-10-08 15:42:52 +03:00
Stavros
c5d70d7c93
feat: set page title based on configured title
2025-10-08 15:35:54 +03:00
Stavros
adffb4ac0a
fix: names in oauth broker
2025-10-08 15:15:30 +03:00
Stavros
bbf8112995
refactor: touch up loggin in healthcheck command
2025-10-07 15:41:39 +03:00
Stavros
103285855e
feat: add distroless to release workflow
2025-10-07 15:34:08 +03:00
Stavros
2cc6b6bdbb
fix: tinyauth path in dockerfiles
2025-10-07 15:25:17 +03:00
Stavros
adb1a9bee5
fix: fix typo
2025-10-07 15:15:21 +03:00
Stavros
1ee0cee171
feat: distroless image
2025-10-07 15:03:53 +03:00
Stavros
720f387908
refactor: rework cli healthcheck logic
2025-10-07 14:30:09 +03:00
Stavros
a629430a88
chore: update readme
2025-10-06 21:46:15 +03:00
Stavros
f0a48cc91c
feat: add health check command
2025-10-06 21:45:23 +03:00
2f8fa39a9b
refactor: make cli modular ( #390 )
...
* refactor: make cli modular
* chore: apply suggestion from @Rycochet
Co-authored-by: Ryc O'Chet <Rycochet@users.noreply.github.com >
* chore: apply review suggestions
* refactor: no need to handle user escaping in verify cmd
---------
Co-authored-by: Ryc O'Chet <Rycochet@users.noreply.github.com >
2025-10-06 21:27:51 +03:00
Stavros and GitHub
30fe695371
New Crowdin updates ( #278 )
...
* New translations en.json (French)
* New translations en.json (Russian)
* New translations en.json (Chinese Simplified)
* New translations en.json (Ukrainian)
* New translations en.json (Chinese Simplified)
* New translations en.json (Swedish)
* New translations en.json (Swedish)
* New translations en.json (Russian)
* New translations en.json (Czech)
* New translations en.json (German)
* New translations en.json (German)
* New translations en.json (Romanian)
* New translations en.json (French)
* New translations en.json (Spanish)
* New translations en.json (Afrikaans)
* New translations en.json (Arabic)
* New translations en.json (Catalan)
* New translations en.json (Czech)
* New translations en.json (Danish)
* New translations en.json (German)
* New translations en.json (Greek)
* New translations en.json (Finnish)
* New translations en.json (Hebrew)
* New translations en.json (Hungarian)
* New translations en.json (Italian)
* New translations en.json (Japanese)
* New translations en.json (Korean)
* New translations en.json (Dutch)
* New translations en.json (Norwegian)
* New translations en.json (Polish)
* New translations en.json (Portuguese)
* New translations en.json (Russian)
* New translations en.json (Serbian (Cyrillic))
* New translations en.json (Swedish)
* New translations en.json (Turkish)
* New translations en.json (Ukrainian)
* New translations en.json (Chinese Simplified)
* New translations en.json (Chinese Traditional)
* New translations en.json (English)
* New translations en.json (Vietnamese)
* New translations en.json (Portuguese, Brazilian)
* New translations en.json (Romanian)
* New translations en.json (French)
* New translations en.json (Spanish)
* New translations en.json (Afrikaans)
* New translations en.json (Arabic)
* New translations en.json (Catalan)
* New translations en.json (Czech)
* New translations en.json (Danish)
* New translations en.json (German)
* New translations en.json (Greek)
* New translations en.json (Finnish)
* New translations en.json (Hebrew)
* New translations en.json (Hungarian)
* New translations en.json (Italian)
* New translations en.json (Japanese)
* New translations en.json (Korean)
* New translations en.json (Dutch)
* New translations en.json (Norwegian)
* New translations en.json (Polish)
* New translations en.json (Portuguese)
* New translations en.json (Russian)
* New translations en.json (Serbian (Cyrillic))
* New translations en.json (Swedish)
* New translations en.json (Turkish)
* New translations en.json (Ukrainian)
* New translations en.json (Chinese Simplified)
* New translations en.json (Chinese Traditional)
* New translations en.json (English)
* New translations en.json (Vietnamese)
* New translations en.json (Portuguese, Brazilian)
* New translations en.json (French)
* New translations en.json (Romanian)
* New translations en.json (French)
* New translations en.json (Spanish)
* New translations en.json (Afrikaans)
* New translations en.json (Arabic)
* New translations en.json (Catalan)
* New translations en.json (Czech)
* New translations en.json (Danish)
* New translations en.json (German)
* New translations en.json (Greek)
* New translations en.json (Finnish)
* New translations en.json (Hebrew)
* New translations en.json (Hungarian)
* New translations en.json (Italian)
* New translations en.json (Japanese)
* New translations en.json (Korean)
* New translations en.json (Dutch)
* New translations en.json (Norwegian)
* New translations en.json (Polish)
* New translations en.json (Portuguese)
* New translations en.json (Russian)
* New translations en.json (Serbian (Cyrillic))
* New translations en.json (Swedish)
* New translations en.json (Turkish)
* New translations en.json (Ukrainian)
* New translations en.json (Chinese Simplified)
* New translations en.json (Chinese Traditional)
* New translations en.json (English)
* New translations en.json (Vietnamese)
* New translations en.json (Portuguese, Brazilian)
* New translations en.json (Greek)
* New translations en.json (Polish)
* New translations en.json (Arabic)
* New translations en.json (French)
* New translations en.json (French)
* New translations en.json (Chinese Simplified)
* New translations en.json (Portuguese, Brazilian)
* New translations en.json (Russian)
* New translations en.json (Russian)
2025-10-05 23:19:59 +03:00
Stavros
2f1cb8dfe3
refactor: disable indexing completely in frontend
2025-10-05 23:14:24 +03:00
Stavros
dad0718091
fix: disable search engine indexing
2025-10-05 16:41:15 +03:00
Stavros
d4069900bc
feat: autofocus totp form
2025-10-03 16:36:10 +03:00
Stavros
085f6257c5
fix: fix oauth group provider check
2025-09-25 22:35:44 +03:00
Stavros
c307f7eb2e
fix: handle 201 status for heartbeat
2025-09-22 19:56:59 +03:00
Stavros
5dd8526833
fix: fix key normalization function handing more cases than it needs to
2025-09-22 19:29:55 +03:00
Stavros
e8558b89b4
fix: set gin mode correctly
2025-09-22 16:15:55 +03:00
Stavros
f8047a6c2e
feat: add option to disable resources server
2025-09-22 15:52:43 +03:00
Stavros
c9867ccb76
chore: fix typo
2025-09-20 11:08:57 +03:00
Stavros
866933b3d6
fix: fix version handling in docker and cd
2025-09-19 15:38:32 +03:00
Stavros
d70cbea546
chore: handle trusted proxies config error
2025-09-19 14:53:10 +03:00
Stavros and GitHub
50105e4e9d
feat: version info analytics ( #363 )
...
* feat: version info analytics
* refactor: don't create new client everytime
2025-09-19 14:44:22 +03:00
Stavros
b62b2932fe
fix: only set trusted proxies if config option is not empty
2025-09-16 15:14:42 +03:00
Stavros and GitHub
5c866bad1a
feat: multiple oauth providers ( #355 )
...
* feat: add flag decoder (candidate)
* refactor: finalize flags decoder
* feat: add env decoder
* feat: add oauth config parsing logic
* feat: implement backend logic for multiple oauth providers
* feat: implement multiple oauth providers in the frontend
* feat: add some default icons
* chore: add credits for parser
* feat: style oauth auto redirect screen
* fix: bot suggestions
* refactor: rework decoders using simpler and more efficient pattern
* refactor: rework oauth name database migration
2025-09-16 13:28:28 +03:00
Stavros
2d78e6b598
feat: add cookie domain back to context controller
2025-09-10 13:47:48 +03:00
Stavros
e03eaf4f08
feat: add psl check in cookie domain
2025-09-10 13:43:08 +03:00
Stavros
74cb8067a8
tests: add util tests
2025-09-03 17:52:51 +03:00
Stavros
ba46493a7b
tests: add proxy controller tests
2025-09-03 15:30:24 +03:00
Stavros
bb0373758a
tests: add resources controller test
2025-09-03 14:58:24 +03:00
Stavros
f8836fc964
tests: test user context handler with no context
2025-09-03 13:36:11 +03:00
Stavros
53856e0a70
tests: test invalid json in user controller
2025-09-03 13:31:45 +03:00
Stavros
9b7dcfd86f
tests: add user controller tests
2025-09-03 13:28:27 +03:00
Stavros
7afea8b3fc
tests: add tests for context controller
2025-09-03 12:45:23 +03:00
Stavros
f5ac7eff99
refactor: mode label decoder to separate package
2025-09-03 12:23:21 +03:00
Stavros
b024d5ffda
feat: allow for dash substitute in ip filters for environments like kubernetes
2025-09-03 12:16:06 +03:00
Stavros
773cd6d171
feat: add trusted proxies config value
2025-09-03 12:14:13 +03:00
Stavros and GitHub
f3eb7f69b4
Revert "feat: header based acls ( #337 )" ( #340 )
...
This reverts commit f0d2da281a .
2025-09-03 12:12:18 +03:00
Stavros and GitHub
f0d2da281a
feat: header based acls ( #337 )
...
* feat: add header decoder
* feat: allow for dash substitute over slash for environments like kubernetes
* feat: use decoded headers in proxy controller
* refactor: simplify decode header to node function
* refactor: use stdlib prefix check in header decoder
* fix: lowercase key and filter before comparing
2025-09-02 19:06:52 +03:00
Stavros
9ce16c9652
fix: expire csrf cookie if it's invalid
2025-09-02 18:38:11 +03:00
Stavros and GitHub
ad4fc7ef5f
refactor: don't export non-needed fields ( #336 )
...
* refactor: don't export non-needed fields
* feat: coderabbit suggestions
* fix: avoid queries panic
2025-09-02 01:27:55 +03:00
Stavros
5184c96e85
feat: add mutex to ldap service
2025-09-02 00:08:19 +03:00
Stavros and GitHub
b9e35716ac
feat: invalid domain warning ( #332 )
...
* wip
* refactor: update domain warning layout
* i18n: add domain warning translations
* refactor: rework hooks usage
* feat: clear timeouts
* fix: use useeffect to cleanup timeout
* refactor: rework redirects and history storage
* refactor: rename domain to root domain
2025-09-01 18:22:42 +03:00
Stavros and GitHub
c7c3de4f78
refactor: unify labels ( #329 )
...
* refactor: unify labels
* feat: implement path block and user block
Fixes #313
* fix: fix oauth group check logic
* chore: fix typo
2025-08-29 17:04:34 +03:00
Stavros and GitHub
03d06cb0a7
feat: add sqlite database for storing sessions ( #326 )
...
* feat: add sqlite database for storing sessions
* refactor: use db instance instead of service in auth service
* fix: coderabbit suggestions
2025-08-29 12:35:11 +03:00
Stavros and GitHub
504a3b87b4
refactor: rework file structure ( #325 )
...
* wip: add middlewares
* refactor: use context fom middleware in handlers
* refactor: use controller approach in handlers
* refactor: move oauth providers into services (non-working)
* feat: create oauth broker service
* refactor: use a boostrap service to bootstrap the app
* refactor: split utils into smaller files
* refactor: use more clear name for frontend assets
* feat: allow customizability of resources dir
* fix: fix typo in ui middleware
* fix: validate resource file paths in ui middleware
* refactor: move resource handling to a controller
* feat: add some logging
* fix: configure middlewares before groups
* fix: use correct api path in login mutation
* fix: coderabbit suggestions
* fix: further coderabbit suggestions
2025-08-26 15:05:03 +03:00
Stavros and GitHub
ef25962a93
refactor: use whoami router name in development compose
2025-08-19 12:07:43 +03:00
Stavros
4dacb46a8e
fix: fix typo in codecov config
2025-07-17 15:15:47 +03:00
Stavros
5f7f88421e
refactor: move user logging to oauth callback handler
2025-07-17 15:07:05 +03:00
Stavros
bc941cb248
refactor: make reconnect operation return connection
2025-07-17 15:06:06 +03:00
Stavros and GitHub
00d15de44f
New Crowdin updates ( #269 )
...
* New translations en.json (Serbian (Cyrillic))
* New translations en.json (Serbian (Cyrillic))
* New translations en.json (Romanian)
* New translations en.json (French)
* New translations en.json (Spanish)
* New translations en.json (Afrikaans)
* New translations en.json (Arabic)
* New translations en.json (Catalan)
* New translations en.json (Czech)
* New translations en.json (Danish)
* New translations en.json (German)
* New translations en.json (Greek)
* New translations en.json (Finnish)
* New translations en.json (Hebrew)
* New translations en.json (Hungarian)
* New translations en.json (Italian)
* New translations en.json (Japanese)
* New translations en.json (Korean)
* New translations en.json (Dutch)
* New translations en.json (Norwegian)
* New translations en.json (Polish)
* New translations en.json (Portuguese)
* New translations en.json (Russian)
* New translations en.json (Serbian (Cyrillic))
* New translations en.json (Swedish)
* New translations en.json (Turkish)
* New translations en.json (Ukrainian)
* New translations en.json (Chinese Simplified)
* New translations en.json (Chinese Traditional)
* New translations en.json (English)
* New translations en.json (Vietnamese)
* New translations en.json (Portuguese, Brazilian)
* New translations en.json (Polish)
* New translations en.json (Greek)
* New translations en.json (Chinese Traditional)
2025-07-17 13:58:38 +03:00
Stavros
6867667de6
chore: format server package
2025-07-17 00:46:28 +03:00
Stavros
19eb8f3064
refactor: handle oauth groups response as an any array of any
2025-07-17 00:31:24 +03:00
Stavros
1a13936693
refactor: log parsed user in generic provider
2025-07-16 01:38:54 +03:00
Stavros
af26d705cd
fix: add auto complete information to auth forms
2025-07-16 01:29:13 +03:00
Stavros
4a87af4463
refactor: make ldap user not found errors be warnings
2025-07-15 13:18:37 +03:00
Stavros
88d918d608
fix: don't fail app if LDAP is not configured
2025-07-15 02:24:09 +03:00