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

Redesign - EFY #1391

Open
dragos-efy opened this issue Sep 5, 2022 · 126 comments
Open

Redesign - EFY #1391

dragos-efy opened this issue Sep 5, 2022 · 126 comments

Comments

@dragos-efy
Copy link
Contributor

dragos-efy commented Sep 5, 2022

Here's the new Piped redesign! 🥳 It uses efy for customisation features and to help you theme it how you want. It's not just simple predetermined themes, you can actually create billions of patterns & themes yourself or import them from others.

You can track the current status of the features, ideas & bugs here. I'm also working on the documentation to make it easier for devs to understand the logic behind it and contribute. Any feedback or suggestions you have, please share them, I and other really cool people who I'm grateful for have been testing it, but bugs can still come up, therefore if you wanna share something, please do!

Live demo: https://efy.piped.pages.dev
Matrix room for questions and support specific to efy: https://matrix.to/#/#efy_ui:matrix.org

Features

  • simple by default, but very modular and customizable if you wanna theme it.

image

  • set your own layouts, colors, radius, gaps, layers, sizes, positions, sounds, visual filters, backgrounds, etc.
  • export themes as json or just add, edit, activate and delete them directly in the interface

Screenshot_20230101_155453

  • it has transparency too if your operating system allows it

piped-redesign-efy-2

Special thanks to: Bnyro, Kavin, Zucc (whatever.social), Diamond_AaronXG, IkelAtomig and other small or anonymous contributors, you guys rock! 🔥

@Bnyro Bnyro pinned this issue Sep 5, 2022
@Bnyro Bnyro mentioned this issue Sep 5, 2022
20 tasks
@Bnyro
Copy link
Member

Bnyro commented Sep 5, 2022

The code for it can be found at the efy branch if anyone is willing to test it locally or do anything else with the code :)

@FireMasterK
Copy link
Member

image
Bug: captions look oddly tiny, and have round edges!

@Senor-Ducky
Copy link

Bug: The search bar appears to be shrunk and not working right.
image

@dragos-efy
Copy link
Contributor Author

Bug: captions look oddly tiny, and have round edges!

On my list already! Thanks!

@dragos-efy
Copy link
Contributor Author

@Senor-Ducky It got broken after the last commit, it was okay before, but I think I identified the cause for the most part. Thank you! If you notice other bugs lmk

@dragos-efy
Copy link
Contributor Author

The live instance will likely have issues for a while, but the css code is fine, it's just needs to be split and distributed to vue components. Keep sending feedback, but keep in mind that there might be a difference between how unstable it seems to be and how stable it actually is

@davidcollini
Copy link
Contributor

image

The arrow seems to be too close to the word

@davidcollini
Copy link
Contributor

image

This happens with Trending too, also great job on the redesign, it looks and works really well

@dragos-efy
Copy link
Contributor Author

@IronMaltese Glad you like it! Your issue was on the list too, but having it here makes it easier to keep track of what I gotta do lol, so thanks!

@dragos-efy
Copy link
Contributor Author

Everyone and @Senor-Ducky , if you tried the live instance before the problem got fixed, try clearing your cache (CTRL+F5 on some browsers) or opening it in a private tab. And remember, if you need to clear, import or export your local storage or background images, go to Save & Restore in the efy menu. Things should be as stable as they were before + a few small issues that I'll be working on when I have time. Planning to fix all the issues mentioned here in the next 2-3 days or sooner. Enjoy & keep giving feedback! 🥳

@dragos-efy
Copy link
Contributor Author

Fixed all the issues above, refresh your cache if needed!

@martin-desktops
Copy link

Found a bug: while video details are loading the video player doesn’t have rounded corners for a short time.
BD54A6CD-2CD8-49AC-A9B1-18F2C30E5247

What a great job btw ^^

@martin-desktops
Copy link

Bug number 2.: the font used in the new design doesn’t support some polish letters what makes them looking out of place
33C110E9-EC89-4A7E-BA8D-7ED1B7C4135C

@martin-desktops
Copy link

And I hope the last one: active search input field doesn’t have rounded focus outline
509D02AB-AE5F-4647-93B2-828F2352AEDD

Tested on Safari, iOS 15.5

@IkelAtomig
Copy link
Contributor

IkelAtomig commented Sep 19, 2022

The Text is too big in 'Select a Playlist' modal. Would be better if it is smaller.

@IkelAtomig
Copy link
Contributor

image

Better to align these elements.

@IkelAtomig
Copy link
Contributor

  • [] Apply red colour, if video is tagged as Shorts and Black colour for Watched. As giving same colour to both often confuses.

@opl-
Copy link

opl- commented Sep 24, 2022

The animation which plays on click is extremely distracting. There should be a way to disable it.

@dragos-efy
Copy link
Contributor Author

@martin-desktops

active search input field doesn’t have rounded focus outline

fixed in the new update. I'll look into the rounded corners for the video and polish characters. Thanks for the feedback!!

@dragos-efy
Copy link
Contributor Author

@EdwardLangdon thanks again! I'll look into all of them. For the shorts tho, I think it could be the main colours rather than red, so that it fits with whatever colours the user chooses and instead of black, the variable for the background, like the time on the video, which can be black, white, chosen by the user etc. So basically kinda the same as your idea, but with custom colors

@dragos-efy
Copy link
Contributor Author

The animation which plays on click is extremely distracting. There should be a way to disable it.

Alright @opl- , I can add a new accessibility option for that then. I need to figure out how to implement it, but it should be fairly easy I think. Thank you!

To make sure I fully understand you, do you mean buttons or any animation related to clicks in general?

@opl-
Copy link

opl- commented Sep 28, 2022

The main thing for me was the scale down -> scale back up "pulse" animation playing whenever I clicked on any button, video or any other interactive element.

@dragos-efy
Copy link
Contributor Author

@opl- Alright, got you then

@dragos-efy
Copy link
Contributor Author

@opl- There will be a toggle inside efy sidebar > accessibility > animations in the next update. I made it work.

@martin-desktops
Copy link

Hello!

I am back with one new reflection: subtitles aren't legible in some cases right now. Sometimes there is no enough contrast between the light text and blurred video, as it is shown on the screenshot below.

My recommendation is to darken the blurred background.
image

@dragos-efy
Copy link
Contributor Author

@martin-desktops Thanks again! We're planning to make a module in the sidebar for captions, so that you can choose between multiple styles, like maybe (not decided yet), you can choose between background, no background and blurred. Right now I'm trying to solve issues that get the framework and redesign to a stable state and then things like captions or comments can become more modular and doing that should take less time. I'm pretty limited time wise by having to apply to jobs, which is why things have been slower, but I acknowledge the current problem with captions or other similar bugs, like the white flash on page load. Keep the feedback going when you need to! Will take care of this as soon as I can!

Btw, I can't replicate your bug with Polish characters, so please let me know how I can if it's still present.

@ghost
Copy link

ghost commented Oct 29, 2022

Just out of curiosity. Is https://piped.mha.fi the same redesign as this development thread ?

@julianfairfax
Copy link

It would be nice if there was a "follow the system theme" option for the theme

image

@dragos-efy
Copy link
Contributor Author

@julianfairfax makes sense. There's a problem tho, light & dark themes are usually not very customizable like with efy, which is why that concept works, cuz they don't have to consider transparency, potential background images etc, but in order to do something similar in efy I'd have to let the user store 2 different themes at the same time and based on the time of the day or browser's preference change the one or the other.

I could just toggle the light or dark mode, but if the user modifies the colors of the text and background for example, it can be kinda weird for the user to be switched back to the default or to see "broken colors", so I pretty much have to go with the approach mentioned above, because efy has billions of themes, not just 2 like normal frameworks.

Also, in efy you can import and export themes from efy sidebar > Backup > EFY Settings. What's cool about that is that you can also have different sounds settings, effects, colors, gaps, radius etc based on the file. So if you create a light and dark backup for each, you can technically just import the one you need quickly in 4-5 clicks, but you also get the benefit of configuring more stuff than just the colors.

I'll eventually add a feature to automatically load a saved configuration based on a trigger like time of the day or the browser's theme preference, but for now you gotta do it manually, cuz that will be complicated to implement and it will probably take a long time, considering that I have lots of projects and features to work on.

@dragos-efy
Copy link
Contributor Author

@eladkarako thanks for the detailed feedback. Yeah, I'm working right now on updating it to the latest Piped version, since it currently uses an older version. As for the cards and labels, I think it makes sense to put more emphasis on the checkboxes and labels than the container, as you said, so I'll look into that. The hover effect you did is interesting, but on touchscreen that won't work, unless using a pen, so the solution needs to cover fingers on touchscreen too, or a design that will let you know stuff without having to hover on it.

And for the part about lazy loading stuff it kinda makes sense to me, but I'm more in charge of design than that sort of stuff so maybe @FireMasterK or someone else would be better at understanding and deciding on that, since I think it applies to Piped in general, rather than efy or design specificially.

Anyway, I'm gonna first release the latest Piped + latest efy to make sure that stuff is up to date and then I'll work on issues and features. Yours is medium priority I think, there's higher priority ones to deal with first, but I'll get to it as soon as my time allows it. Thanks again and if you have more input, feel free to share it!

@dragos-efy
Copy link
Contributor Author

New update is live at efy.piped.pages.dev 🥳 I fixed some of your issues too, but it's more of a maintanance and compatibility update + loads of efficiency improvements and efy features, so expect the newer updates to have more features and bug fixes. Keep the feedback coming, it's been very useful. We also talk, do polls etc on the matrix room from time to time. Enjoy!

@Donty10
Copy link

Donty10 commented Sep 15, 2023

Not sure if this is the right place to ask, but how are you meant to install this? I had done it previously by building the docker image from the repo, but now I am getting errors. Is there a pre-built image anywhere that I can use?

@unstablemaple
Copy link

unstablemaple commented Sep 16, 2023

I as well can't build a docker image for piped-efy. I get this error:

10.41 Error: No ESLint configuration found in /app/src.
10.41     at CascadingConfigArrayFactory._finalizeConfigArray (/app/node_modules/.pnpm/@eslint+eslintrc@2.1.2/node_modules/@eslint/eslintrc/dist/eslintrc.cjs:3989:19)
10.41     at CascadingConfigArrayFactory.getConfigArrayForFile (/app/node_modules/.pnpm/@eslint+eslintrc@2.1.2/node_modules/@eslint/eslintrc/dist/eslintrc.cjs:3780:21)
10.41     at CLIEngine.isPathIgnored (/app/node_modules/.pnpm/eslint@8.48.0/node_modules/eslint/lib/cli-engine/cli-engine.js:1000:18)
10.41     at ESLint.isPathIgnored (/app/node_modules/.pnpm/eslint@8.48.0/node_modules/eslint/lib/eslint/eslint.js:681:26)
10.41     at Object.transform (/app/node_modules/.pnpm/vite-plugin-eslint@1.8.1_eslint@8.48.0_vite@4.4.9/node_modules/vite-plugin-eslint/dist/index.js:1:2348)
10.41     at file:///app/node_modules/.pnpm/rollup@3.28.1/node_modules/rollup/dist/es/shared/node-entry.js:25461:40
10.43  ELIFECYCLE  Command failed with exit code 1. 

ERROR: failed to solve: process "/bin/sh -c pnpm install --prefer-offline &&     pnpm build && ./localizefonts.sh" did not complete successfully: exit code: 1 ```

@dragos-efy
Copy link
Contributor Author

@Donty10 @unstablemaple Thanks guys for letting us know, I don't know docker, so maybe @FireMasterK can give more insight? (if you have time)

@Donty10
Copy link

Donty10 commented Sep 16, 2023

Any update on this? Did you find a workaround?

@IkelAtomig
Copy link
Contributor

Really good work, dragos. The feed is now good and display 5 videos in a row as in original. Much appreciated for that as it is much needed. For piped style, It would be lot better if it enters beta stage.

@dragos-efy
Copy link
Contributor Author

Thanks! I'll add some new stuff specific to Piped soon. Also noticed a few small bugs I gotta fix, but yeah, overall it's getting pretty stable except for the piped section in the menu (which will have some of the new stuff)

@BarbzYHOOL
Copy link

can we edit the theme as simple user or only if you host your own piped?

Also, I wanted to create a new issue but the default dark theme is hard on the eyes. The github dark theme is better for example.
You can use this application on linux "Kontrast" that helps to find good contrast. Actually it's too dark with white text

@dragos-efy
Copy link
Contributor Author

@BarbzYHOOL Yeah, efy (the UI framework it uses) is very customizable for the user, you can create billions of designs, just click / tap on the sidebar menu button from the top right corner (3 horizontal lines like this: ) and under theme you should see options for colors, including buttons, text, border, background, shadows etc. Kinda funny you asked that, since that's what it focuses on, but maybe you haven't tried the menu yet haha.

In fact, if you like the github theme, you can probably paste the colors they have into efy, change the radius, borders etc and it will look similar. And not only that, but if someome else wants the same, you can share the file with them.

You can also export a theme as json from efy menu > backup > EFY Settings > save and edit the json in a text editor, then when you're done you import it, so you can do it visually or in a text editor, both ways work, as long as you use the right values (which I will create documentation for in the future).

Just keep in mind to backup your theme, cuz this Piped instance is not fully stable yet and soon I will push a breaking update.

@BarbzYHOOL
Copy link

BarbzYHOOL commented Oct 9, 2023

I am using public Piped instances and there is no such option example here https://piped.lunar.icu/ or https://piped.video/preferences
can only change to dark or white theme

Is it because they haven't updated?

Edit: ok it's not in the source code, I thought it was because it's an issue and not a Pull Request ^

@dragos-efy
Copy link
Contributor Author

@BarbzYHOOL those instances don't use efy, that's why, there's 3-4 afaik, but the most up to date one is efy.piped.pages.dev, so I'd recommend that one. As for the source code, you can see it on the efy branch of Piped. It's not part of the main branch yet to smooth out issues, stability etc before making it official. It's still in the experimental phase if that makes sense.

@BarbzYHOOL
Copy link

@BarbzYHOOL those instances don't use efy, that's why, there's 3-4 afaik, but the most up to date one is efy.piped.pages.dev, so I'd recommend that one. As for the source code, you can see it on the efy branch of Piped. It's not part of the main branch yet to smooth out issues, stability etc before making it official. It's still in the experimental phase if that makes sense.

thanks, should i only use this piped instance for testing?

PS: the piped instance i'm using has trouble loading videos, kinda annoying, i hope it's just the instance, i'm new to it

@dragos-efy
Copy link
Contributor Author

@BarbzYHOOL you can use other ones too, but you're not guaranteed to have the latest version, so for that, yeah, that instance is the most recommended and "official" haha.

For loading videos, Youtube bans IPs or changes its structure constantly, which we're not fully in control, change the backend instance from settings when you notice that until you find one that works. You can keep the same frontend, you just gotta change the backend basically. But that's related to Piped in general, not this instance.

Anyway, let me know how it goes with theming if you have thoughts you wanna share, since this thread is for that. You can also ask efy questions in the efy room or Piped questions in the Piped room depending on what the questions are related to.

@BarbzYHOOL
Copy link

one of the theme setting ends up like this, and then you cannot fnd the menu button back

image

@dragos-efy
Copy link
Contributor Author

@BarbzYHOOL it's cuz either your browser and desktop environment doesn't support window transparency or you need a transparent gtk / qt theme. It's explained on the question mark alongside. You can use transparency on any device tho if you add your own images from the add file button, which in the next version will be changed with something like this:

image

And in case it's not clear, transparent windows look like this (ignore the red line, I'm too lazy to take a new screenshot lol):

image

while background images with transparency or layers like this:

image

The window addresses what's behind it, while the background what's above it.

@kzhe2059
Copy link

kzhe2059 commented Dec 4, 2023

Major bug: all images disappear when I log in.

Without logging in on smnz.de, I see this.
Screenshot from 2023-12-04 18-45-31
After log in, I see this.
Screenshot from 2023-12-04 18-46-43

@dragos-efy
Copy link
Contributor Author

@kzhe2059 Thanks for the feedback! For me it works fine on other instances than smnz.de, so it doesn't seem to be an issue related to the efy instance, because on piped.video for example it does the same, so I'd suggest you to switch the instance or contact the instance owner if they're okay with that

@kzhe2059
Copy link

Is there any way to use a custom instance on the new UI?

@dragos-efy
Copy link
Contributor Author

@kzhe2059 If you mean changing the backend instance, then go to settings > instance. The custom authentication instance is below as well.

custom_instance

@kzhe2059
Copy link

Yes, but you can only choose from the list, not input custom url for the api and such

@Reinachan
Copy link

I figure this is where feedback on the redesign goes?

Why is everything in video cards styled like buttons? This feels really excessive and makes it really unclear what is or isn't a button within the UI.
screenshot of a video card

I'd suggest going back to the style used in old Piped for this. Like, you can put it all into a card (though I personally prefer it it isn't), but the way the items within were laid out in old Piped worked. Changing this feels like change for the sake of change.
screenshot of the same video but in old piped

The old video preview layout actually worked so well that when YouTube changed it, I coincidentally userstyled it to look almost the same as Piped before I even knew of Piped xD

I can understand making some changes for the sake of improving usability on touch devices. But I'd suggest at least de-buttonify the stats and the channel name and move the stats back under the channel name again. Also please move the timestamp back up to the thumbnail.

Other than that, having the search bar and every kind of card and input change its scale when you click on them is fairly distracting. It can make sense for buttons but I wouldn't use it for everything. It makes interacting with the customisation options in the sidebar really whack too.

@dragos-efy
Copy link
Contributor Author

Hey @Reinachan! Yeah, it's the right place.

  1. Card layout - there will be multiple layouts... so we'll technically have the new and old one as well, chosen by the user from the menu. Also the reason I went with this new approach is to allow users to choose what to show or hide (time, views, add to playlist, audio version, time ago, etc) and to also have a more "breathable" design that makes it easier to spot information. But yeah, no worries, you'll be able to switch to the other layout too and whatever layout you like, both should be customizable. It's more of a problem of time, since I was very busy with lots of projects, work, finding jobs, life etc, and while I prefer the new layout personally, I agree with your points as well, especially cuz other people from the community brought this up as well, so expect this stuff to be added when I have time.

  2. Click animation - I agree, in the future you'll be able to turn it on / off, also individually by type (buttons, inputs, etc), in a similar way where now for example you can change the speed. Which speaking of... when it's 0, it completely turns off all of them in newer efy versions (already implemented), but Piped didn't get that update yet.

  3. "Userstyling" YT - that's pretty cool, before working directly on Piped I also injected css and js on my own browser, and before that for youtube as well lol. So I understand your mindset perfectly, which is why I made the efy integration with Piped so customizable... to allow nerds like us to do wild stuff, with or without coding, directly from the app, and that's the main priority, giving more power to the user.

Thanks for the feedback, feel free to give me more whenever you feel the need to, it helps me and the community overall have a better experience! Just keep in mind that my time for Piped is limited currently cuz of other priorities, but soon I'll work on more stuff

@dragos-efy
Copy link
Contributor Author

@kzhe2059 that's not related to efy then... cuz the official piped doesn't have that feature either, so I guess maybe talk to the main devs about it IF THEY LIKE THE IDEA, else it won't be added in the efy version either, since I'd have to rely on the defaults, which I'm not responsible for.

@Imzxhir
Copy link

Imzxhir commented Mar 25, 2024

Hello! I noticed that there is no share video button. Is that planned to be added?

@dragos-efy
Copy link
Contributor Author

@Imzxhir yes, it's a bug I'll fix soon, it should be easy, it annoys me too, as someone who copies links a lot haha

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