Giter Club home page Giter Club logo

carbon-for-ibm-dotcom's Introduction

Carbon Design System

Carbon for IBM.com

This library is an extension of the Carbon IBM Design System. It contains unique components shared between the IBM.com user journeys to unify its look and feel.

Carbon is released under the Apache-2.0 license PRs welcome This project is using Percy.io for visual regression testing. Chat with us on Discord

Getting started

If you're just getting started, check out react or web components!

If you're trying to find something specific, here's a full list of packages that we support!

Package name Description
@carbon/ibmdotcom-react IBM.com React components and patterns
@carbon/ibmdotcom-web-components IBM.com web components
@carbon/ibmdotcom-services IBM.com ES6 Service classes
@carbon/ibmdotcom-styles Framework agnostic styles package for IBM.com components
@carbon/ibmdotcom-utilities IBM.com ES6 Utility classes
@carbon/web-components Carbon Web Components

If you are building pages for IBM.com, see what is needed on the page.

Storybook demos

Documentation

  • See our documentation site here for full how-to docs and guidelines
  • Contributing: Guidelines for making contributions to this repo.

πŸ™Œ Contributing

We're always looking for contributors to help us fix bugs, build new features, or help us improve the project documentation. If you're interested, definitely check out our guides:

πŸ“ License

Licensed under the Apache 2.0 License.

carbon-for-ibm-dotcom's People

Contributors

abdonrd avatar andy-blum avatar andysherman2121 avatar annawen1 avatar ariellalgilmore avatar asudoh avatar brunnom7 avatar caiobozato avatar carthick avatar dependabot[bot] avatar emerson-pereira avatar emyarod avatar greeshmareddyg avatar guilhermelmoraes avatar ibmdotcom-bot avatar ignaciobecerra avatar jeffchew avatar jkaeser avatar kennylam avatar m4olivei avatar marcelojcs avatar nsdrowned avatar photodow avatar proeung avatar raphaelamadeu avatar raphaelamadeu-zz avatar reesedownes avatar renovate[bot] avatar sangeethababu9223 avatar sannminwin avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

carbon-for-ibm-dotcom's Issues

Masthead: L0 eyebrow focus state

The eyebrow has the browser default focus state and should be changed to match the focus state of other links.
Screen Shot 2019-10-03 at 9 02 36 PM

Assuming this piece is using a dark theme so it should use the $focus color token.

DotcomShell component is not being exported

Detailed description

Describe in detail the issue you're having.

The DotcomShell component is not being exported.

Is this a feature request (new component, new icon), a bug, or a general
issue?

Bug

Is this issue related to a specific component?

DotcomShell

What did you expect to happen? What happened instead? What would you like to
see changed?

Have access to the DotcomShell component. No access to the DotcomShell component. I want to use the DotcomShell component.

What browser are you working in?

Chrome/Safari

What version of the IBM.com Library are you using?
0.5.1

What offering/product do you work on? Any pressing ship or release dates we
should be aware of?
none

Masthead: can't use keyboard commands with dropdowns

When a dropdown menu is open, I can't use the keyboard to select any of the dropdown options. Not sure if this is a bug on our side or a bug in Carbon

In the Carbon dropdown examples, I can press the down arrow to go through the menu items
In Carbon's UI shell example, I can tab into the dropdown menu

But in our masthead, when I hit the down arrow it scrolls down the page instead of through the menu items.
Screen recording attached
dropdown-keyboard.zip

I think this could be an accessibility problem?
cc @ljcarot @jeffchew

Masthead L0 and L1: dropdown hover state

Both L0 and L1 divider lines within the dropdowns are visible upon hover, however in Carbon react storybook the divider lines are not visible upon hover. Is it possible to achieve this same effect as Carbon?

L0
Screen Shot 2019-09-24 at 3 37 39 PM

L1
Screen Shot 2019-09-24 at 3 37 47 PM

Carbon
Screen Shot 2019-09-24 at 3 37 16 PM

Masthead L1: bottom padding should be 12px

This is a nice to have but not critical: the padding-bottom between L1 menu items and the bottom of the L1 bar should be 12px. This allows for the same spacing from the bottom in both L1 and L0, despite the different heights of the L's.

See here:
Screen Shot 2019-10-02 at 4 03 28 PM

Masthead L0: Focus state below rule

The focus state is appearing below the bottom rule on all the L0 links, causing the focus state to look uneven with only 1px of blue at the bottom.

Can the focus appear above the rule?

Screen Shot 2019-09-24 at 3 14 07 PM

Screen Shot 2019-09-24 at 2 32 13 PM

Import issues when importing a React component from @carbon/ibmdotcom-react

Detailed description

Describe in detail the issue you're having.

When importing a component from the React package, getting a build error that axios is missing

Is this a feature request (new component, new icon), a bug, or a general
issue?

Bug

Is this issue related to a specific component?

HorizontalRule, but believe this is for all components

What did you expect to happen? What happened instead? What would you like to
see changed?

No build errors

What browser are you working in?

Chrome

What version of the IBM.com Library are you using?

v0.5.1

What offering/product do you work on? Any pressing ship or release dates we
should be aware of?

N/A

Steps to reproduce the issue

  1. Go to codesandbox.com and create a project with @carbon/ibmdotcom-react
  2. Import a component
  3. See screenshot:

Screen Shot 2019-09-17 at 12 51 09 PM

Masthead L0: platform name not displaying correctly

When turning the platform knob on, the divider rule should display to the left (between the IBM 8-bar and the platform name). Currently, it's pushing to the right and running up against the platform name.

On Storybook:
Screen Shot 2019-10-03 at 9 29 45 AM

But should look like:
Screen Shot 2019-10-03 at 9 32 48 AM

Masthead L0: profile dropdown needs styling and alignment updates

I know there are problems with this dropdown because of Carbon overflow but if possible...

  • The profile dropdown is approx 4px too high. It should be flush to the bottom of the profile border/48px container. Flush to the top of L1.
  • The height of the dropdown row item is currently 40px but should be 48px (same as L0 and L1 main nav dropdowns).
  • Can't see the full border of profile-icon when focused.

Screen Shot 2019-10-03 at 6.15.18 PM.png

December 2019 Release Plan (v1.2.0)

Timeline

  • December 9th, 2019: Code freeze
  • December 9th - 13th, 2019: Release Candidate(s) and testing
  • December 16th, 2019: Full Release

Features

React

  • Locale Selector (#252): Call to action from the footer, which will show a modal where the user can select the locale/language translation for the given page. It will also set the user's preference.
  • Updated feature flag names to include prefix (#700)

Vanilla

  • Footer (#356): New look with two different configurable types (full, slim)

Patterns (React)

  • Simple Long Form (#466): Simple Long Form pattern*
  • List Section (#449): List section pattern*
  • Table of Contents (#445): Table of Contents pattern*
  • Lead Space, centered (#437): Lead Space pattern, centered version*
  • Next Steps (cards w/o images) (#472): Next Steps pattern*
  • Use Cases (#469): Use Cases pattern*
  • Updated feature flag names to include prefix (#700)
  • Add data-autoid attributes to optional fields for Patterns (#637)
  • LeadSpace (#732): Update styles to apply color theme as a container modifier

* NOTE: Behind a feature flag

Utilities

  • Available Language utility (#509): Utility for providing the available language translation on the current page

Bugs

  • Footer suddenly is in white background (#718)
  • IBM logo in Masthead is not aligned with content in big screens (#719)
  • Separate global imports into different package (#527)

Masthead: L0 dropdown first item focus state

The focus state of the first item in the L0 dropdowns is only showing 1px of the 2px border on the top side . Is it possible to fix this? I looks like the rule at the bottom of the L0 is on top of the focus state.

Screen Shot 2019-10-03 at 9 12 45 PM

Build issues with the DotcomShell in create-react-app

Detailed description

Describe in detail the issue you're having.

When adding the DotcomShell in a vanilla create-react-app, getting the following error:

File to import not found or unreadable: @carbon/layout/scss/breakpoint. in /Users/[email protected]/Desktop/library-test/library-test/node_modules/carbon-components/scss/globals/scss/vendor/@carbon/grid/scss/_mixins.scss (line 12, column 1)

Is this a feature request (new component, new icon), a bug, or a general
issue?

bug

Is this issue related to a specific component?

DotcomShell

What did you expect to happen? What happened instead? What would you like to
see changed?

The page loads.

What version of the IBM.com Library are you using?

v1.0.0-rc.0

Steps to reproduce the issue

  1. Create a new create-react-app application
  2. Follow the steps to add the DotcomShell to the page
  3. See error

Develop link + icon variant

User Story

As a :

Web simplification designer

I need:

a variation of the link component

so that I can:

finalize my designs.

Additional information

The web simplification team has created a design that utilizes a link and icon. This is a very common instance on current IBM.com and we need to develop a variation of the link component so it can be standardized.

The web simplification team will be coming back with logic around which icons can be paired in the link + icon variant within their pattern. This logic / guideance may or may not apply to the component within the ibm.com library

Specs

Primary_Link_Text-and-icon

Note
This is a variation of the primary link component and we should not provide a link + icon variant of inline links.

Acceptance criteria

  • component variation follows Carbon color tokens defined in primary link
  • component passes accessibility standards on all color themes
  • testing is done to determine what happens if a link+icon wraps to 2 lines

DDO API not reporting datalayer_ready event properly

Detailed description

Describe in detail the issue you're having.

The DDO API was not properly setting the version in the digitalData object. Discovered the issue was that the datalayer_ready event was not getting properly captured in the isReady method.

Is this a feature request (new component, new icon), a bug, or a general
issue?

Bug

Is this issue related to a specific component?

the digitalData object version

What version of the IBM.com Library are you using?

v1.0.0-rc.0

Steps to reproduce the issue

  1. Go to https://ibmdotcom-react.netlify.com/iframe.html?id=dotcom-shell--default
  2. Open console and check the digitalData object
  3. See that digitalData.page.version is undefined

Accessibility testing of Masthead and Footer

User Story

As a [user role below]:
ibm.com user with visual impairments

I need to:
effectively navigate through ibm.com's header and footer

so that I can:
find my way through ibm.com

Additional information

  • Use tools like Chromevox for testing keyboard navigation and voice announcements
  • Any automated accessibility tests
  • Should report any issues as separate issues in Github

Acceptance criteria

  • Masthead and footer passes WCAG AA compliance

Masthead IBM logo banding issue

Currently, the SVG logo is showing banding issue on some monitors. It depends on the monitor's DPI, but here is a screen capture:

Screen Shot 2019-10-04 at 6.26.04 PM.png

  • This is not critical for 1.0.0, but should be fixed before the new masthead hits the glass.

Masthead: hamburger left-nav menu items need styling updates

Couple of styling updates to be implemented, please:

  • All font-size should be 16px / 1rem
  • Change font-weight to 400
  • Spacing needs adjustment. Not sure what's best but in this edit below, I removed line-height and increased height to 3rem.
  • Need to add divider lines between each item. See design spec at bottom.
  • Need to change chevron-down to chevron-right. See design spec at bottom.

Suggested changes:
Screen Shot 2019-10-02 at 11 56 01 AM

Actual:
Screen Shot 2019-10-02 at 12 43 09 PM

Masthead: dropdown sub-link focus state is buggy

When focusing on a dropdown sub-link, the blue border does not expand full width of the dropdown container. @kennylam I'm guessing this is the issue we talked about re: the divider lines indenting by 16px either side?

Also, 1px of the blue border is hidden underneath the gray divider – can it appear above, instead?

Screen Shot 2019-09-23 at 10 18 42 AM

HorizontalRule not being exported at the root of components

Detailed description

Cannot pull in HorizontalRule when importing from root of the package

Steps to reproduce the issue

  1. In a React application, install @carbon/ibmdotcom-react
  2. Import the HorizontalRule:

import { HorizontalRule } from '@carbon/ibmdotcom-react';

  1. See import error

October 2019 Release Plan (v1.0.0)

Overview

This is the initial public release of the IBM.com Library, which is a Carbon-based library for use on all of IBM.com. Its intentions are to provide a consistency of IBM.com specific components and patterns that adheres to the IBM Design Language, and is a complimentary solution to the Carbon Design System.

This release includes the primary foundation of the library itself, as well as an initial set of features described below. Starting this release, the IBM.com Library will follow a monthly release cycle.

Timeline

  • September 27th, 2019: Code freeze
  • September 30th - October 4th, 2019: Release Candidate(s) and testing
  • October 7th, 2019: Full Release

Foundation

The primary foundation of the library will include several packages:

Each package (minus the styles package) includes their own living documentation output:

Features

React

  • Masthead: The Masthead includes a refreshed look and feel, L0/L1 navigation, Search with Typeahead, and Profile
  • Footer: The Footer has an updated look, with two different configurable types
  • DotcomShell: The Dotcom Shell is an overall UI shell structure that includes the Masthead and Footer. This is a good starting point for building out an IBM.com page.
  • HorizontalRule: A configurable <hr /> element
  • Analytics:
    • Scroll tracking

Patterns React

  • LeadSpace (experimental): LeadSpace pattern with optional CTAs

Services

  • Translation API: Fetches translation data for the Masthead and Footer. Currently supporting US English only.
  • SearchTypeahead API: Typeahead search, used in the Masthead
  • Profile API: Profile API that fetches the user's authentication status
  • DDO API: API that fetches various data from the Digital Data Object

Utilities

  • Various helper utilities

Experimental Features

To encourage ongoing development of features, the IBM.com Library embraces the creation of experimental features through feature flags. These are all configured through environment variables, so that they can be easily switched on or off. Additional environments have been stood up that have all feature flags turned on:

Masthead: there is motion latency on dropdown rollover

When hovering/rolling over the dropdown menu in both L0 and L1 there is a slight delay in state change from top to bottom. It's taking too long for the hover state to deactivate when the mouse rolls over another menu item. It's as if it's sticking.

I don't know if it's a bug or styling issue? Either way, it should behave more like Carbon's UI header.

Screen recordings in here for test:
masthead-dropdown-rollover.zip

This is related to issue #112


REF: https://ibmdotcom-react.netlify.com/?path=/story/masthead--default-with-l1

November 2019 Release Plan (v1.1.0)

Timeline

  • October 25th, 2019: Code freeze
  • October 28th - November 1st, 2019: Release Candidate(s) and testing
  • November 4th, 2019: Full Release

Features

React

  • Masthead/Footer (#421): Integration of the TranslationAPI into the Masthead/Footer
  • Left panel container (#257): Left panel container in anticipation of use of left nav on pages
  • Expressive Modal (#253): Variant of the Carbon Modal with an expressive theme
  • Link with Icon (#163): Variant of the Link component with icon
  • Clickable Tile (alpha) (#504): Clickable tile component
  • Button Group (alpha): Group of Carbon buttons
  • Masthead Updates:
    • Additional properties to show/hide the profile and search icons (#101)
    • Open the search box by default via prop (#593)
  • Analytics:

Patterns

  • Lead Space, Default (#517): Lead space, left-aligned version

Vanilla

  • Package Architecture (#224): Initial Vanilla package architecture to support IBM.com Library Vanilla components
  • Horizontal Rule (#553): A configurable <hr /> element

Services

  • TranslationAPI (#515): Expand translation API to fetch data to display additional languages worldwide

Utilities

  • ipcinfoCookie (#513): Utility for getting and setting the ipcinfo cookie
  • geolocation (#514): Utility for fetching the geo location of the user

Masthead: All type should be 16px / 1rem (except eyebrow)

Hey @kennylam every text style except for the eyebrow in L1 should be set to 16px / 1rem. Right now, everything in L0 is at 14px (I'm guessing because it's pulling from Carbon). The L1 chip with eyebrow and title have the correct styling but the rest of the link items need to be 16px.

Masthead L1: dropdown

The sub-links inside the dropdowns are sitting a few pixels too high in the L1 dropdowns. The sub-link should be vertically centered within each option.

Screen Shot 2019-09-24 at 2 32 44 PM

test issue

Detailed description

@kennylam this is a test issue

Describe in detail the issue you're having.

Is this a feature request (new component, new icon), a bug, or a general
issue?

Is this issue related to a specific component?

What did you expect to happen? What happened instead? What would you like to
see changed?

What browser are you working in?

What version of the IBM.com Library are you using?

What offering/product do you work on? Any pressing ship or release dates we
should be aware of?

Steps to reproduce the issue

  1. Step one
  2. Step two
  3. Step three
  4. etc.

Additional information

  • Screenshots or code
  • Notes

Right to Left Enabled (for Arabic lang support)

User story

As a maker of ibm.com experiences in Arabic, I need a RTL version of the Masthead/Footer, so that I can build out a page/pages for my users who read Arabic.

Notes

Acceptance criteria

  • Functional spec and design approved
  • Code approved
  • Sprint demoed
  • OM accepted
  • Guideline published
  • Content published

Vendor css imports failing

Detailed description

Describe in detail the issue you're having.

Vendor css imports fail outside storybook usage. Must include ~ in css vendor import paths to fix, e.g. '~@carbon/ibmdotcom-styles...'

Is this a feature request (new component, new icon), a bug, or a general
issue?

General issue

What browser are you working in?

All

What version of the IBM.com Library are you using?

0.5.0

Masthead: Hamburger needs < Back eyebrow

When a user clicks one level down into the hamburger menu a < Back eyebrow should appear to allow them to navigate back to the "parent" menu.

Currently, there is no way for me to go back to the first level:
Screen Shot 2019-10-02 at 11 45 41 AM
Screen Shot 2019-10-02 at 11 42 21 AM

Actual view should be:
Screen Shot 2019-10-02 at 11 48 19 AM

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.