Enable recommended addons by default, new "featured" tag - #2908
Enable recommended addons by default, new "featured" tag#2908WorldLanguages wants to merge 2 commits into
Conversation
Shluffy
left a comment
There was a problem hiding this comment.
Nice! I noticed more addons are now featured, more then the current recommended one, as well as enabling more addons by default
|
should we remove |
|
Please remove scratchr2 from The List. |
I think the opposite is better: automatically show the "Recommended" tag if an addon is enabled by default, unless it has the "Forum" tag (if we ever decide to enable a small forum addon, such as |
Addon groups are used to filter addons by status, the category menu on the left is for parts of Scratch they affect. I don't think they should be used interchangeably.
I agree - no theme should be enabled by default. |
|
Also, I don't think we want to enable folders or onion-skinning by default just because the internals are too hacky. (we can just let people open settings!) Not sure about progress-bar, as well. A bug in that code causes save failure and we don't want to risk that. |
Not only that - if an addon adds new UI and is enabled by default, it should clearly tell that the UI is added by Scratch Addons. I don't think that's even possible with the progress bar addon. |
Keep in mind this was only the case when we migrated away from Scratch Messaging Extension, and enabled features to old users, which might have even forgotten about the existence of Scratch Messaging Extension. Enabled by default will only affect new Scratch Addons users, which should notice the new buttons were added right after they installed the extension. |
I agree, but we have many forums addons that most of our users will never touch. I believe it's a good compromise. |
Not even for new users? Also, we aren't talking dark mode, which is personal preference. We're talking about a theme that makes the website UI consistent.
Good point. But I think it's easier to double check the code in those addons is safe and won't break the editor if stuff changes with new versions (stop addon > break editor). Writing very safe code will not only benefit users that got these addons enabled by default, but also users that enabled them manually previous to this. |
They won't notice, especially if they don't use the feature affected by the addon often. People often think our addons are Scratch features, even if they had to enable them manually.
The percentage of SA users that use the forums is likely higher than that of all Scratch users. We don't need to try to hide forum addons this much.
It's a very big change from Scratch's default appearance. I don't think anything that makes significant changes (as opposed to additions) should be enabled by default. |
|
@mxmou Can you list all the changes you'd make to this PR? |
For reasons explained in comments above, I would do the following:
Other suggestions:
|
Easier said than done... Only reasonable thing we can do is add HTML title attr that displays on hover, but that's probably not sufficient...
Does that really happen...? I think this is an overreaction 😕 |
Yes please. That "addon that does nothing" can be an easter egg.
Debugging addons are kinda laggy. Again, we should redirect users towards settings; not enable by default
Maybe?
It depends on what is considered an exploit. Is following myself an exploit? Is remixing my own project an exploit? If it's the sort of thing that needs to be hidden, it shouldn't have been addonified in the first place.
Maybe. That'll require updating the descriptions.
Ugh. Maybe we need to remove signature showing from
Nope, unless the bug that makes some extensions unable to be removed is fixed somewhere
Maybe, but there is no good way to tell it's SA.
Good idea. (@Hans5958 edits this. Please stop doing this.) |
Maybe not a month later, but not everyone uses all Scratch features frequently.
I don't think having it as a feature is a problem because it isn't harmful, but it might not work in the future. Adding a notice about that to those addons (and image uploader) might be a good idea too.
Which bug? Shouldn't it be mentioned in the addon description?
Featured doesn't mean enabled by default (but if we wanted to do that, it could show an explanation when you create a new sprite with the addon enabled for the first time to avoid confusion). It's just too useful to be under "Other". |
We are not sure if any of those things get patched or not. If we know they do, we'll just release an update.
scratchfoundation/scratch-vm#2331 - maybe we should mention that. Or the addon can fix the bug, similar to clone counter fixing negative clone count bug.
Hmm, then maybe? |
If these things get patches, long WIWOs might be truncated, images hosted in the forums using the image uploader might break ...
This won't happen if the user never interacts with the added extensions, and if they do, they would do the same if they added the extension manually. |
|
Can we have the minor tag already |
This PR will group addons by usefulness, not how big or small they are, which I think makes much more sense. |
I'm talking about minor as in functionality/usefulness. |
Other = minor. |
Then the name of the tag is fails to convey the real meaning of the tag, at least in my opinion. I thought other = those which can't be put in a specific category. |
|
lol I thought this PR would be more straight forward, polymatter was right, sometimes no democracy has good benefits :P |
The groups are "new", "enabled", "recommended", "featured", and "other" (in this order). I think it's obvious that "other" means "not featured", which isn't very different from "minor". |
If it were that much of a concern, there would be a warning in the addon settings. |
I was thinking that the "other" tag is for addons that are not suggested, but might be useful for select people, while "minor" is for small things that so minuscule, it's best to set it aside (such as that capitalization fix and Curator Links) |
|
I admit I did consider a "minor" tag, but I discarded the idea because I noticed it would be hard to translate the whole meaning of the word "minor" into Spanish :P |
|
I still think it would be best to have only the Recommended/enabled by default, Featured, and enabled addons on the main page, add a notice at the bottom, and put the rest of the addons in the sidebar categories. As we approach 100 addons, which we're probably not going to stop at, there are just too many addons for an "All" category to be useful. |
|
I'll turn this PR into a discussion for now, if you want to see it that way. These are the currently enabled by default addons, and they are enabled for everyone, including most Scratch Messaging users (except "developer tools", which was very recently enabled by default):
In order to enable more addons by default (and make it obvious that these historically enabled by default addons are not part of vanilla Scratch), we need to find a standard way of making it clear that part of the UI comes from Scratch Addons. Some ideas:
|
|
About indicating changes of Scratch Addons (without menu), can we just add the logo beside the text? |
|
It would be better-looking and less intrusive in the long run to add a "first-time" overlay. When an addon is affecting a page, the user hasn't seen that addon in effect yet, and the addon settings are still set to the default, a notice would pop up near the modified feature, highlight it, and say something like "Scratch Addons improved this page" which would then be followed by the title and/or description of the addon. It could also direct the user to the settings page to make additional changes. |
|
I've considered that, but it might be a little annoying and it would appear again if the user clears their storage. Modal like that would probably need "never tell me again" for those cases. |
|
I'll work on some way to remind the user a particular part of the UI is added by Scratch Addons, which should let us enable more addons by default in the future without having to worry about users thinking it's a vanilla Scratch feature. |
|
What happened to the "change enabled by default addons" part of this PR? |
A good way to indicate that they aren't Scratch features is needed first. |
|
We would also like to have a good onboarding when the user first installs the extension. A good onboarding would remove the need for enabling many addons by default, the user could simply click on the screenshot on what the addon does to enable it after install. I'd even say enabling some addons by default was a mistake. |
Yes. |

Resolves #2617
New!addon group toNew. Tag is still calledNew!. Allow translators to use plurals in languages that support it (example: Spanishrecomendadoswill be the addon group name, andrecomendadowill continue to be the tag).Note that addons that say "enabled by default" will only be enabled by default for new users.
- 2d-color-picker: others → featured (changes UI, cannot be recommended)
- account-settings-capitalize: easter egg → others (small addon)
- better-featured-project: recommended → featured (widely used, cannot be recommended)
- block-pallete-icons: others → featured (widely used)
- block-switching: enable by default (scratch 2.0 feature, was already recommended)
- cat-blocks: others → featured (widely used)
- clones: others → featured (widely used)
- color-picker: enable by default (useful, additive, was already recommended)
- confirm-actions: enable by default (only setting enabled by default is confirming sharing projects, others require optin)
- copy-message-link: enable by default (useful, additive, was already recommended)
- custom-block-shape: recommended → featured (used to achieve 2.0 looks, cannot be recommended)
- dark-www: recommended → featured (widely used, cannot be recommended)
- data-category-tweaks-v2: recommended → featured (scratch 2.0 feature, cannot be recommended)
- debugger: beta → featured (useful)
- drag-drop: enable by default (useful, additive, was already recommended)
- editor-colored-context-menus: others → featured (scratch 2.0 feature)
- editor-dark-mode: recommended → featured (widely used, cannot be recommended)
- editor-messages: recommended → featured (widely used, cannot be recommended because it might be annoying/distracting to the user)
- editor-searchable-dropdowns: enable by default (useful, additive, was already recommended)
- editor-stage-left: recommended → featured (scratch 2.0 feature, cannot be recommended)
- editor-stepping: others → featured (useful)
- editor-theme3: recommended → featured (used to achieve 2.0 looks, cannot be recommended)
- exact-count: recommended → featured (useful, cannot be recommended)
- expanding-search-bar: others → featured (useful, scratch wiki feature)
- feature-unshared: others → featured (useful, hacky)
- fix-pasted-scripts: enable by default (fixes vanilla Scratch bug, was already recommended)
- folders: enable by default (useful, additive, was already recommended)
- gamepad: recommended → featured (gamepad is niche, cannot be recommended)
- hide-flyout: recommended → featured (useful, widely used, cannot be recommended)
- infinite-scroll: others → featured (widely used)
- live-featured-project: others → featured (scratch 2.0 feature)
- longer-wiwo: others → featured (useful, hacky)
- mediarecorder: enable by default (we might to wait until we clean up the editor menu bar before turning this by default)
- more-links: others → featured (useful, cannot be recommended because of security issues)
- mouse-pos: recommended → featured (cannot be recommended, can be distracting)
- mute-project: enable by default (scratch 2.0 feature, was already recommended)
- onion-skinning: enable by default (useful, additive, was already recommended)
- pause: enable by default (useful, additive, widely used, was already recommended)
- progress-bar: enable by default (useful, additive, was already recommended)
- project-info: others → featured (scratch 2.0 feature)
- project-notes-tabs: others → featured (scratch 2.0 feature)
- redirect-mobile-forums: easter egg → forums
- remix-tree-button: others → featured (scratch 2.0 feature, might cause overflow)
- remove-sprite-confirm: recommended → featured (cannot be enabled by default, might be annoying)
- scratch-notifier: recommended → featured (cannot be enabled by default, annoying + permission issues)
- scratchr2: enable by default (not entirely 100% sure about this one, but I feel it makes sense to enable UI consistency by default)
- search-profile: enable by default (useful, additive, was already recommended)
- variable-manager: recommended → featured (technically additive, but adding a whole editor tab by default doesn't sound right)
New users will get this on the settings page after installing:

We could probably show the featured group as a grid, to incentivize users to enable them and show a screenshot of the addon in action.
If the user disables a recommended addon, the recommended addon group comes back.