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

Planned features #35

Closed
SebastianStehle opened this issue Sep 29, 2023 · 5 comments
Closed

Planned features #35

SebastianStehle opened this issue Sep 29, 2023 · 5 comments
Assignees

Comments

@SebastianStehle
Copy link
Collaborator

Nice project.

What is your planned scope? Are you also planning to publish ready to use packages for signalr or something that can easily be integrated into the server? Do you need help?

I am planning to integrate it into https://github.com/squidex/squidex

@LSViana
Copy link
Collaborator

LSViana commented Sep 30, 2023

Hi, @SebastianStehle!

Thanks for your interest in the project, it's nice to see that! First, I'd like to highlight that I'm working on this as a secondary project so the rhythm of development & maintenance is currently slower than I'd like it to be.

What is your planned scope?

The long-term plans for the project are to support all features exposed by Yrs and make them available on C#. Currently, only the "core" features of the library have been implemented.

I'm currently working on:

The roadmap for this project is available in the YDotNet Implementation board. If you're interested in something specific that's not been added there, please let me know.


Are you also planning to publish ready to use packages for signalr or something that can easily be integrated into the server?

Yes, definitely! I intend to publish NuGet packages to allow C# code to connect with other Yjs clients through networks. I can't tell you exactly right now but I believe the first network provider will be for WebSockets (so that web apps can use the y-websocket, for example). Would this fit for your use case?


Do you need help?

Yes! Right now it'd be nice to get some help for either one of these tasks:

If you're available to contribute, feel free to make a fork and submit a PR.

@SebastianStehle
Copy link
Collaborator Author

Yes, definitely! I intend to publish NuGet packages to allow C# code to connect with other Yjs clients through networks. I can't tell you exactly right now but I believe the first network provider will be for WebSockets (so that web apps can use the y-websocket, for example). Would this fit for your use case?

Yes, I am not biased here. But then you have to solve a few topics, that are already handled by signalr, such as scaling and a backplane. Should not be too complicated.

@SebastianStehle
Copy link
Collaborator Author

Would you explain me the motivation of this project versus ycs and why are you not creating a wrapper over yrs (https://github.com/y-crdt/y-crdt). Seems to have the best performance at the moment.

@LSViana
Copy link
Collaborator

LSViana commented Oct 1, 2023

Hi, @SebastianStehle!

Let me answer your questions in parts to explain each part clearly:

(...) why are you not creating a wrapper over yrs (...)

This project is a wrapper over Yrs. It exposes C# bindings that calls into Rust code.

Would you explain me the motivation of this project versus ycs (...)

The Ycs project original author no longer maintains it and the codebase is too large to be kept up-to-date.

Besides that, since there's a central Rust implementation now, it doesn't make sense to keep Ycs anymore because the effort to maintain two codebases with the same features over time would be too big.

Yes, I am not biased here. But then you have to solve a few topics, that are already handled by signalr, such as scaling and a backplane. Should not be too complicated.

Sure, this will all be taken into consideration when the time comes. I'll add it to the list of future plans for the project.


If you'd like to know anything else, please let me know.

@LSViana
Copy link
Collaborator

LSViana commented Oct 2, 2023

@SebastianStehle If there's nothing else to add here, feel free to close this thread or I'll close it myself within a couple of days.

@LSViana LSViana self-assigned this Oct 4, 2023
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

No branches or pull requests

2 participants