v1.0.0 Roadmap #1614
Replies: 9 comments 10 replies
-
Thanks for the hard work. Is there a more detailed todo list for people who want to contribute to this effort? |
Beta Was this translation helpful? Give feedback.
-
This all sounds amazing 👏 Cheers to making such a thorough plan and communicating it so well. |
Beta Was this translation helpful? Give feedback.
-
Great initiative, thanks. When it comes to style imports from within the components I have written down some thoughts in #1496 (comment). |
Beta Was this translation helpful? Give feedback.
-
Awesome! One thing I'd like to add (which is a breaking change because it requires a higher minimum Svelte version) is to switch to using |
Beta Was this translation helpful? Give feedback.
-
Thank you for the excellent write-up and all the work! The roadmap addresses all the major pain points I have encountered with |
Beta Was this translation helpful? Give feedback.
-
Amazing! Thanks for the hard work! Looking forward to see v1 release! Btw, any plan for drag & drop functional for components would be great. |
Beta Was this translation helpful? Give feedback.
-
Regarding the line item:
The line includes a disclaimer that there is some research to be done but do you have some early concept of what you want to target or improve? I happen to be using the Popover component so am interested in its future. |
Beta Was this translation helpful? Give feedback.
-
Hi @theetrain May I check on the progress of "SvelteKit support"? And also the SSR enhancement is the most important for SEO to spread more website project with Svelte Carbon. |
Beta Was this translation helpful? Give feedback.
-
There's a new discussion up detailing our prerelease plan for integrating Carbon v11 CSS: #1872 |
Beta Was this translation helpful? Give feedback.
-
Carbon, as you know it, is an open design system funded and built by IBM. It follows a set of guiding principles to help steer it into being a fantastic option for building user interfaces.
carbon-components-svelte is a community-maintained UI library that builds on top of the terrific designs and user research backing the core Carbon design system, but for Svelte teams and developers. At the time of this writing, carbon-components-svelte is being built by contributors like you, and maintained part-time by non-IBM employees: @metonym and @theetrain.
v1.0.0 Goals
As a community-led project built with Svelte, we want to achieve the following goals with carbon-components-svelte v1.0.0:
Now let’s highlight some of those upcoming changes:
Styling improvements
Carbon v11
Arguably the biggest change will be adopting Carbon v11 SCSS styles. We’ll strive to improve the consumption workflow of carbon-components-svelte by including SCSS styles needed by components as they are imported; that way you won’t have to import corresponding component styles separately each time. As a consequence, Svelte projects consuming carbon-components-svelte will need to include SCSS preprocessors. To help with SCSS integrations and initial setup, we would like to create a svelte-add tool for carbon-components-svelte.
Theming will be achievable with SCSS variables, and corresponding documentation will be provided.
Managed layouts
When consuming common components such as UIShell and Form, it’s sometimes a bit of extra work to consult the correct spacing tokens for in-page elements. For this, we are looking to provide a ‘managed’ stylesheet that you can import once to provide sensible default spacing between all elements that you can easily override. Depending on scope, this may be implemented after the launch of carbon-components-svelte v1.0.0.
SvelteKit support
Within our documentation, we will provide a ‘getting started with SvelteKit’ section because we believe the majority of carbon-components-svelte users will use SvelteKit when building applications, and we want to provide common patterns that comply with Carbon designs to get you up and running with little decision work.
Progressive Enhancement
The majority of Carbon components only work with JS, but what if JS isn’t available to end users? Components such as Tabs and DataTable will expose props that allow you to pass an
href
prop or form actions, allowing your application to remain interactive even when JS is disabled or if hydration fails. This will be particularly useful when developing with SvelteKit.How will we get there?
Carbon-components-svelte will graduate to v1.0.0 once the following items are complete:
Are there anticipated breaking changes?
Yes, as we make incremental releases before 1.0.0, the following functionality will likely break:
all.css
will be removed.As always, we recommend referencing the changelog and review breaking changes before making upgrades. You can also subscribe to release notifications by toggling the “watch > custom > releases” option above in this repository.
To help with migration and setup, we will provide scripts to make it easier to add carbon-components-svelte to your projects.
What happens after v1.0.0?
After carbon-components-svelte@v1.0.0 releases, we will commit to a semantic-versioned package with a preference to deprecate and continue maintaining legacy features for a few months before eventually dropping them as necessary breaking changes are released. The timing and necessity of these breaking changes may coincide with breaking changes in Carbon, Svelte, SvelteKit, or Node.js.
What is out of scope?
The following artifacts will have separate roadmaps and discussions:
<img />
.Please offer your feedback and suggestions to this discussion!
Beta Was this translation helpful? Give feedback.
All reactions