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] - Share public link to database and reviews #373

Closed
LnLcFlx opened this issue Sep 28, 2023 · 26 comments
Closed

[FEATURE REQUEST] - Share public link to database and reviews #373

LnLcFlx opened this issue Sep 28, 2023 · 26 comments

Comments

@LnLcFlx
Copy link

LnLcFlx commented Sep 28, 2023

It would be useful to be able to share parts of your database using a read-only public link.
This could include

  • single reviews
  • movies on your watchlist or in other collections
  • all watched movies (with or w/o ratings)
  • your whole database

This way you can quickly (and temporarily) share your opinion on a movie with friends or let them know what movies you have already seen.
One could also add this or similar functionality to the Profile Settings so that you could specify information other users on the instance can see about you.

@IgnisDa
Copy link
Owner

IgnisDa commented Sep 28, 2023

What do you mean by sharing the whole database?

@LnLcFlx
Copy link
Author

LnLcFlx commented Sep 28, 2023

Basically sharing all the media you have watched (movies, shows,...)

@SiskoUrso
Copy link

Would be a great feature to have, in fact I didn't realize that it was all login based only and there was no public data that was viewable until after I had it fully setup. I still like having the tracking but agree with the OP here that having a way to have a public view of your tracker would be great.

@IgnisDa
Copy link
Owner

IgnisDa commented Sep 29, 2023

I would appreciate if you could post a list of what all would like to be shareable.

BTW, public collections can already be shared by their links.

@SiskoUrso
Copy link

Sure thats no problem. I was expecting the whole profile to have a public view to it going in . But to list some of the things I would like to be public most of all:

From Media:

  • Movies
  • Shows
  • People
  • Groups
  • Collections
  • The summary from the home page
  • The In progress from the home page

Pretty much the whole profile view to be public , I thought going it it would be like that and then have login for admin functions and whatnot.

Thanks for your time

@IgnisDa
Copy link
Owner

IgnisDa commented Oct 31, 2023

Notes to self:

This will need to be implemented in multiple steps:

  • Convert the frontend from static to a SSR (Remix) application: Server side frontend #134.
  • Analyze whether everything should be SSR or just the user agnostic data.

@IgnisDa
Copy link
Owner

IgnisDa commented Oct 31, 2023

@SiskoUrso @LnLcFlx I suspect that if I implement this change the docker image size will go from 45Mb to >700Mb and memory consumption would increase from 20Mb to 60Mb. Both are estimates.

Is this acceptable? One of the key features of Ryot is that it is lightweight. This change will certainly make things heavier.

@LnLcFlx
Copy link
Author

LnLcFlx commented Oct 31, 2023

Personally, I like to regarded Ryot as a potential selfhosted alternative to services like Trakt or letterboxd.
While this is probably not the official use case, features like reviews would make it suitable for that purpose.

In this context this suggested feature would be quite important IMO.

If the importance of being lightweight outweighs (no pun intended) the usecase as a semi-social platform for sharing ones tracked stuff with others, then it might not be worth it.

Speaking for myself, I would definately download the larger image and do not see it as a problem.
Is there really no way to make it less space consuming though?

@IgnisDa
Copy link
Owner

IgnisDa commented Oct 31, 2023

Is there really no way to make it less space consuming though?

The front-end is a CSR application directly embedded in the binary. That makes authentication challenging. There's another's way that ik might work using the current infrastructure but I've never been able to get it working before with my other projects so idk about it's viability.

@MikeBishop
Copy link

I'd envision being able to share a link to "What I read in 2023," and people with the link could then see my ratings and maybe click through to some public info about the item (IMDB, Open Library, etc.).

@IgnisDa
Copy link
Owner

IgnisDa commented Dec 31, 2023

Yep I plan to start working on this as soon as I am able to merge the 3 open PRs.

@IgnisDa
Copy link
Owner

IgnisDa commented Mar 15, 2024

Notes to self:

  • one way to do this will be to allow users to share a url with a unique string. When an unauthenticated user lands on this url, a read-only auth token will be generated for the user (who shared the link). This will enable us to reuse the existing frontend auth behaviour. However I'll have to add some additional infrastructure in the front-end and backend to prevent mutations using this token.

@IgnisDa IgnisDa changed the title [Suggestion] Share public link to database and reviews [FEATURE REQUEST] - Share public link to database and reviews May 11, 2024
@IgnisDa
Copy link
Owner

IgnisDa commented Jul 10, 2024

@LnLcFlx I plan to achieve this using the JWT payload. But one problem that this will have that permissions associated with a shared url will not be able to be changed once someone has used it. Neither can it be revoked.

Is this fine?

@LnLcFlx
Copy link
Author

LnLcFlx commented Jul 10, 2024

I think at least revoking a shared URL is a must.

I can't really comment on the sensibility of JWT for this usecase though, because I'm completely new to the concept.
A third opinion would be good.

I'm really excited to see this feature getting worked on :)

@IgnisDa
Copy link
Owner

IgnisDa commented Jul 10, 2024

True. Revoking is an important feature. Will look into what the best way to implement this might be then.

I do feel obligated to tell you though, I'd release this as part of Ryot pro since this will require significant effort on my part, regardless of what technology i use.

@LnLcFlx
Copy link
Author

LnLcFlx commented Jul 10, 2024

Thanks for being transparent.
This is your decision to make ofc and I get it.
It's a bummer though because with the current pricing plans I don't see myself buying Pro unfortunately.

What I wanted to ask on another occasion as well:
How are the Pro features developed?
Are they closed source?
This might even be a bigger hindrance for me.

@IgnisDa
Copy link
Owner

IgnisDa commented Jul 10, 2024

It's a bummer though because with the current pricing plans I don't see myself buying Pro unfortunately.

I suggest you join the discord since the prices have already been changed. The website is not updated. Moreover I can provide you with a discount.

How are the Pro features developed? Are they closed source?

Yes. I have a separate private repo.

@IgnisDa IgnisDa closed this as completed Jul 15, 2024
@IgnisDa
Copy link
Owner

IgnisDa commented Jul 15, 2024

This was released as part of the pro offering. If you would like to try it out/want a discount, please contact me on Discord.

@Ardakilic
Copy link

@IgnisDa hello, is there a demo of this public showcase feature of pro hosted somewhere? I tried checking ryot.io, but I was unsuccessful.

@IgnisDa
Copy link
Owner

IgnisDa commented Aug 27, 2024

@Ardakilic Yes, here's the link: https://pro.ryot.io/_s/acl_vUMPnPirkHlT.

@Ardakilic
Copy link

@IgnisDa when I click it it automatically logs me in to the dashboard, even with a mark as visitor. and I could alter a status of the content as a guest:

For example:

image

I want them to be read-only for the public eye, so no public visitor could alter the status.

image

image

@IgnisDa
Copy link
Owner

IgnisDa commented Aug 28, 2024

@Ardakilic Yes I have specifically allowed that link to allow mutations. Here is another one which does not:
image

(This one does not say "Mutation allowed")

https://pro.ryot.io/_s/acl_VtAWvs7NmrBz

This is the demo account so allowing anonymous users to make mutations is fine. But by default links do not have mutation access.

@Ardakilic
Copy link

Awesome, thank you for the detail @IgnisDa

image

This happens when I try to change status, cool!

One final question, just simply wondering: Could this be done via a global setting, in a way, where a guest navigates to the domain (like simply clicking https://pro.ryot.io or for example https://pro.ryot.io/username ) and it opens just like the last link you shared ?

@IgnisDa
Copy link
Owner

IgnisDa commented Aug 28, 2024

Could you create a separate issue for that? I'd like to discuss it further.

@Ardakilic
Copy link

Of course, will do! Thanks again for the interest!

@Ardakilic
Copy link

@IgnisDa done, #986 thanks again!

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

5 participants