primer
Repos
93

ViewComponents for the Primer Design System

296
81

An implementation of GitHub's Primer Design System using React

2322
376

A scalable set of icons handcrafted with <3 by GitHub

7720
783

Primer Design Guidelines

297
130

The CSS design system that powers GitHub

11920
1057

Primer Presentations is the presentation design system for GitHub. It's intended to be used only by GitHub staff for presentations that represent GitHub.

68
32

Events

more shadows

use muted

use old shadows

remove checks

fix shadow

cleanup

Created at 1 hour ago

Rename sub_components -> subcomponents

Created at 1 hour ago

Nest fq name under key

Created at 2 hours ago

Just include references to sub components

Created at 2 hours ago
delete branch
dependabot[bot] delete branch dependabot/npm_and_yarn/eslint-plugin-github-4.6.1
Created at 2 hours ago
pull request closed
Bump eslint-plugin-github from 4.3.5 to 4.6.1

Bumps eslint-plugin-github from 4.3.5 to 4.6.1.

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Created at 2 hours ago
issue comment
Bump eslint-plugin-github from 4.3.5 to 4.7.0

⚠️ No Changeset found

Latest commit: e79ccbc180fa8bf9165ca6bd0c828b05ee7e3a00

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

Created at 2 hours ago
pull request opened
Bump eslint-plugin-github from 4.3.5 to 4.7.0

Bumps eslint-plugin-github from 4.3.5 to 4.7.0.

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Created at 2 hours ago
issue comment
Bump eslint-plugin-github from 4.3.5 to 4.6.1

Superseded by #189.

Created at 2 hours ago
create branch
dependabot[bot] create branch dependabot/npm_and_yarn/eslint-plugin-github-4.7.0
Created at 2 hours ago

Update generated/components.json

Created at 2 hours ago
issue comment
Add a11yReviewed to `Text` component

Ahh good catch! I didn't realize there was an additional file. I added it to Text.docs.json.

Created at 2 hours ago

Add a11yReviewed to text.docs.json

Created at 2 hours ago
issue comment
Release Tracking

Dotcom PR (internal only): https://github.com/github/github/pull/266668

Created at 2 hours ago
Created at 2 hours ago
issue comment
Update component status migrator to migrate from alpha or beta

⚠️ No Changeset found

Latest commit: 3160f7142f18acb74a2bb9977164d9f85923f027

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

Created at 3 hours ago
pull request opened
Update component status migrator to migrate from alpha or beta

Description

The status migrator currently only accepts components defined at the top level of the app/components/primer. Since we've moved most of those components into subdirectories, like alpha/ and beta/, we'd like to be able to migrate those, too, so that we can automatically migrate components e.g. alpha -> beta.

This involves:

  1. Determining the current status of the component. This can't just involve checking paths, but needs to involve inspecting the source code of the component for a status annotation, since when we migrate components we leave behind a file annotated with status: :deprecated representing the previous version of the component.
  2. Manipulating the code by editing the module in which the component's defined. For example, Primer::FooBar -> Primer::Alpha::FooBar involves adding a module Alpha section, which we already do, but Primer::Alpha::FooBar -> Primer::Beta::FooBar requires recognizing and modifying that module.

This PR defines a ComponentVersion class representing a component and its status. We use that information to construct fully qualified class names and file paths. If a status isn't provided it infers the current version from a combination of file paths and source code.

While there still aren't automated tests for this script, you can try the manual commands to see how it works:

$ bundle exec thor component_status_migrator ButtonMarketing --status beta
Migrating Primer::Alpha::ButtonMarketing -> Primer::Beta::ButtonMarketing
      create  app/components/primer/beta/button_marketing.rb
      remove  app/components/primer/alpha/button_marketing.rb
      create  app/components/primer/beta/button_marketing.pcss
      remove  app/components/primer/alpha/button_marketing.pcss
        gsub  app/components/primer/primer.pcss
      create  test/components/beta/button_marketing_test.rb
      remove  test/components/alpha/button_marketing_test.rb
      create  previews/primer/beta/button_marketing_preview.rb
      remove  previews/primer/alpha/button_marketing_preview.rb
        gsub  app/components/primer/beta/button_marketing.rb
        gsub  app/components/primer/beta/button_marketing.rb
      insert  app/components/primer/beta/button_marketing.rb
      insert  app/components/primer/beta/button_marketing.rb
        gsub  previews/primer/beta/button_marketing_preview.rb
        gsub  previews/primer/beta/button_marketing_preview.rb
      insert  previews/primer/beta/button_marketing_preview.rb
      insert  previews/primer/beta/button_marketing_preview.rb
        gsub  previews/primer/beta/button_marketing_preview.rb
        gsub  previews/primer/beta/button_marketing_preview.rb
        gsub  test/components/beta/button_marketing_test.rb
        gsub  docs/src/@primer/gatsby-theme-doctocat/nav.yml
        gsub  docs/src/@primer/gatsby-theme-doctocat/nav.yml
        gsub  app/components/primer/primer.ts
         run  grep -rl ButtonMarketing . --exclude=.overmind.sock --exclude=CHANGELOG.md --exclude=test/components/alpha/button_marketing_test.rb --exclude-dir={.git,.cache,.yardoc,builds,log,node_modules,tmp,vendor} | xargs sed -i '' 's/Primer::Alpha::ButtonMarketing/Primer::Beta::ButtonMarketing/g' from "."
      remove  app/components/primer/alpha/button_marketing.rb
      create  app/components/primer/alpha/button_marketing.rb
      insert  lib/primer/deprecations.yml
      insert  test/components/component_test.rb
         run  bundle exec rubocop -a; exit 0 from "."

[...]

Component Status Migration Completed
------------------------------------

Original Component: 'Primer::Alpha::ButtonMarketing'
     New Component: 'Primer::Beta::ButtonMarketing'

IMPORTANT NOTE:

The original component has been migrated, but may need additional configuration. Please update the entry in 'lib/primer/deprecations.yml'.

Migrating a component in the app/components/primer directory still works, too:

$ bundle exec thor component_status_migrator Box --status beta
Migrating Primer::Box -> Primer::Beta::Box
      create  app/components/primer/beta/box.rb
      remove  app/components/primer/box.rb
        gsub  app/components/primer/primer.pcss
      create  test/components/beta/box_test.rb
      remove  test/components/box_test.rb
      insert  app/components/primer/beta/box.rb
      insert  app/components/primer/beta/box.rb
        gsub  test/components/beta/box_test.rb
        gsub  docs/src/@primer/gatsby-theme-doctocat/nav.yml
        gsub  docs/src/@primer/gatsby-theme-doctocat/nav.yml
        gsub  app/components/primer/primer.ts
         run  grep -rl Box . --exclude=.overmind.sock --exclude=CHANGELOG.md --exclude=test/components/box_test.rb --exclude-dir={.git,.cache,.yardoc,builds,log,node_modules,tmp,vendor} | xargs sed -i '' 's/Primer::Box/Primer::Beta::Box/g' from "."
      remove  app/components/primer/box.rb
      create  app/components/primer/box.rb
      insert  lib/primer/deprecations.yml
      insert  test/components/component_test.rb
         run  bundle exec rubocop -a; exit 0 from "."

[...]

Component Status Migration Completed
------------------------------------

Original Component: 'Primer::Box'
     New Component: 'Primer::Beta::Box'

IMPORTANT NOTE:

The original component has been migrated, but may need additional configuration. Please update the entry in 'lib/primer/deprecations.yml'.

Questions for the reviewer:

  • Right now we throw an error when there's more than one non-deprecated version of the component (say alpha and beta). Would we like to always assume that the "highest" status is the current one? That'll mean the we won't be able to migrate backward (e.g. beta -> alpha) without defining a new flag, but I don't really expect we'll want to do that.
  • I haven't used thor too much, and defining this big ComponentVersion class in the same file as the migration script seems clunky. Is there a canonical place for this sort of thing?
  • I've followed the current practice of not writing tests for this script. But if ComponentVersion were extracted somewhere it might be nice to backfill some tests for it; that version inference code's a little hairy. Sound good?

Closes #1263.

Integration

Does this change require any updates to code in production?

Nope! This is just an internal tool.

Merge checklist

  • [ ] Added/updated tests
  • [ ] Added/updated documentation
  • [ ] Added/updated previews
Created at 3 hours ago

Disable Rails/NegateInclude (this isn't Rails)

Don't include inflections

We're not using 'em.

Created at 3 hours ago
create branch
hrs create branch hrs/component-status-migrator
Created at 3 hours ago
issue comment
Octovisuals Page

Octicons: A scaleable set of icons handcrafted with ❤️ by us at GitHub to be used freely in your projects and applications

Created at 4 hours ago
issue comment
Octovisuals Page

@tallys for the description line for Octicons and Octovisuals:

Octovisuals: A single source of truth for brand-compliant icon, logomarks, and illustrations, with stricter licensing conditions and usage rules

Created at 4 hours ago

Updated Links to New IA

Created at 6 hours ago
delete branch
emilybrick delete branch mp/progress-bar-docs
Created at 6 hours ago

Add interface guidelines for ProgressBar (#452)

  • adds interface guidelines for ProgressBar

  • Update content/components/progress-bar.mdx


Co-authored-by: Emily Brick emilybrick@github.com

Created at 6 hours ago
pull request closed
Add interface guidelines for ProgressBar
Created at 6 hours ago