Introducing a vscode extension for vanilla css framework

Introducing a VSCode extension for Vanilla CSS Framework

The Vanilla CSS Framework is a utility class-based and customizable SASS library that is the go-to when it comes to styling websites and dashboards across the majority of projects at Canonical. Knowing all the class utilities could be tricky. That’s why we make sure that our documentation is up-to-date and accessible as much as possible.

We developed a VSCode extension that enhances the developer experience when using Vanilla, hoping to improve the developer’s experience and productivity while working with Vanilla.

The project had its start a year ago during a hackathon,

Sponsored
and the MVP provided us some ideas about developing VSCode extensions, parsing SASS projects and providing auto-completion. Later, we refactored the project and rewrote some parts to make the extension lightweight and more complete!

Class utilities auto-completion for HTML

The extension now provides auto-completion for HTML, React and Django templates files with a complete list of usable classes based on the installed Vanilla found in node_modules :

Class utilities auto-completion in vscode

Vanilla code snippets

Vanilla provides a complete list of examples for the different components and layouts. We’ve added those examples as code snippets that you can import using the command palette Vanilla Framework: insert a snippet:

Sponsored
Popup to select the code snippet to insert in vscode

SASS variables

The Vanilla Framework uses SASS variables as a way to make the project readable and customizable. The VSCode extension also provides the complete list of available variable to use and override while writing custom SASS:

Sass variables auto-completion in vscode

Conclusion

Version 1.0.0 of the Vanilla Framework Intellisense extension is available now on the VSCode store.

Also, come and join the Web and Design Team if you are excited about this kind of project and more!

Comments

No comments yet. Why don’t you start the discussion?

    Leave a Reply