Skip to content

Svelte Login migration PT II #9626

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 8 commits into
base: master
Choose a base branch
from
Open

Conversation

estib-vega
Copy link
Contributor

Description

  • Added reusable GitHub and Google OAuth button components for login/signup pages.
  • Introduced redirect guard components to manage user navigation based on authentication and account finalization status.
  • Refactored Navigation and Header to use new login/signup flow with webRoutes and removed old redirect logic.
  • Updated app layout to provide LoginService, integrate redirect guards, and conditionally show Navigation.
  • Display logged out view with prompt on main app page when user is not logged in.
  • Fixed user login checks to use USER_SERVICE instead of auth token for project reviews and rules pages.
  • Added new authentication and user-related pages including login, signup, finalize account, resend confirmation, and password reset flows.
  • Refactored root layout to improve authentication and token restoration logic using webRoutes.

Add reusable OAuth login button components (GitHub and Google) for use on login/signup pages. Each button includes style and click logic for OAuth redirect.
Add Svelte components for handling redirect logic:
- RedirectIfLoggedIn redirects authenticated users away from login/signup/reset pages.
- RedirectIfNotFinalized redirects logged-in users missing required data to finalize account.
Refactor navigation components for new login/signup flow:
- Navigation now uses webRoutes for login/signup links instead of direct link logic.
- Remove old env-based login redirect logic from Navigation.
- Home Header shows login/signup via webRoutes.
Update the app layout:
- Provide the LoginService for downstream components.
- Integrate RedirectIfNotFinalized component at the top-level.
- Only show Navigation if not on commit/login/signup page.
Copy link

vercel bot commented Jul 30, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
gitbutler-components ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jul 30, 2025 10:26am
gitbutler-web ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jul 30, 2025 10:26am

Show a logged out friendly message and prompt if user is not logged in. Previously checked for recent projects regardless of login state.
Update project reviews and rules pages to check for logged-in user by USER_SERVICE and redirect home if not logged in, rather than by auth token.

Also add refreshUser method to userService.ts to refresh user state and handle errors.
Add all new authentication/user-related pages. This commit includes:
- Svelte-based login page
- Finalize account page
- Signup page
- Resend confirmation email page
- Password reset start and confirmation pages
Each page handles its specific logic, error display, and integrates with LoginService or the OAuth buttons as required. Navigation links, redirects, and user states are managed according to the new auth flow.
Update root layout logic:
- Refactor authentication + token restore on navigation.
- Use webRoutes for logic around the home page for login state check, not just token.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant