This package has been deprecated

Author message:

Please use @polymer packages instead

@npm-polymer/app-layout

2.0.0 • Public • Published

App Layout Build Status Published on webcomponents.org

A collection of elements, along with guidelines and templates that can be used to structure your app’s layout.

<app-header reveals>
  <app-toolbar>
    <paper-icon-button icon="menu" onclick="drawer.toggle()"></paper-icon-button>
    <div main-title>My app</div>
    <paper-icon-button icon="delete"></paper-icon-button>
    <paper-icon-button icon="search"></paper-icon-button>
    <paper-icon-button icon="close"></paper-icon-button>
    <paper-progress value="10" indeterminate bottom-item></paper-progress>
  </app-toolbar>
</app-header>
<app-drawer id="drawer" swipe-open></app-drawer>
<sample-content size="10"></sample-content>

Install

$ bower install PolymerElements/app-layout --save

Import

<link rel="import" href="/bower_components/app-layout/app-layout.html">

What is inside

Elements

  • app-box - A container element that can have scroll effects - visual effects based on scroll position.

  • app-drawer - A navigation drawer that can slide in from the left or right.

  • app-drawer-layout - A wrapper element that positions an app-drawer and other content.

  • app-grid - A helper class useful for creating responsive, fluid grid layouts using custom properties.

  • app-header - A container element for app-toolbars at the top of the screen that can have scroll effects - visual effects based on scroll position.

  • app-header-layout - A wrapper element that positions an app-header and other content.

  • app-toolbar - A horizontal toolbar containing items that can be used for label, navigation, search and actions.

Templates

The templates are a means to define, illustrate and share best practices in App Layout. Pick a template and customize it:

Patterns

Sample code for various UI patterns:

  • Transform navigation: As more screen space is available, side navigation can transform into tabs. (Demo - Source)

  • Expand Card: Content cards may expand to take up more horizontal space. (Demo - Source)

  • Material Design Responsive Toolbar: Toolbar changes its height and padding to adapt mobile screen size. (Demo - Source)

Users

Here are some web apps built with App Layout:

Tools and References

Changes in App Layout 2.0

  • Distribution is now done with slots, so things have changed because of that,

    1.x

    <app-drawer-layout>
      <app-drawer>...</app-drawer>
      <div>content</div>
    </app-drawer-layout>
    

    2.0

    <app-drawer-layout>
      <app-drawer slot="drawer">...</app-drawer>
      <div>content</div>
    </app-drawer-layout>
    

    same for app-header-layout and app-box.

  • In app-drawer-layout, the drawer-toggle element will not be automatically hidden when app-drawer-layout is not in narrow layout. To add this, add the following CSS rule where app-drawer-layout is used:

    app-drawer-layout:not([narrow]) [drawer-toggle] {
      display: none;
    }
  • app-scrollpos-control has been removed from App Layout in favor of using multiple scrolling regions to preserve the scroll position. In terms of UX, document.rootScroller is a new web platform API that will allow non-document scroll to hide the address bar on mobile.

Readme

Keywords

none

Package Sidebar

Install

npm i @npm-polymer/app-layout

Weekly Downloads

3

Version

2.0.0

License

https://polymer.github.io/LICENSE.txt

Last publish

Collaborators

  • npm-polymer