@hashicorp/mktg-global-styles

4.5.0 • Public • Published

npm latest package

Global Styles

Global styles used across HashiCorp sites.

The Rundown

The primary import is style.css, which contains a few important styles:

  • a css normalize (src)
  • a range of custom media queries (src)
  • all of our standard fonts (src)
  • a range of css custom properties covering brand colors (src)
  • a range of css custom properties covering standard font stacks (src)
  • a number of classes for applying type styles (src)
  • the .g-grid class which is our standard grid layout setup (src)
  • the .g-grid-container class which is our standard content container (src)

Each of these can be imported individually, but this is not recommended. They are separated for internal organization rather than external consumption

Work Needed

This package is severely out of date and generally needs a lot of additional work, most of which will be breaking. A short list of what needs to change follows:

  • code-highlighting.css is no longer used, instead code highlighting styles are imported from @hashicorp/nextjs-scripts
  • all of the temporary-to-remove files need to be evaluated and culled
  • several files have cross-referenced css imports, which are not necessary. for example, since global imports our color variables, it does not need to be imported in any other file, or it will be doubled. these imports are relics from when we compiled variables rather than using them as-is
  • the global file needs to be broken apart into pieces and assembled within style.css

Publishing

Publishing is handled through the changesets library. Publishing is done in CI if changes are found. For more information on how to work with changesets, see this document.

Adding a changeset

Run the following command and follow the prompt:

npx changeset

To make any adjustments to your changeset, just edit the file!

Releases

The release process is handled mostly automatically via the changesets GitHub action. When changeset files get merged to main, a Pull Request is opened which will, upon merge, release all pending changesets and remove the changeset files. We should not need to publish manually with this flow. See the changesets/action(https://github.com/changesets/action) repo for more information.

Canary Releases

If you want to test your changes before merging, you can add a release:canary label to your pull request. If any changeset files are found, a release will be created and tagged with canary. You can then install the canary version elsewhere:

npm install @hashicorp/mktg-global-styles@canary

Prereleases

Prereleases are also handled through a process integrated into changesets. The full flow is outlined in this document. To enter a prerelease mode for the canary tag, we would do something like this:

npx changeset pre enter canary
GITHUB_TOKEN=<your token> npx changeset version
GITHUB_TOKEN=<your token> npx changeset publish

To continue publishing preleases, use the npx changeset command like normal and use the version and publish commands as appropriate.

Readme

Keywords

none

Package Sidebar

Install

npm i @hashicorp/mktg-global-styles

Weekly Downloads

3,369

Version

4.5.0

License

MPL-2.0

Unpacked Size

1.04 MB

Total Files

38

Last publish

Collaborators

  • abhishek-hashicorp
  • dstaley
  • cameronperera
  • alexju
  • consul-ui-services
  • wenincode-hashicorp
  • hashicb
  • britt.lindgren
  • paulhcp
  • nandereck
  • tstormk
  • hashibot-hds
  • lackeyjb1
  • youriwims
  • jpogran
  • _natmegs
  • thrashr888
  • melsumner
  • mwickett
  • didoo
  • zchsh
  • hcitsec
  • gregone
  • meirish
  • enmod
  • kaxcode
  • anubhavmishra-hashicorp
  • hashibot-web
  • cstitt-hashi
  • kstraut
  • mocohen
  • dhaulagiri