feat: login page customization #650

Closed
opened 2026-04-05 17:31:20 +02:00 by MrUnknownDE · 0 comments
Owner

Originally created by @Fredkiss3 on 11/11/2025

Community Contribution License Agreement

By creating this pull request, I grant the project maintainers an unlimited,
perpetual license to use, modify, and redistribute these contributions under any terms they
choose, including both the AGPLv3 and the Fossorial Commercial license terms. I
represent that I have the right to grant this license for all contributed content.

Description

Main changes:

Other changes:

  • Moved the auth page settings to its own tab in the Org general settings page
  • Added a process.exit(0) line to the migration script because otherwise the migration script would just hang even though it has already finished running 7a31292ec7/server/db/pg/migrate.ts (L13-L14)
  • Proposition: generate the build.ts file like this:
    export const build = "oss" as "saas" | "enterprise" | "oss";
    
    This way it prevents typos when comparing the value of build everywhere and is validated by TypeScript.
  • Added a prop exact to the HorizontalTabs component to match paths exactly

Screenshots

- -
Branding settings Screenshot 2025-11-15 at 06 27 15
Auth page tab Screenshot 2025-11-15 at 06 27 19
Resource auth page with branding Screenshot 2025-11-15 at 06 27 26
Org auth page with branding Screenshot 2025-11-15 at 06 27 31
*Originally created by @Fredkiss3 on 11/11/2025* ## Community Contribution License Agreement By creating this pull request, I grant the project maintainers an unlimited, perpetual license to use, modify, and redistribute these contributions under any terms they choose, including both the AGPLv3 and the Fossorial Commercial license terms. I represent that I have the right to grant this license for all contributed content. ## Description **Main changes:** - Added settings to add branding to the login page for resources & org, they override the branding options set in the config file: https://docs.pangolin.net/manage/branding#branding **Other changes:** - Moved the auth page settings to its own tab in the Org general settings page - Added a `process.exit(0)` line to the migration script because otherwise the migration script would just hang even though it has already finished running https://github.com/Fredkiss3/pangolin/blob/7a31292ec7192efae9b1be30fa5113153150debe/server/db/pg/migrate.ts#L13-L14 - Proposition: generate the `build.ts` file like this: ```ts export const build = "oss" as "saas" | "enterprise" | "oss"; ``` This way it prevents typos when comparing the value of `build` everywhere and is validated by TypeScript. - Added a prop `exact` to the `HorizontalTabs` component to match paths exactly ## Screenshots | - | - | | ------ | ------ | | Branding settings | <img width="1539" height="1142" alt="Screenshot 2025-11-15 at 06 27 15" src="https://github.com/user-attachments/assets/436d0e59-406b-4803-820a-2cd0f37c8fbd" /> | | Auth page tab | <img width="1539" height="1142" alt="Screenshot 2025-11-15 at 06 27 19" src="https://github.com/user-attachments/assets/c1a14f08-3552-4b8f-bc74-6f2755339d81" /> | | Resource auth page with branding | <img width="1499" height="1152" alt="Screenshot 2025-11-15 at 06 27 26" src="https://github.com/user-attachments/assets/218622fb-cbd5-4093-a3b2-d173bfe8c852" /> | | Org auth page with branding |<img width="1499" height="1152" alt="Screenshot 2025-11-15 at 06 27 31" src="https://github.com/user-attachments/assets/bd70e07c-757a-4154-a5f0-309934f5176f" /> |
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/pangolin#650