carbon-design-system / carbon-platform

The "next" version of the Carbon Design System website, as a platform.
https://next.carbondesignsystem.com
Apache License 2.0
21 stars 5 forks source link

"vanilla" vs "Vanilla" and "web components" vs "Web Components" #1132

Open alisonjoseph opened 2 years ago

alisonjoseph commented 2 years ago

Look into capitalization of vanilla JavaScript across the website. Should it be Vanilla or vanilla? Same question for web components.

mattrosno commented 2 years ago

I believe consensus during demo day call was to leave it as is. We're inconsistently using "vanilla" and "Vanilla" in the legacy website (meaning there's no precedent.)

Do we need to do anything here? Or can we continue to capitalize Vanilla and Web Components like our other frameworks? We currently do this.

export const framework = {
  angular: {
    icon: Svg16Angular,
    name: 'Angular'
  },
  'design-only': {
    name: 'Design only'
  },
  react: {
    icon: Svg16React,
    name: 'React'
  },
  'react-native': {
    icon: Svg16React,
    name: 'React Native'
  },
  svelte: {
    icon: Svg16Svelte,
    name: 'Svelte'
  },
  vanilla: {
    icon: Svg16Javascript,
    name: 'Vanilla JavaScript'
  },
  vue: {
    icon: Svg16Vue,
    name: 'Vue'
  },
  'web-component': {
    icon: Svg16WebComponent,
    name: 'Web Component'
  }
}

@alisonjoseph @jdharvey-ibm @aubrey-oneal

aubrey-oneal commented 2 years ago

I'd be in favor of continuing to capitalize Vanilla and Web Components to have consistency between all the frameworks.

alisonjoseph commented 2 years ago

I think the correct answer is not to capitalize either, neither are a proper noun or name of a framework like the others. I was also curious what was standard for web components and it seems most do not capitalize. "vanilla" is just an adjective describing the word javascript.

Screen Shot 2022-08-16 at 8 32 40 AM

Screen Shot 2022-08-16 at 8 33 45 AM

jharvey10 commented 2 years ago

A couple additional points and questions:

The logo we're currently using for web components is not an official framework logo. The webcomponents.org site from which it came does not appear to be affiliated with WHATWG or W3C, which are the actual governing bodies responsible for standardizing the set of technologies used to create web components. IMO it would be more correct to use the HTML5 logo to represent web components.

What is the distinguishing factor between a vanilla JavaScript library/component and a web component library/component? The APIs used to create web components are no different than standard JavaScript and HTML5 APIs. Is the distinguishing factor the usage or absence of certain JavaScript APIs? Or the usage of tag names previously registered with the CustomElementRegistry.define() API?

mattrosno commented 2 years ago

@jdharvey-ibm we're using the web components icon from Ionic's ionicons: https://github.com/ionic-team/ionicons/blob/main/src/svg/logo-web-component.svg

Regardless if we capitalize vanilla and web components in headings and body copy or not, I believe we have it right to use capitalization in our library names Carbon Vanilla, Carbon Web Components, IBM.com Web Components here: https://next.carbondesignsystem.com/libraries

@aubrey-oneal can you confirm that our library names have correct capitalization, so we know this issue is for headings and body copy?