Creating new components

This codebase includes a folder and file creation tool.

It allows you to quickly create all the required files to make a component -- it gives you the option to create am element, block, or container.

Tip: also consult the guidelines for the naming of things and coding standards.

  1. Install the vf-component-generator package
    • yarn add @visual-framework/vf-component-generator --dev
  2. Install Yeoman
    • If you've come this far and you don't have yo, you should be able to install it with yarn global add yo@latest
    • If you get stuck, see the official install guide
  3. Create a new component
  4. Maintain a CHANGELOG.md
    • Add a line of what is new in your component.
    • Use sentence styling.
    • Keep your notes, short and punchy.
    • End your sentences with periods.
      • https://github.com/visual-framework/vf-core/issues/1286
    • Link to any related issues or discussions, such as the above.
  5. Add the @import 'vf-your-component.scss'; to /assets/scss/styles.scss.
  6. Developing your component
  7. Sharing you component back

See also


In this section

Browser support

We focus support on major browsers in use by 95%+ of our audiences, and we ensure the site is navigable and usable by the remaining 5%.

About components and patterns

Think of components as lego blocks you can use to build the look and content of your sites. Think of patterns as assembled packages of behaviour.

Creating new components

This codebase includes a folder and file creation tool.

Sass and CSS guidelines

The Visual Framework delivers much of its value through Sass.

Discussions, exchanges and help

Regardless of where, we welcome contribution, ideas and constructive criticism.

Image handling best practice

It's best to not let CSS do the image cropping.

JavaScript guidelines

We use "just enough" JavaScript in the Visual Framework.

Using British and American english if code and documentation

For the language and spelling of documentation and code.

User base of the Visual Framework code

This project is designed to be used by organisations with experienced developers delivery life science websites.

Component versioning interoperability

Each Visual Framework component carries its own semantic versioning.

Content guidelines

Unique to the web are certain types of content that support user interaction.

Find an issue on this page? Propose a change or discuss it.