Skip to content
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

[Feature Request] Collaborative/Access Control enhancement #1864

Open
jaschahuisman opened this issue May 8, 2024 · 3 comments
Open

[Feature Request] Collaborative/Access Control enhancement #1864

jaschahuisman opened this issue May 8, 2024 · 3 comments
Labels
enhancement New feature or request

Comments

@jaschahuisman
Copy link

jaschahuisman commented May 8, 2024

As discussed in issues #1735 and #1725, enhancing the collaborative capabilities of LangFlow can significantly improve user experience, particularly in team-based environments. This feature request outlines proposed improvements in authentication/role management, cross-account flow sharing, asynchronous updates, and flow version management.

Proposed Enhancements:

  1. Improved Authentication and Role Management:
  • Objective: Implement a more robust authentication system to support varying levels of user permissions.
  • Implementation:
    • Integrate OAuth2 with current authentication systems to enable more secure and flexible user management.
    • Develop roles such as Admin, Editor, and Viewer, each with different permissions regarding the creation, editing, and viewing of flows.
  1. Cross-Account Flow Sharing:
  • Objective: Enable users to share workflows across different accounts, enhancing collaborative efforts.
  • Implementation:
    • Create a sharing interface where users can invite others to access workflows by email or user ID.
    • Implement sharing permissions that allow users to set read-only or edit rights for each shared user.
  1. Asynchronous Updates and Notifications:
  • Objective: Allow users to receive updates on shared flows asynchronously, ensuring all collaborators are kept up-to-date.
  • Implementation:
    • Utilize WebSockets for real-time data transfer to enable live updates without requiring page refreshes.
    • Integrate a notification system that alerts users to changes or comments in shared flows.
  1. Flow Version Management:
  • Objective: Implement a version control system for flows to track changes over time and enable rollback to previous versions if needed.
  • Implementation:
    • Develop a version history feature that records each change made to a flow, along with the user who made the change and the time.
    • Provide an interface to view version history and revert to previous versions when necessary.
      Technical Considerations:

Ensure that all new features adhere to best practices in security and data privacy.
Consider the scalability of the solution to accommodate a growing number of users and workflows.

Impact:

These enhancements will streamline collaborative efforts, improve security, and make LangFlow a more robust tool for both individual users and teams. They will also address current limitations noted by users, fostering a more efficient and user-friendly environment.

@ogabrielluiz
Copy link
Contributor

Hey @jaschahuisman

These are awesome and some of them are in our (internal) roadmap.

We plan on using Casbin for the RBAC/ABAC.

Do you have the expertise for any of these? We can collaborate on them if you like.

@jaschahuisman
Copy link
Author

jaschahuisman commented May 9, 2024

No experience in Casbin here. Where can I find the roadmap? (curious 👀) @ogabrielluiz

@disdonline
Copy link

+1 on this.

"Utilize WebSockets for real-time data transfer to enable live updates without requiring page refreshes."

Would love this!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants