Coder Social home page Coder Social logo

codypearce / material-bread Goto Github PK

View Code? Open in Web Editor NEW
322.0 322.0 119.0 26.87 MB

Cross Platform React Native Material Design Components

Home Page: https://material-bread.org/

License: MIT License

JavaScript 99.01% Java 0.20% Objective-C 0.52% Starlark 0.26%
material material-design react react-native reactjs ui ui-components uikit

material-bread's People

Contributors

achoisy avatar arisferyanto avatar bcgilliom avatar brunohkbx avatar codypearce avatar dependabot[bot] avatar ds8k avatar kanelabs avatar maugonsal avatar ricbermo avatar ryanmcdonald avatar skubakdj 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

material-bread's Issues

Checkbox: Support Error state

Describe your feature request
Checkbox should have an easy to use interface for displaying an error

Todo

  • Create error demo
  • Create story for error demo
  • Implement error

CardHeader: Create more demos

Describe your feature request
Both storybook and docs should have more demos for displaying different configurations of the card header.

Todo

  • Create storybook demos
  • Create doc demos

Chip: Support choice chip

Describe your feature request
Material docs shows four types of chips, Choice chip is one of them. Seems like you are given the ability select a chip.

Context
https://material.io/design/components/chips.html#usage
image

Proposed solution
Add prop for selecting and changing the select style.

  • Add prop to chip for selected state
  • Update prop table
  • Add demo for choice chip
  • Add storybook demo for choice chip

DatatableInlineEdit: Support for inline editing.

Describe your feature request
Material docs has a section for inline editing of rows. This comes in two types, large and small.

Context
image
image
image

Proposed solution
This will need to be new component that displays certain text and when clicked it opens a dialog with a TextField at the location of the table.
Optional Title
Optional pass in actionItems

  • Create Component
  • Create storybook stories
  • Create storybook story for using the edit icon within a table
  • Create Doc page for new component
  • Create demos for doc page
  • Create jest tests

AppbarBottom: Add Storybook demo for opening sidebar

Describe your feature request
AppbarBottom component navigation can open the sidebar, we should create a storybook story to demo this functionality similar to the Drawer Demos.

Context

Proposed solution

Things that need to be done

  • Add storybook story
  • Add demos for opening side navigation

Badge: Support dot type

Describe your feature request
All the demos show using a number, a common use case is to use a dot. It should be able to be styled and toggled.

Context

Material Bread 2019-04-19 02-50-09

Proposed solution
Add a prop type that accepts dot to choose that variant.

Things that need to be done

  • Create dot type that toggles
  • Update prop table
  • Add demo section to docs
  • Add storybook section for dot variant

Button: Add more storybook demos

Describe your feature request
Currently each type of button has one example of various functional (loading, icons) etc. This should be increased. Each functionality should be on it's own line and have more demos. This could be broken into separate sections within each button type or with text in the story.

Todo

  • Add more demos to Text Button
  • Add more demos to Outlined Button
  • Add more demos to Flat button
  • Add more demos to Contained Button

[New Component]: Collapse

Describe your feature request
Create a component that will wrap arbitrary content and expand and collapse based on a visible prop. Material docs shows this functionality in various places.

Context
For example in the cards section https://material.io/design/components/cards.html#anatomy
image

Todo

  • Create Collapse component
  • Create storybook story
  • Create doc page
  • Create props table
  • Create doc demo
  • Add Card demo as shown in material docs
  • Add jest tests

AppbarBottom: Add Menus to some of the demos and stories

Describe your feature request
Some examples in the material docs show overflow menus on the right hand side, we should display this functionality in at least one of the example demos we have in the docs.

This should also be added as another storybook section in Appbarbottom.

Context
https://material.io/design/components/app-bars-bottom.html#behavior

App bars: bottom - Material Design 2019-04-18 07-52-07

Proposed solution
Describe how you would implement this feature or expect this feature to work from a dev perspective.

Things that need to be done

  • Add to at least one demo
  • Create new section in storybook Appbarbottom for "with menu"
  • Create demos in Storybook under above section

Button: Add custom section to storybook

Describe your feature request
Add a custom section to the storybook section for buttons with more demos of custom buttons.

  • Add custom section to storybook button section
  • Create more custom demos

Checkbox: Create more storybook stories

Describe your feature request
Currently there is only one line of checkbox demos for each section, this should be expanded to show many more checkbox demos

  • Add more demos to each section

AppbarBottom: Add demo to docs for opening Fab Speed Dial

Describe your feature request
This seems like a common use case for fab speed dials, therefore we should create a demo section on the AppbarBottom page

*Things that need to be done

  • Create demo
  • Create section in docs
  • Add to docs sidebar

Checkbox: Support parent/child checkboxes

Describe your feature request
The material docs show examples of a a checkbox list with the top checkbox toggling all or none of the child checkboxes. This should either be a demo or support this feature out of the box, for example using a checkboxgroup component to wrap the child checkboxes.

Context

image

AppbarBottom: Animate changing cutout location

Describe your feature request
The material docs indicates that the appbar can change where the cutout is and the location of the actions depending on the context of the page. When this switch occurs there should be an animation to switch these layouts.

Context
https://material.io/design/components/app-bars-bottom.html#behavior

image

Proposed solution
Looks like most of animating is the growing and shrinking of the Fab button and the cutout. Ideally there might be a prop animateFab to toggle this behavior, then whenever the user replaces the fab or the appbar first appears it will animate that fab cutout.

Chip: Create storybook demos

Describe your feature request
There are only two sections, and each section only has one line of demos, this should be increased to reach all possible states of chips.

Todo

  • Create more demos in storybook

Appbar: Contextual Action Bar

Context:

Material docs show two types of Appbars: Normal and Contextual

https://material.io/design/components/app-bars-top.html#usage

App bars: top - Material Design 2019-04-16 08-23-05

Current Implementation:
Normal Appbar is the only type of top bar supported. However a user can simply replace the children or each inner component navigation, title, and actionItems to produce a new bar.

Possible Changes:

The demo for search bar on the Appbar page switching between the two http://material-bread.org/components/appbar#search-bar. This is essentially a contextual Appbar, maybe this could be made more obvious this is the way to create a contextual appbar.

Another option is to add a prop contextualAppbar which will render a new appbar given a condition.

CardMedia: Create more demos

Describe your feature request
Create more demos with CardMedia there are many examples in the official docs that use media in different ways.

Todo

  • Create more storybook demos
  • Add more demos to docs

Chip: Support Filter chip

Describe your feature request
Material docs show 4 types of chips: Filter chip is one. It appears to support a checkmark inside the chip to help indicate it's been selected.

Context
https://material.io/design/components/chips.html#usage
image

Proposed solution
This could be added along with #42 as an option for selected prop to support showing a checkmark when selected

  • Add storybook story for filter chip
  • Add demo to docs
  • Update props
  • Update prop table

BottomNavigation: Break storybook stories into different sections

Describe your feature request
Currently all Bottom Navigation Demos are in one section. This should be broken into different sections. Probably the following sections

  • Simple
  • Label
  • Icon
  • Icon + Label
  • with badge
  • custom

This will require adding more demos, this could go with #22 to add number of items and colors

Context
https://codypearce.github.io/material-bread/?path=/story/components-bottom-navigation--component

  • Create simple storybook section and add demos that are only basic navigation
  • Create Label section with demos that are only labels
  • Create icon section with demos that are only icons
  • Create icon + label section with demos that are both icons and labels
  • Create with badge section with demos that show badges used with various of the above types
  • Create custom section with at least one demo that shows a custom implementation

Backdrop

Describe your feature request
The Backdrop component appears in the Material docs.

  1. There are two parts, backlayer and and front layer.
  2. Each layer contains arbitrary children

Back layer

  1. Has two states: active and inactive
  2. Toggles between active and inactive when navigation is clicked
  3. Clicking the backlayer will expand, pushing the front layer down
  4. While not expanded it can also display information related to the front layer
  5. Back layer can change the front layer content with navigation or filtering

Front layer

  1. Has two states: active and inactive
  2. When active it shows on top of backlayer
  3. When inactive it shows at the bottom of the page
  4. When inactive and clicked it will expand to to active
  5. Has option subheader

Context
https://material.io/design/components/backdrop.html#usage

Proposed solution

Things that need to be done

  • Create Component
  • Create Stories and add to storybook
  • Create Doc Page
  • Create Doc Demos
  • Write Tests

BottomNavigationItem: Create Storybook section

Describe your feature request
There is no section for BottomNavigationItem in storybook. Partly because it overlaps with BottomNavigation. However the docs and storybook should somewhat mirror each other.

Proposed solution
Create some more demos that take advantage of props found only on BottomNavigationItem and not the container.

  • Create new section for BottomNavigationItem in storyboook within the BottomNavigation section
  • Add simple section with demos
  • Add with badge section
  • Add custom section

Card: Support Transition to full screen card

Describe your feature request
Material Docs shows a transition to a fullscreen card, that grows from the center and takes over the screen.

Context
https://material.io/design/components/cards.html#behavior

image

Proposed solution
Maybe add a prop for isFullScreen or something that can be toggled. Demos should replace the inner children to reproduce the top commands seen in the docs, with the close icon.

Todo

  • Add prop for toggling
  • Create functionality
  • Update Prop table
  • Add storybook story section
  • Add doc demo

Badge: Support animating badge in and out

Describe your feature request
When the badge is shown it should animate on the component it's on.

Context
Material UI supports this as you can see from their visibility section

image

Things that need to be done

  • Add prop for visibility
  • Update props table
  • Create animation for growing and shrinking the badge
  • Add demo section for toggling visibility in docs
  • Add storybook story

Badge: Support max value for content

Describe your feature request
Add prop to for forcing max value on a badge. Show + and the max value if value exceeds this.

Context
Material UI implements this as shown

image

Things that need to be done

  • Add prop for max value
  • Update prop table
  • Add demo section to docs for max value
  • Add storybook story for max value

Badge: Add demo for custom badge to docs

Describe your feature request
Add a section to docs for creating a custom badge by replacing children

Things that need to be done

  • Add demo section to docs
  • Add storybook story for customizing

Chip: Support Input chip

Describe your feature request
Material docs shows four types of chips, Input chip is shown as being created from typing in an input form.

This should take the form of a demo with the following features:

  • Editable
  • Error state
  • Created after a space or comma is added to the input

The docs also show them being expandable but I think that is should be considered advanced functionality and implemented into another story

Context
https://material.io/design/components/chips.html#usage
Chips - Material Design 2019-04-20 18-11-18

Proposed solution
This could be implemented with existing components or create special support for this with inputs. In either case a demo should be created for this type of functionality.

Todo

  • Add storybook story for input chip demo
  • Add demo to docs

Banner: Add Appbar demo

Describe your feature request
Create a demo for the docs or storybook that integrates the Banner with an appbar and a simple page. Similar to Drawer examples that mimic a page.

Things to do

  • Add more complex storybook story
  • Add more complex demo to docs

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.