Replace Auth System #3

Merged
w33b merged 19 commits from auth-redo into main 2026-01-09 15:11:37 +00:00
Owner

Pull Request Overview

This pull request addresses issues with the previous implementation using JakyeRU/Larascord for Discord OAuth, which unintentionally replaced the Laravel Auth system. The following problems were identified:

Problems with Current Implementation

  1. Database Modifications: The package removed essential columns, such as password, preventing users from logging in with their passwords.
  2. Primary Key Conflict: The auto-increment primary key was manually overwritten, disrupting the auto-increment functionality and leading to conflicts.
  3. External Dependency: Reliance on an external package requires trust in its ongoing maintenance and functionality.
  4. Difficult Edge Cases: The implementation introduced hard-to-track edge cases that complicated debugging.

Improvements in This Pull Request

This PR proposes the following changes to resolve the above issues:

  1. Database Fixes: A migration will restore the necessary database structure (estimated time: ~20 minutes).
  2. Package Removal: The Larascord package will be removed to eliminate its complications.
  3. Implementation of Laravel Breeze: Introduces Laravel Breeze for standard authentication.
  4. Integration of Laravel Socialite: Utilizes Laravel Socialite for Discord OAuth.

Notable Changes

  • Flexible Login Options: Users can log in using either Discord OAuth or email authentication, provided the email is the same at the time of login. After this initial login, the email requirement is lifted as the Discord ID is stored.
  • Custom User Names and Avatars: Users can now set custom names and avatars, irrespective of the information returned by Discord OAuth.
  • Removal of Public User Page: The public-facing user page has been eliminated, as usernames are not unique and the page was rarely utilized.
  • OAuth Permissions: The OAuth system requires fewer user privileges, with role checks now conducted using a bot token.
### Pull Request Overview This pull request addresses issues with the previous implementation using [JakyeRU/Larascord](https://github.com/JakyeRU/Larascord) for Discord OAuth, which unintentionally replaced the Laravel Auth system. The following problems were identified: ### Problems with Current Implementation 1. **Database Modifications**: The package removed essential columns, such as `password`, preventing users from logging in with their passwords. 2. **Primary Key Conflict**: The auto-increment primary key was manually overwritten, disrupting the auto-increment functionality and leading to conflicts. 3. **External Dependency**: Reliance on an external package requires trust in its ongoing maintenance and functionality. 4. **Difficult Edge Cases**: The implementation introduced hard-to-track edge cases that complicated debugging. ### Improvements in This Pull Request This PR proposes the following changes to resolve the above issues: 1. **Database Fixes**: A migration will restore the necessary database structure (estimated time: ~20 minutes). 2. **Package Removal**: The Larascord package will be removed to eliminate its complications. 3. **Implementation of Laravel Breeze**: Introduces Laravel Breeze for standard authentication. 4. **Integration of Laravel Socialite**: Utilizes Laravel Socialite for Discord OAuth. ### Notable Changes - **Flexible Login Options**: Users can log in using either Discord OAuth or email authentication, provided the email is the same at the time of login. After this initial login, the email requirement is lifted as the Discord ID is stored. - **Custom User Names and Avatars**: Users can now set custom names and avatars, irrespective of the information returned by Discord OAuth. - **Removal of Public User Page**: The public-facing user page has been eliminated, as usernames are not unique and the page was rarely utilized. - **OAuth Permissions**: The OAuth system requires fewer user privileges, with role checks now conducted using a bot token.
w33b added 19 commits 2026-01-09 14:37:27 +00:00
w33b merged commit 8f7f012c14 into main 2026-01-09 15:11:37 +00:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: w33b/hstream#3
No description provided.