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

Rename 'adders' to 'extensions' #82

Open
Rich-Harris opened this issue Oct 10, 2024 · 12 comments
Open

Rename 'adders' to 'extensions' #82

Rich-Harris opened this issue Oct 10, 2024 · 12 comments

Comments

@Rich-Harris
Copy link
Member

An adder is a type of snake. More generously, it's a thing that adds, not the thing being added.

'Plugins' is probably the right name, since it can cover both integrations with external libraries and things that affect the behaviour of an app without relying on libraries (like, idk, adding some logging middleware), which may become more relevant if we add plugin hooks to SvelteKit in future

@benmccann
Copy link
Member

Adders are the things that add. Where do you see it used otherwise?

Plugins doesn't feel right to me at all. Integrations is probably fine

@Rich-Harris
Copy link
Member Author

sv add is the adder (the thing doing the adding). The things we currently call 'adders' are the things being added. It's backwards.

'Integrations' is a more neutral/less scary word than 'plugins' but there are cases where it doesn't really make sense. If I sv add something that creates a robots.txt but doesn't install anything or even run any code inside my app then what am I 'integrating'?

Open to a secret third option if you have any good ideas. It just can't be 'adders'.

@benmccann
Copy link
Member

The things we currently call 'adders' are the things being added.

What we call adders are the code that's executed when you run sv add that sets up whatever integration you want. I'm still not sure where you're seeing adder used in a way that's different than that

@Rich-Harris
Copy link
Member Author

Just in a grammatical sense, in sv add <blank>, sv is the subject, add is the verb, and <blank> is the object. So while you can squint at the implementation and say that actually the <blank> is the thing that's modifying the package.json and whatnot (if you gloss over the fact that in fact it isn't, it's telling sv add to) it still doesn't make sense linguistically.

Put another way: you can imagine a YouTuber saying any of these...

  • 'so now I'm going to set up the Tailwind integration'
  • 'so now I'm going to set up the Tailwind plugin'
  • 'so now I'm going to set up Tailwind'

but not 'so now I'm going to set up the Tailwind adder'. It just sounds weird!

Prior art: astro add <integration>. Though they take the concept of integrations to another level by having them be installed packages that you can later upgrade, which has definite pros and cons.

@benmccann
Copy link
Member

I don't think we're really disagreeing.

I just noticed a couple places in #71 where it said "install adders", which I completely agree is awkward and wrong. I've updated those to remove that language.

There's a header that says "Official adders" and "Community adders", which is arguably debatable, but I would be totally fine changing those to "Official integrations" and "Community integrations".

There's also a bunch of places where we're talking to developers of community adders. E.g. we have a https://github.com/sveltejs/cli/tree/main/community-adder-template. I think those usages are more acceptable as we're talking about the code that's actually doing the adding. Are you okay with those or are you suggesting they should be changed as well?

@Rich-Harris
Copy link
Member Author

I'm suggesting we nuke 'adder' from orbit, it's not a real word. I mean it's in the dictionary but it's not, like, a word word

@benmccann
Copy link
Member

Where's your sense of fun? I always thought it'd be enjoyable to be Dr. Seuss 😆

Users are probably going to be searching for "integrations", so from that standpoint it'd help with discoverability.

I think "plugins" could be confusing - e.g. part of running add tailwind is setting up various Tailwind plugins within the integration.

There's tons of code references to adder and I'm less enthused about changing those than changing how we talk about it publicly

@Rich-Harris
Copy link
Member Author

We can change the code references at the same time as we get rid of all the camelCase

@manuel3108
Copy link
Member

I think "plugins" could be confusing - e.g. part of running add tailwind is setting up various Tailwind plugins within the integration.

Agree, I can align with integrations, plugins has a different meaning for me aswell

@manuel3108 manuel3108 changed the title Rename 'adders' to 'plugins' or 'integrations' Rename 'adders' to 'integrations' Oct 11, 2024
@benmccann
Copy link
Member

One thing that I think is somewhat confusing about integrations compared to adders is that it's an overloaded term. E.g. how do we refer to these integrations vs what's listed at https://www.sveltesociety.dev/packages?category=integrations?

I liked that Adder very clearly referred to a specific thing and the more I think about it the less I want to lose that. Maybe we could call these Svelte Enhancements added by running Svelte Enhancers?

@Rich-Harris
Copy link
Member Author

What about 'extension'? sv add <extension> makes sense and is neutral

@manuel3108
Copy link
Member

extensions does make a lot of sense to me, because that's what it is

@Rich-Harris Rich-Harris changed the title Rename 'adders' to 'integrations' Rename 'adders' to 'extensions' Oct 13, 2024
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

3 participants