Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1412 commits
Select commit Hold shift + click to select a range
6b82e18
c/feat(static): update prompts.json
thlehmann-ionos Mar 26, 2025
8e20f48
c/chore(locales/ionos): update texts
thlehmann-ionos Mar 26, 2025
35a7822
c/feat(custom_resources): update to latest models config
thlehmann-ionos Mar 26, 2025
933a8f7
c/feat(static): update prompts.json, agents.json
thlehmann-ionos Mar 26, 2025
83e82ce
c/feat(AgentSelector): make card a bit wider to fit longer subtitle
thlehmann-ionos Mar 26, 2025
81e6cc4
c/feat(config): add config OAUTH_CODE_CHALLENGE_METHOD
thlehmann-ionos Mar 26, 2025
c75b7c5
c/fix(+layout): fix check for /auth in unauthenticated state
thlehmann-ionos Mar 27, 2025
c10f270
c/feat(custom_resources): update to latest models config
thlehmann-ionos Mar 28, 2025
0315f15
c/feat(static): update agents.json
thlehmann-ionos Mar 28, 2025
3eb37df
c/docs: document keycloak and OIDC setup
thlehmann-ionos Mar 26, 2025
d776d82
c/chore(docker-compose.dev): add keycloak
thlehmann-ionos Mar 26, 2025
106d26c
c/chore(IONOS): move components used on explore page to subdirectory
thlehmann-ionos Mar 28, 2025
720f5a4
c/feat(IONOS/Dialog): support hiding the header
thlehmann-ionos Mar 28, 2025
8c75ca7
c/refactor(explore): call agent/prompt select services through events
thlehmann-ionos Mar 31, 2025
9a52aeb
c/feat(env): add new config IONOS_REGISTRATION_URL
thlehmann-ionos Mar 31, 2025
8946e61
c/feat(IONOS): add login/register overlay
thlehmann-ionos Mar 28, 2025
d94666d
c/feat(explore): integrate login/register overlay
thlehmann-ionos Mar 28, 2025
f18cce9
c/feat(auth/+page): route users immediatly to OIDC provider
thlehmann-ionos Apr 2, 2025
65d94a1
c/feat(auth/+page): add localStorage switch to enable auth form
thlehmann-ionos Apr 2, 2025
8dfa10a
c/docs(.env.ionos.sampl): add more example configs
thlehmann-ionos Apr 2, 2025
4105b06
c/docs: document local development
thlehmann-ionos Apr 2, 2025
39f490a
c/chore(knowledgebase): namespace the create overlay placeholders
thlehmann-ionos Apr 2, 2025
aacfd11
c/refactor(apis/auths): simplify overcomplicated promise + async/awai…
thlehmann-ionos Apr 4, 2025
25f6827
c/fix(UserMenu): with OIDC logout don't follow redirect in fetch
thlehmann-ionos Apr 4, 2025
fc7687e
c/chore(github/workflows): handle failure, more logging, pass registr…
thlehmann-ionos Apr 7, 2025
488af8d
c/feat(IONOS): add link component
thlehmann-ionos Apr 8, 2025
aa0958e
c/feat(IONOS): add footer
thlehmann-ionos Apr 8, 2025
292bf0f
c/feat(Footer): change license agreement text, add links
thlehmann-ionos Apr 8, 2025
7eb011b
c/feat(Navbar): add privacy slogan to header
thlehmann-ionos Feb 17, 2025
b0e2e32
c/fix(explore): add backdrop gradient behind header
thlehmann-ionos Apr 8, 2025
b9063ef
c/chore(locales/ionos): update texts
thlehmann-ionos Apr 8, 2025
3a41469
fix(docs/IONOS): fix link to local-development docs
bromiesTM Apr 3, 2025
0e2cd60
c/chore(config): regard user language in DEFAULT_TITLE_GENERATION_PRO…
rhaiber-ionos Apr 8, 2025
88d23b5
c/feat(env): add new config IONOS_LOGOUT_URL
thlehmann-ionos Apr 9, 2025
97a2bef
c/chore(IONOS): fix linter issue in test
thlehmann-ionos Apr 9, 2025
c0e8789
c/fix(auths): change logout from end_session_endpoint to ionos_logout…
thlehmann-ionos Apr 9, 2025
52e1cf5
c/chore(github/workflows): prefix the personal branch pattern with tl…
thlehmann-ionos Apr 9, 2025
dde372f
c/chore(/+layout): use $WEBUI_NAME instead of hardcoded string
thlehmann-ionos Apr 9, 2025
e18ed96
c/chore(app): remove opensearch link
thlehmann-ionos Apr 9, 2025
dfb8056
c/feat: change application name to "IONOS GPT"
thlehmann-ionos Apr 9, 2025
783546c
c/feat(app.html): change title + meta description to be SEO conform
thlehmann-ionos Apr 9, 2025
8911932
c/feat(Sidebar): show "Workspace" only for admins
thlehmann-ionos Apr 9, 2025
da45892
c/chore(docker-compose.dev): mount /statis/{favicon,static}
thlehmann-ionos Apr 10, 2025
0505748
c/feat: change favicon and logo
thlehmann-ionos Apr 10, 2025
f224d86
c/feat: change apple-touch-icon
thlehmann-ionos Apr 10, 2025
213389e
c/feat(app.html): change theme color to IONOS brand color
thlehmann-ionos Apr 10, 2025
4511a4e
c/feat(backend): change logos in backend static folder too
thlehmann-ionos Apr 10, 2025
45542b3
c/chore(services/auths): remove unused parameter
thlehmann-ionos Apr 14, 2025
707282e
c/chore(lib/stores): declare ionos_logout_url in types
thlehmann-ionos Apr 14, 2025
a0b3834
c/feat(env): add new config IONOS_PASSWORD_RESET_URL
thlehmann-ionos Apr 14, 2025
6a56e6e
c/chore(services/auths.spec): clarify test description
thlehmann-ionos Apr 14, 2025
4e1a22c
c/feat(services/auths): explicitly configure logout endpoint URI for …
thlehmann-ionos Apr 14, 2025
9e43760
c/feat(services/auths): support override post-logout URL
thlehmann-ionos Apr 14, 2025
14ddfba
c/feat(Button): add prop iconOnly, default padding depending on type
thlehmann-ionos Apr 3, 2025
55139c9
c/chore(Button): remove redundant padding classes
thlehmann-ionos Apr 14, 2025
4677546
c/chore(IONOS/MessageInput): change from className -> iconOnly props
thlehmann-ionos Apr 14, 2025
3c5350e
c/feat(IONOS): add custom settings dialog
thlehmann-ionos Apr 3, 2025
cb50e82
c/feat(/+layout): integrate custom settings dialog
thlehmann-ionos Apr 3, 2025
a42f4fd
c/chore(locales/ionos): update texts
thlehmann-ionos Apr 14, 2025
a3548d2
c/feat: remove prefered color-scheme detection (theming)
thlehmann-ionos Apr 14, 2025
5d71e2e
c/chore: fix linter issues
thlehmann-ionos Apr 15, 2025
4370def
c/feat: remove help button and accompaning overlays
thlehmann-ionos Apr 15, 2025
7be550f
c/feat(socket): remove sending user-list and usage events
thlehmann-ionos Apr 16, 2025
da29202
c/feat(custom_resources): update to latest models config
thlehmann-ionos Apr 22, 2025
6d752b8
c/feat(Footer): link model hub
thlehmann-ionos Apr 22, 2025
601fdf2
c/feat(app): change rotots meta to index,follow
thlehmann-ionos Apr 22, 2025
d065f8a
c/feat(github/workflows): tag image with the tag this build runs for
thlehmann-ionos Apr 22, 2025
002b16d
c/fix(Chat): bind selectedModels to fix agent update in empty chat
thlehmann-ionos Apr 22, 2025
628cc87
c/feat(Link): propagate click, support additional classes
thlehmann-ionos Apr 23, 2025
22a7072
c/feat(LoginRegisterOverlay): redesign accoring to UX
thlehmann-ionos Apr 23, 2025
db3ffa5
c/docs(translations): mention manually entering keys
thlehmann-ionos Apr 23, 2025
ce56770
c/feat(custom_resources): update to latest models config
thlehmann-ionos Apr 23, 2025
990d549
c/feat(static): update agents.json
thlehmann-ionos Apr 23, 2025
37ac0df
c/fix(Scroller): fix non-auto-starting scroller
thlehmann-ionos Apr 24, 2025
1e26234
c/chore(Scroller): declare types
thlehmann-ionos Apr 24, 2025
6dd495f
c/chore(services): rename getPrompt(), getAgent() -> getAndForgetProm…
thlehmann-ionos Apr 24, 2025
9f7b763
c/chore(prompt): add tests for service
thlehmann-ionos Apr 24, 2025
dae58fd
c/chore(stores): export SessionUser
thlehmann-ionos Apr 24, 2025
2d4ce65
c/chore(agent): add tests for service
thlehmann-ionos Apr 24, 2025
e9aa1f3
c/chore(stores): export Settings
thlehmann-ionos Apr 24, 2025
5728c10
c/refactor(startup): move settings update to own service
thlehmann-ionos Apr 24, 2025
bd6c41e
c/tests(services/settings): add tests for existing code
thlehmann-ionos Apr 24, 2025
6cdd730
c/fix(services/settings): don't update store if API call fails
thlehmann-ionos Apr 24, 2025
9122d91
c/chore(startup): add tests for exising code
thlehmann-ionos Apr 24, 2025
0a6c296
c/feat(routing): send user to explore page if they have no chats
thlehmann-ionos Apr 23, 2025
f0a24b4
c/feat(chats): add hasChats() to service
thlehmann-ionos Apr 24, 2025
c19ddb0
c/style(tailwind.config): add ionos colors
bromiesTM Apr 9, 2025
2a3848c
c/style(buttons): align buttons to styleguide
bromiesTM Apr 9, 2025
f1a28b5
c/style: various color asignments
bromiesTM Apr 14, 2025
dbc72aa
c/style(buttons): adjust border radius
bromiesTM Apr 14, 2025
338ea7f
c/style: remove ai-main color
bromiesTM Apr 14, 2025
45ed52b
c/style(UserMessage): decrease border-radius
bromiesTM Apr 14, 2025
c84a2d9
c/style(sidebar): ionos customizations
bromiesTM Apr 14, 2025
ba323a8
c/style(UserMenu): adjust colors & spacing
bromiesTM Apr 23, 2025
4a1c40b
c/style(fonts): add Overpass Regular font
bromiesTM Apr 23, 2025
82cc8c2
c/style: adjust gradient headlines
bromiesTM Apr 23, 2025
aea1282
c/style(explore page): text adjustments
bromiesTM Apr 23, 2025
a5cd982
style(Sidebar): fix pinned chat spacing
bromiesTM Apr 23, 2025
932d316
c/feat(Sidebar): focus search input on click (collapsed)
bromiesTM Apr 23, 2025
aa64c72
c/style(ModelProfile): adjust colors, font and spacing
bromiesTM Apr 23, 2025
16cae70
c/style(MessageInput): ionos styling
bromiesTM Apr 24, 2025
9e97881
c/sytle(AgentSelector): ionos styling
bromiesTM Apr 24, 2025
a843017
c/style: consolidate drop shadows
bromiesTM Apr 24, 2025
44280b1
c/refactor: use overpass via tailwind
bromiesTM Apr 24, 2025
2ffb9b2
c/style(SamllAgentSelector): secondary button font
bromiesTM Apr 24, 2025
b855291
c/style(Message): ionos customization
bromiesTM Apr 24, 2025
8bf3401
c/style: set primary font to OpenSans
bromiesTM Apr 24, 2025
bbba84a
c/refactor(Icons): make icon color changable
bromiesTM Apr 24, 2025
f71bd3b
c/style: switch from robot to sparkles icon
bromiesTM Apr 24, 2025
2a314d1
c/chore(Icons): add new icons
bromiesTM Apr 25, 2025
5afe0f3
c/style(Icons): change size to match figma
bromiesTM Apr 25, 2025
d1238e6
c/style(Icons): switch to ionos icons
bromiesTM Apr 25, 2025
cba8f5b
c/feat(ResponseMessage): whitelist allowed message interaction
bromiesTM Apr 28, 2025
f5f4129
c/chore(Icons): add chat message interaction icons
bromiesTM Apr 28, 2025
ee84d5e
c/style(ResponseMessage): change interaction icons
bromiesTM Apr 28, 2025
5982a84
c/chore(Icons): add chat message interaction icons
bromiesTM Apr 28, 2025
e3a334d
c/feat(SmallAgentSelector): support agent icons via special tag icon:…
thlehmann-ionos Mar 17, 2025
0eef1a8
c/style(Sidebar): use same icon for unpin
bromiesTM Apr 28, 2025
e2a478d
c/feat(custom_resources): update to latest models config (incl. icons)
bromiesTM Apr 28, 2025
b362afa
c/fix(app layout): fix non opening knowledge manager
bromiesTM Apr 28, 2025
f121bc0
c/chore: remove unwanted options from message input menu
bromiesTM Apr 28, 2025
66b9875
c/feat(seo): allow search engines to crawl website
bromiesTM Apr 30, 2025
2eae7cc
c/style(buttons): fix secondary button pressed state color
bromiesTM Apr 30, 2025
fc2617d
c/fix(InputMenu): restrict input options
bromiesTM Apr 30, 2025
91d709b
fix(INC-114483) removed system prompts in models response (set "param…
toscharfmoc Apr 30, 2025
98679ba
c/style(buttons): use thicker font weight, reduce font size
bromiesTM May 5, 2025
4b63cba
c/fix(i18n): correction of bad translation
bromiesTM May 7, 2025
f3355ee
c/docs(config): add user knowledge permission
bromiesTM May 7, 2025
80b87ce
c/style: add new ionos icons
bromiesTM May 7, 2025
ce72eb8
c/refactor(Dialogs): change dialogs according to Figma and UX feedback
bromiesTM May 7, 2025
7d830a2
c/fix(Confirm): set content/message font-size to text-sm
thlehmann-ionos May 9, 2025
c7b5510
c/style: replace icons
bromiesTM May 7, 2025
3032f6b
c/feat(users): support account deletion via webhook
thlehmann-ionos May 6, 2025
bec11d7
c/chore(webhook): add 5 second timeout
thlehmann-ionos May 7, 2025
6d2efbd
c/feat: add LoadingCover component for use in dialog
thlehmann-ionos May 7, 2025
3d296f3
c/chore(KnowledgeManager): use LoadingCover component
thlehmann-ionos May 9, 2025
154594e
c/tests(services/settings): fix failing test
thlehmann-ionos May 9, 2025
77ed51c
c/feat(IONOS): add user/account API/service
thlehmann-ionos May 6, 2025
c8282b3
c/refactor(Confirm): change to take message as slot
thlehmann-ionos May 7, 2025
d0fa138
c/feat(Account): add UI for delete account
thlehmann-ionos Apr 14, 2025
348f29e
c/feat(AccountPending): add custom account pending page
thlehmann-ionos May 7, 2025
3a983a1
c/fix(services/chats): catch errors while getting chat list
thlehmann-ionos May 7, 2025
f9c84cb
c/feat(custom_resources): update to latest models config
thlehmann-ionos May 12, 2025
aa6f528
c/feat(locales/ionos): update texts
thlehmann-ionos May 12, 2025
712f1fb
c/feat(webhook): make request timeout configurable through WEBHOOK_TI…
thlehmann-ionos May 12, 2025
799f876
feat(explore): add sidebar to explorepage
bromiesTM May 5, 2025
30d163b
c/fix(github): harden tag value, remove slashes
thlehmann-ionos May 13, 2025
067ef7d
c/fix(github): --follow the log instead of polling it
thlehmann-ionos May 12, 2025
2670d1a
c/fix(KnowledgeEdit): remove deleted file from list
bromiesTM May 14, 2025
a7d8e75
c/fix(x icon): make color customizable
bromiesTM May 15, 2025
1744fc4
c/style: add upload icon
bromiesTM May 15, 2025
61ff770
c/chore(InputMenu): clone component and add knowledge to menu
bromiesTM May 15, 2025
9ea448a
c/chore(FileItem): clone and customize component
bromiesTM May 15, 2025
2fd2309
c/chore: use customized FileItem component
bromiesTM May 15, 2025
c8c766e
c/feat(Sidebar): use custom search icon, fix hover effect on search f…
thlehmann-ionos May 16, 2025
4ad6479
c/style(ModelProfile): use correct sizing
bromiesTM May 19, 2025
da80f44
c/style(AgentSelector): use correct font size and height
bromiesTM May 19, 2025
758b716
c/fix(explore): privacy & user menu not showing
bromiesTM May 19, 2025
f4a28ab
c/style(dropdown menus): spacing & font styles
bromiesTM May 19, 2025
3327db1
c/fix(KnowledgeManager): glitching dialog when loading on close
bromiesTM May 19, 2025
2b902ff
c/style(Navbar): change UserMenu icon
bromiesTM May 19, 2025
f28bc4c
c/chore(SmallAgentSelector): show full Agent name
bromiesTM May 19, 2025
c34267d
c/style(MessageInput): adjust font size & input height
bromiesTM May 19, 2025
d20f2f9
c/style(Sidebar): fix jumping logos on collapse
bromiesTM May 19, 2025
2b360a0
c/style(chat messages): adjust font and spacing
bromiesTM May 19, 2025
421b332
c/seo(i18n): optimize translations
bromiesTM May 20, 2025
4047cda
c/style(knowledge dialogs): align to styleguide
bromiesTM May 21, 2025
b464c62
c/style(Dialog): darken background color
bromiesTM May 21, 2025
00ce7c6
c/style(Settings): align to styleguide
bromiesTM May 21, 2025
7f86ec5
c/chore(Registration): make dialog closable
bromiesTM May 21, 2025
dcfa883
c/style(Registration): align to styleguide
bromiesTM May 21, 2025
9407085
c/fix(DeleteConfirm): always close dialog on confirm delete
bromiesTM May 19, 2025
6f75835
c/style(MessageInput): shrink input element down
bromiesTM May 21, 2025
4a5353d
c/style(Explore-Sidebar): fix jumping layout
bromiesTM May 26, 2025
fe412c8
c/chore(i18n): update ionos translations
bromiesTM May 26, 2025
933c7f3
c/style(startpage): fix overflow of animated background
bromiesTM May 26, 2025
3692021
fix(Link): render links without href as buttons
thlehmann-ionos May 27, 2025
80aab6b
feat(Account): make delete account dependent on config
thlehmann-ionos Jun 4, 2025
c829ce4
c/feat(Button): add "interactive" prop
thlehmann-ionos Jun 11, 2025
e69fa72
c/chore(AgentSelector): fix a11y issue with card not having keypress …
thlehmann-ionos Jun 11, 2025
8dafed7
c/chore(MessageInput): remove unused function
thlehmann-ionos Jun 11, 2025
bff0adb
c/chore: remove unused imports
thlehmann-ionos Jun 11, 2025
0e6a71d
c/chore(InputMenu): fix function type errors
thlehmann-ionos Jun 11, 2025
9a5bfce
c/chore(SmallAgentSelector): declare type
thlehmann-ionos Jun 11, 2025
9c5632e
c/chore(InputMenu): fix type issues of i18n context
thlehmann-ionos Jun 11, 2025
b5b874a
c/chore(InputMenu): removed unused tools rendering
thlehmann-ionos Jun 11, 2025
19dc1a6
c/chore(FileItem): fix type issues of i18n context
thlehmann-ionos Jun 11, 2025
7d4041c
c/chore(LoadingCover): fix type for size prop
thlehmann-ionos Jun 11, 2025
df81aba
c/chore(Scroller): fix type import of ScrollerItem
thlehmann-ionos Jun 11, 2025
312cc5c
c/chore(Spinner): change vendor prefixed to standard mask property
thlehmann-ionos Jun 11, 2025
fac9855
c/chore(KnowledgeManager): removed undeclared size prop
thlehmann-ionos Jun 11, 2025
a4e2f02
c/chore(Account): fix type issue
thlehmann-ionos Jun 11, 2025
94dcffe
c/chore(account): fix type issue
thlehmann-ionos Jun 11, 2025
aa2eab0
c/fix(MarkdownInlineToken): large spacing between headings and content
bromiesTM May 27, 2025
383d98a
c/chore(icons): add new icons
bromiesTM May 27, 2025
6bfae55
c/style(icons): add icons
bromiesTM Jun 4, 2025
60e7f8a
c/feat(auths): provide created_at of user
thlehmann-ionos Jun 10, 2025
7c17172
c/feat: provide config ionos_survey_new_users_url
thlehmann-ionos Jun 11, 2025
e2378d3
c/feat: add notification banner
bromiesTM Jun 4, 2025
06e7c6d
c/feat: add notification banner to app layout
bromiesTM Jun 4, 2025
1ccf726
c/docs(.env.sample): add default user role
bromiesTM Jun 4, 2025
658cc06
c/chore(locales/ionos): download translations
thlehmann-ionos Jun 11, 2025
3aedc52
c/chore(locales/ionos): download translations
thlehmann-ionos Jun 12, 2025
b7e2d4c
c/feat(PrivacySlogan): link the privacy slogan
thlehmann-ionos Jun 12, 2025
de19e99
c/chore(app): change title text
thlehmann-ionos Jun 12, 2025
0e7cb69
c/fix(github): fix wrong job exit code processing
thlehmann-ionos Jun 12, 2025
d80b858
c/fix(github): print the additional tag too
thlehmann-ionos Jun 12, 2025
e88a745
c/fix(github): fix logged container status JSON in case of failure
thlehmann-ionos Jun 12, 2025
853fa14
c/fix(github): print the Job's Pod status, not the Job status on failure
thlehmann-ionos Jun 12, 2025
439a0e4
fix(auths): make created_at optional for SessionUserResponse
thlehmann-ionos Jun 16, 2025
c7dd43a
c/feat(UserMenu): add link to feedback form
bromiesTM Jun 18, 2025
dc283e2
c/chore(test): remove non-functional, failing tests
thlehmann-ionos Jun 18, 2025
a271738
c/feat(test): add pytest.ini
thlehmann-ionos Jun 18, 2025
394dc34
c/chore(tests): add missing value required by type
thlehmann-ionos Jun 19, 2025
66f526a
c/feat(auths): provide pseudonymized user ID
thlehmann-ionos Jun 13, 2025
d994d59
c/chore(NotificationManager): add check for potential null access
thlehmann-ionos Jun 19, 2025
a3fd025
c/chore(NotificationManager): add non-null assertion to $user
thlehmann-ionos Jun 19, 2025
086fda2
c/feat(NotificationManager): use pseudonymized_user_id
thlehmann-ionos Jun 17, 2025
e22000f
c/test(routers/auths): add minimal test for get_session_user()
thlehmann-ionos Jun 18, 2025
464244f
c/chore(stores): export type Config
thlehmann-ionos Jun 19, 2025
12a7441
c/refactor(NotificationManager): move URL building to service
thlehmann-ionos Jun 19, 2025
c02422d
c/chore(survey): handle undefined pseudonymized_user_id
thlehmann-ionos Jun 19, 2025
fe4d0e6
c/chore: fix type check errors
thlehmann-ionos Jun 19, 2025
bc32d8f
c/chore(tsconfig.ionos): add ambient.d.ts with SvelteKit defs
thlehmann-ionos Jun 19, 2025
8f1f5b9
c/fix(UserMenu): use surveyURL builder service
bromiesTM Jun 20, 2025
4a8a7b0
c/fix(NotificationManager): show survey for accounts older than 14 days
bromiesTM Jun 20, 2025
a837ea2
c/fix(ionos): use OAuth sub for user ID pseudonymization
thlehmann-ionos Jun 20, 2025
df2945a
c/chore: add agreed to terms user setting
bromiesTM Jun 23, 2025
806afde
c/feat: add new terms and licenses notification
bromiesTM Jun 23, 2025
028e672
c/feat(Footer): replace terms statement with menu
bromiesTM Jun 23, 2025
f3c1bca
c/fix(AnimatedBackground): remove mobile overflow
bromiesTM Jun 25, 2025
78c4dfe
c/fix(Terms): add missing links
bromiesTM Jun 25, 2025
f45b0c4
c/feat(main): custom middleware to prevent caching for some paths
thlehmann-ionos Jun 23, 2025
a2a786f
c/chore(TermsMenu): add ModelHub link
bromiesTM Jun 26, 2025
f7072a7
c/fix(ionos): change user ID pseudonymization algorithm
thlehmann-ionos Jun 25, 2025
e6ee4c4
c/fix(github): check for job to terminate after following logs
thlehmann-ionos Jun 26, 2025
9b6070e
refactor(knowledge): unify and centralize file cleanup logic for know…
toscharfmoc May 2, 2025
76a4598
feat(PRODAI-113): remove files -> User delete
toscharfmoc May 2, 2025
87e2303
fix: Correct undefined status code variable in auth check
toscharfmoc Jul 2, 2025
6d21247
fix(custom_resource_loader): Normalize email to lowercase for account…
toscharfmoc Jul 2, 2025
b6b1bea
c/feat(AgentSelector): add new dropdown menu selection
bromiesTM Jul 3, 2025
18bb1c7
chore(static/avatars): add new assistants avatars
bromiesTM Jul 11, 2025
54861e9
c/feat(AgentSelector): randomize shown assistants
bromiesTM Jul 11, 2025
7eb6fbf
c/feat(custom_resources): add new assistants & prompts
bromiesTM Jul 11, 2025
29740c9
c/fix(SmallAgentSelector): fix aligning
bromiesTM Jul 11, 2025
398f7b0
c/style(AgentSelector): adjust spacing to allow for longer assistant …
bromiesTM Jul 11, 2025
3d2c569
c/chore(custom_resources): update submodule (prompt suggestion & shor…
bromiesTM Jul 18, 2025
69f329a
c/chore(static): update agent data
bromiesTM Jul 18, 2025
d858587
c/style(AgentSelector): adjust spacing for shorter descriptions
bromiesTM Jul 18, 2025
abb52c7
c/fix(AgentSelector): remove unwanted agent list randomization
bromiesTM Jul 18, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
11 changes: 11 additions & 0 deletions .env.dev.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# .env for docker-compose.dev.yaml

# False = no login screen, the developer is automatically logged in upon opening the root
WEBUI_AUTH=False
# Set this to an arbitrary random string if WEBUI_AUTH=True
WEBUI_SECRET_KEY="< generate some random string >"

# DO NOT TRACK
SCARF_NO_ANALYTICS=true
DO_NOT_TRACK=true
ANONYMIZED_TELEMETRY=false
25 changes: 25 additions & 0 deletions .github/workflows/codespell.disabled
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Codespell configuration is within pyproject.toml
---
name: Codespell

on:
push:
branches: [main]
pull_request:
branches: [main]

permissions:
contents: read

jobs:
codespell:
name: Check for spelling errors
runs-on: ubuntu-latest

steps:
- name: Checkout
uses: actions/checkout@v4
- name: Annotate locations with typos
uses: codespell-project/codespell-problem-matcher@v1
- name: Codespell
uses: codespell-project/actions-codespell@v2
255 changes: 255 additions & 0 deletions .github/workflows/integration-test.disabled
Original file line number Diff line number Diff line change
@@ -0,0 +1,255 @@
name: Integration Test

on:
push:
branches:
- main
- dev
pull_request:
branches:
- main
- dev

jobs:
cypress-run:
name: Run Cypress Integration Tests
runs-on: ubuntu-latest
steps:
- name: Maximize build space
uses: AdityaGarg8/[email protected]
with:
remove-android: 'true'
remove-haskell: 'true'
remove-codeql: 'true'

- name: Checkout Repository
uses: actions/checkout@v4

- name: Build and run Compose Stack
run: |
docker compose \
--file docker-compose.yaml \
--file docker-compose.api.yaml \
--file docker-compose.a1111-test.yaml \
up --detach --build

- name: Delete Docker build cache
run: |
docker builder prune --all --force

- name: Wait for Ollama to be up
timeout-minutes: 5
run: |
until curl --output /dev/null --silent --fail http://localhost:11434; do
printf '.'
sleep 1
done
echo "Service is up!"

- name: Preload Ollama model
run: |
docker exec ollama ollama pull qwen:0.5b-chat-v1.5-q2_K

- name: Cypress run
uses: cypress-io/github-action@v6
env:
LIBGL_ALWAYS_SOFTWARE: 1
with:
browser: chrome
wait-on: 'http://localhost:3000'
config: baseUrl=http://localhost:3000

- uses: actions/upload-artifact@v4
if: always()
name: Upload Cypress videos
with:
name: cypress-videos
path: cypress/videos
if-no-files-found: ignore

- name: Extract Compose logs
if: always()
run: |
docker compose logs > compose-logs.txt

- uses: actions/upload-artifact@v4
if: always()
name: Upload Compose logs
with:
name: compose-logs
path: compose-logs.txt
if-no-files-found: ignore

# pytest:
# name: Run Backend Tests
# runs-on: ubuntu-latest
# steps:
# - uses: actions/checkout@v4

# - name: Set up Python
# uses: actions/setup-python@v5
# with:
# python-version: ${{ matrix.python-version }}

# - name: Install dependencies
# run: |
# python -m pip install --upgrade pip
# pip install -r backend/requirements.txt

# - name: pytest run
# run: |
# ls -al
# cd backend
# PYTHONPATH=. pytest . -o log_cli=true -o log_cli_level=INFO

migration_test:
name: Run Migration Tests
runs-on: ubuntu-latest
services:
postgres:
image: postgres
env:
POSTGRES_PASSWORD: postgres
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
ports:
- 5432:5432
# mysql:
# image: mysql
# env:
# MYSQL_ROOT_PASSWORD: mysql
# MYSQL_DATABASE: mysql
# options: >-
# --health-cmd "mysqladmin ping -h localhost"
# --health-interval 10s
# --health-timeout 5s
# --health-retries 5
# ports:
# - 3306:3306
steps:
- name: Checkout Repository
uses: actions/checkout@v4

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

- name: Set up uv
uses: yezz123/setup-uv@v4
with:
uv-venv: venv

- name: Activate virtualenv
run: |
. venv/bin/activate
echo PATH=$PATH >> $GITHUB_ENV

- name: Install dependencies
run: |
uv pip install -r backend/requirements.txt

- name: Test backend with SQLite
id: sqlite
env:
WEBUI_SECRET_KEY: secret-key
GLOBAL_LOG_LEVEL: debug
run: |
cd backend
uvicorn open_webui.main:app --port "8080" --forwarded-allow-ips '*' &
UVICORN_PID=$!
# Wait up to 40 seconds for the server to start
for i in {1..40}; do
curl -s http://localhost:8080/api/config > /dev/null && break
sleep 1
if [ $i -eq 40 ]; then
echo "Server failed to start"
kill -9 $UVICORN_PID
exit 1
fi
done
# Check that the server is still running after 5 seconds
sleep 5
if ! kill -0 $UVICORN_PID; then
echo "Server has stopped"
exit 1
fi

- name: Test backend with Postgres
if: success() || steps.sqlite.conclusion == 'failure'
env:
WEBUI_SECRET_KEY: secret-key
GLOBAL_LOG_LEVEL: debug
DATABASE_URL: postgresql://postgres:postgres@localhost:5432/postgres
DATABASE_POOL_SIZE: 10
DATABASE_POOL_MAX_OVERFLOW: 10
DATABASE_POOL_TIMEOUT: 30
run: |
cd backend
uvicorn open_webui.main:app --port "8081" --forwarded-allow-ips '*' &
UVICORN_PID=$!
# Wait up to 20 seconds for the server to start
for i in {1..20}; do
curl -s http://localhost:8081/api/config > /dev/null && break
sleep 1
if [ $i -eq 20 ]; then
echo "Server failed to start"
kill -9 $UVICORN_PID
exit 1
fi
done
# Check that the server is still running after 5 seconds
sleep 5
if ! kill -0 $UVICORN_PID; then
echo "Server has stopped"
exit 1
fi

# Check that service will reconnect to postgres when connection will be closed
status_code=$(curl --write-out %{http_code} -s --output /dev/null http://localhost:8081/health/db)
if [[ "$status_code" -ne 200 ]] ; then
echo "Server has failed before postgres reconnect check"
exit 1
fi

echo "Terminating all connections to postgres..."
python -c "import os, psycopg2 as pg2; \
conn = pg2.connect(dsn=os.environ['DATABASE_URL'].replace('+pool', '')); \
cur = conn.cursor(); \
cur.execute('SELECT pg_terminate_backend(psa.pid) FROM pg_stat_activity psa WHERE datname = current_database() AND pid <> pg_backend_pid();')"

status_code=$(curl --write-out %{http_code} -s --output /dev/null http://localhost:8081/health/db)
if [[ "$status_code" -ne 200 ]] ; then
echo "Server has not reconnected to postgres after connection was closed: returned status $status_code"
exit 1
fi

# - name: Test backend with MySQL
# if: success() || steps.sqlite.conclusion == 'failure' || steps.postgres.conclusion == 'failure'
# env:
# WEBUI_SECRET_KEY: secret-key
# GLOBAL_LOG_LEVEL: debug
# DATABASE_URL: mysql://root:mysql@localhost:3306/mysql
# run: |
# cd backend
# uvicorn open_webui.main:app --port "8083" --forwarded-allow-ips '*' &
# UVICORN_PID=$!
# # Wait up to 20 seconds for the server to start
# for i in {1..20}; do
# curl -s http://localhost:8083/api/config > /dev/null && break
# sleep 1
# if [ $i -eq 20 ]; then
# echo "Server failed to start"
# kill -9 $UVICORN_PID
# exit 1
# fi
# done
# # Check that the server is still running after 5 seconds
# sleep 5
# if ! kill -0 $UVICORN_PID; then
# echo "Server has stopped"
# exit 1
# fi
Loading
Loading