Skip to content

Conversation

@goanpeca
Copy link
Collaborator

@goanpeca goanpeca commented Dec 2, 2025

@netlify
Copy link

netlify bot commented Dec 2, 2025

Deploy Preview for datalayer-core ready!

Name Link
🔨 Latest commit 65589fa
🔍 Latest deploy log https://app.netlify.com/projects/datalayer-core/deploys/692f337f29a35b00081c2a80
😎 Deploy Preview https://deploy-preview-185--datalayer-core.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify project configuration.

@echarles echarles mentioned this pull request Dec 2, 2025
@goanpeca goanpeca force-pushed the enh/unified-auth branch 8 times, most recently from bfeb3e3 to 6f604a6 Compare December 2, 2025 18:00
@goanpeca goanpeca requested a review from echarles December 2, 2025 18:06
@goanpeca goanpeca self-assigned this Dec 2, 2025
@goanpeca goanpeca marked this pull request as ready for review December 2, 2025 18:15
Copilot AI review requested due to automatic review settings December 2, 2025 18:15
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR implements a unified authentication system for the Datalayer platform, providing consistent authentication flows across TypeScript (browser/Node.js) and Python SDKs. The enhancement addresses issue #42 by introducing an AuthenticationManager class with multiple authentication strategies (token, credentials, storage, and OAuth).

Key Changes

  • Unified Authentication Architecture: Introduces AuthenticationManager classes in both TypeScript (src/client/auth/) and Python (datalayer_core/sdk/auth/) with strategy pattern for token, credentials, storage-based, and browser OAuth authentication
  • New Login Components: Adds Login and LoginToken React components with form validation, OAuth integration, and token input support
  • CLI Refactoring: Updates authentication commands (login, logout, whoami) to use the new SDK authentication manager instead of direct API calls
  • Dependency Updates: Adds authentication-related dependencies including keytar for secure token storage, new JupyterLab packages, and additional UI libraries

Reviewed changes

Copilot reviewed 38 out of 39 changed files in this pull request and generated 35 comments.

Show a summary per file
File Description
src/client/auth/*.ts New TypeScript authentication module with manager, strategies, storage backends, and types
src/components/auth/*.tsx New Login and LoginToken React components with form validation and OAuth support
datalayer_core/sdk/auth/*.py New Python authentication module mirroring TypeScript implementation
datalayer_core/cli/commands/authn.py Refactored CLI commands to use SDK authentication manager
package.json Added authentication dependencies (keytar, JupyterLab packages)
src/tools/adapters/agui/*.tsx Temporary placeholders for jupyter-react exports until available
pyproject.toml Added mypy overrides for tornado and chat handlers

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Member

@echarles echarles left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM Thx @goanpeca

@echarles echarles merged commit b8b8de6 into datalayer:main Dec 2, 2025
19 checks passed
@goanpeca goanpeca deleted the enh/unified-auth branch December 3, 2025 04:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Integrate login/logout worklfow using SDK to unify the login experience for users!

2 participants