diff --git a/docs/_includes/base-wide.njk b/docs/_includes/base-wide.njk new file mode 100644 index 000000000..58811216a --- /dev/null +++ b/docs/_includes/base-wide.njk @@ -0,0 +1,98 @@ + + + + + + + + {% if noindex %}{% endif %} + + {{ title }} + + + + + {# Scripts #} + + + + + + + + {# Web Awesome #} + + + + + + + {# Docs styles #} + + + {# Set the theme to prevent flashing #} + + + + + +
+ {# Nav toggle #} + + + + + {# Logo #} + + + +
+ + {# Sidebar #} + {% if hasSidebar %} + + {% endif %} + + {# Outline #} + {% if hasOutline %} + + {% endif %} + + {# Main #} +
+ {# Expandable outline #} + + + {% block beforeContent %}{% endblock %} + + {% block content %} +

{{ title }}

+ + {{ content | safe }} + {% endblock %} + + {% block afterContent %}{% endblock %} +
+ + {% include 'search.njk' %} +
+ + + diff --git a/docs/_includes/base.njk b/docs/_includes/base.njk index 437ccf0e5..fbb51c261 100644 --- a/docs/_includes/base.njk +++ b/docs/_includes/base.njk @@ -1,5 +1,5 @@ - + @@ -22,6 +22,7 @@ + @@ -30,7 +31,7 @@ {# Web Awesome #} - + @@ -39,9 +40,30 @@ {# Set the theme to prevent flashing #} @@ -64,6 +86,25 @@
+ {# Preset theme selector #} + + + + Default + + + Default + Classic + Font Awesome + + Active + Brutalism + Glassy + Migration + Playful + Premium + + {# Color scheme selector #} diff --git a/docs/_includes/sidebar.njk b/docs/_includes/sidebar.njk index 14b9d31e8..18975a613 100644 --- a/docs/_includes/sidebar.njk +++ b/docs/_includes/sidebar.njk @@ -246,3 +246,26 @@ Component Groups + +

Patterns

+ + diff --git a/docs/_layouts/page-wide.njk b/docs/_layouts/page-wide.njk new file mode 100644 index 000000000..f0b287b8f --- /dev/null +++ b/docs/_layouts/page-wide.njk @@ -0,0 +1,4 @@ +{% set hasSidebar = true %} +{% set hasOutline = true %} + +{% extends "../_includes/base-wide.njk" %} diff --git a/docs/_layouts/page.njk b/docs/_layouts/page.njk index a55a02c21..090efc8b3 100644 --- a/docs/_layouts/page.njk +++ b/docs/_layouts/page.njk @@ -1,4 +1,4 @@ {% set hasSidebar = true %} -{% set hasOutline = false %} +{% set hasOutline = true %} {% extends "../_includes/base.njk" %} diff --git a/docs/assets/examples/carousel/blog-carousel-1.jpg b/docs/assets/examples/carousel/blog-carousel-1.jpg new file mode 100644 index 000000000..e6bf8e2d9 Binary files /dev/null and b/docs/assets/examples/carousel/blog-carousel-1.jpg differ diff --git a/docs/assets/examples/carousel/blog-carousel-2.jpg b/docs/assets/examples/carousel/blog-carousel-2.jpg new file mode 100644 index 000000000..2631df9b4 Binary files /dev/null and b/docs/assets/examples/carousel/blog-carousel-2.jpg differ diff --git a/docs/assets/examples/carousel/blog-carousel-3.jpg b/docs/assets/examples/carousel/blog-carousel-3.jpg new file mode 100644 index 000000000..e08186bc7 Binary files /dev/null and b/docs/assets/examples/carousel/blog-carousel-3.jpg differ diff --git a/docs/assets/examples/carousel/blog-carousel-4.jpg b/docs/assets/examples/carousel/blog-carousel-4.jpg new file mode 100644 index 000000000..a96d014f2 Binary files /dev/null and b/docs/assets/examples/carousel/blog-carousel-4.jpg differ diff --git a/docs/assets/examples/carousel/blog-carousel-5.jpg b/docs/assets/examples/carousel/blog-carousel-5.jpg new file mode 100644 index 000000000..9f13d20b8 Binary files /dev/null and b/docs/assets/examples/carousel/blog-carousel-5.jpg differ diff --git a/docs/assets/examples/carousel/blog-carousel-6.jpg b/docs/assets/examples/carousel/blog-carousel-6.jpg new file mode 100644 index 000000000..30feb57e2 Binary files /dev/null and b/docs/assets/examples/carousel/blog-carousel-6.jpg differ diff --git a/docs/assets/examples/carousel/blog-carousel-7.jpg b/docs/assets/examples/carousel/blog-carousel-7.jpg new file mode 100644 index 000000000..714fd94db Binary files /dev/null and b/docs/assets/examples/carousel/blog-carousel-7.jpg differ diff --git a/docs/assets/examples/carousel/pullover-1.jpg b/docs/assets/examples/carousel/pullover-1.jpg new file mode 100644 index 000000000..397a2578f Binary files /dev/null and b/docs/assets/examples/carousel/pullover-1.jpg differ diff --git a/docs/assets/examples/carousel/pullover-2.jpg b/docs/assets/examples/carousel/pullover-2.jpg new file mode 100644 index 000000000..ac13bc945 Binary files /dev/null and b/docs/assets/examples/carousel/pullover-2.jpg differ diff --git a/docs/assets/examples/carousel/pullover-3.jpg b/docs/assets/examples/carousel/pullover-3.jpg new file mode 100644 index 000000000..7e013ec8f Binary files /dev/null and b/docs/assets/examples/carousel/pullover-3.jpg differ diff --git a/docs/assets/examples/carousel/pullover-4.jpg b/docs/assets/examples/carousel/pullover-4.jpg new file mode 100644 index 000000000..881e1085e Binary files /dev/null and b/docs/assets/examples/carousel/pullover-4.jpg differ diff --git a/docs/assets/examples/carousel/pullover-5.jpg b/docs/assets/examples/carousel/pullover-5.jpg new file mode 100644 index 000000000..9bc3a0bb9 Binary files /dev/null and b/docs/assets/examples/carousel/pullover-5.jpg differ diff --git a/docs/assets/images/patterns/article-1.jpg b/docs/assets/images/patterns/article-1.jpg new file mode 100644 index 000000000..7de0a8efb Binary files /dev/null and b/docs/assets/images/patterns/article-1.jpg differ diff --git a/docs/assets/images/patterns/article-2.jpg b/docs/assets/images/patterns/article-2.jpg new file mode 100644 index 000000000..d9c577e80 Binary files /dev/null and b/docs/assets/images/patterns/article-2.jpg differ diff --git a/docs/assets/images/patterns/article-flower.jpg b/docs/assets/images/patterns/article-flower.jpg new file mode 100644 index 000000000..441500acb Binary files /dev/null and b/docs/assets/images/patterns/article-flower.jpg differ diff --git a/docs/assets/images/patterns/bird-1.jpg b/docs/assets/images/patterns/bird-1.jpg new file mode 100644 index 000000000..d7fa8ba5a Binary files /dev/null and b/docs/assets/images/patterns/bird-1.jpg differ diff --git a/docs/assets/images/patterns/bird-2.jpg b/docs/assets/images/patterns/bird-2.jpg new file mode 100644 index 000000000..e405bc3a5 Binary files /dev/null and b/docs/assets/images/patterns/bird-2.jpg differ diff --git a/docs/assets/images/patterns/bird-3.jpg b/docs/assets/images/patterns/bird-3.jpg new file mode 100644 index 000000000..336613e81 Binary files /dev/null and b/docs/assets/images/patterns/bird-3.jpg differ diff --git a/docs/assets/images/patterns/bird-4.jpg b/docs/assets/images/patterns/bird-4.jpg new file mode 100644 index 000000000..f078ba372 Binary files /dev/null and b/docs/assets/images/patterns/bird-4.jpg differ diff --git a/docs/assets/images/patterns/coupon.jpg b/docs/assets/images/patterns/coupon.jpg new file mode 100644 index 000000000..6776355e2 Binary files /dev/null and b/docs/assets/images/patterns/coupon.jpg differ diff --git a/docs/assets/images/patterns/flower-crop-1.jpg b/docs/assets/images/patterns/flower-crop-1.jpg new file mode 100644 index 000000000..5dd644c68 Binary files /dev/null and b/docs/assets/images/patterns/flower-crop-1.jpg differ diff --git a/docs/assets/images/patterns/flower-crop-2.jpg b/docs/assets/images/patterns/flower-crop-2.jpg new file mode 100644 index 000000000..49c71c55c Binary files /dev/null and b/docs/assets/images/patterns/flower-crop-2.jpg differ diff --git a/docs/assets/images/patterns/flower-crop-3.jpg b/docs/assets/images/patterns/flower-crop-3.jpg new file mode 100644 index 000000000..c6025f861 Binary files /dev/null and b/docs/assets/images/patterns/flower-crop-3.jpg differ diff --git a/docs/assets/images/patterns/flowers-1.jpg b/docs/assets/images/patterns/flowers-1.jpg new file mode 100644 index 000000000..3ded44770 Binary files /dev/null and b/docs/assets/images/patterns/flowers-1.jpg differ diff --git a/docs/assets/images/patterns/flowers-2.jpg b/docs/assets/images/patterns/flowers-2.jpg new file mode 100644 index 000000000..fafe3ae6c Binary files /dev/null and b/docs/assets/images/patterns/flowers-2.jpg differ diff --git a/docs/assets/images/patterns/flowers-3.jpg b/docs/assets/images/patterns/flowers-3.jpg new file mode 100644 index 000000000..ce4ffe849 Binary files /dev/null and b/docs/assets/images/patterns/flowers-3.jpg differ diff --git a/docs/assets/images/patterns/gervyn-louis-IS03ajI00Fc-unsplash.jpg b/docs/assets/images/patterns/gervyn-louis-IS03ajI00Fc-unsplash.jpg new file mode 100644 index 000000000..e91c09438 Binary files /dev/null and b/docs/assets/images/patterns/gervyn-louis-IS03ajI00Fc-unsplash.jpg differ diff --git a/docs/assets/images/patterns/gervyn-louis-KXvd7y7AU6Q-unsplash.jpg b/docs/assets/images/patterns/gervyn-louis-KXvd7y7AU6Q-unsplash.jpg new file mode 100644 index 000000000..06b22e0d5 Binary files /dev/null and b/docs/assets/images/patterns/gervyn-louis-KXvd7y7AU6Q-unsplash.jpg differ diff --git a/docs/assets/images/patterns/gervyn-louis-semwwyXFQho-unsplash.jpg b/docs/assets/images/patterns/gervyn-louis-semwwyXFQho-unsplash.jpg new file mode 100644 index 000000000..7e65d7147 Binary files /dev/null and b/docs/assets/images/patterns/gervyn-louis-semwwyXFQho-unsplash.jpg differ diff --git a/docs/assets/images/patterns/gianandrea-villa-t4cSB-InqGY-unsplash.jpg b/docs/assets/images/patterns/gianandrea-villa-t4cSB-InqGY-unsplash.jpg new file mode 100644 index 000000000..39074eada Binary files /dev/null and b/docs/assets/images/patterns/gianandrea-villa-t4cSB-InqGY-unsplash.jpg differ diff --git a/docs/assets/images/patterns/mad-rabbit-tattoo-7N4FMowSGek-unsplash.jpg b/docs/assets/images/patterns/mad-rabbit-tattoo-7N4FMowSGek-unsplash.jpg new file mode 100644 index 000000000..9beb14d04 Binary files /dev/null and b/docs/assets/images/patterns/mad-rabbit-tattoo-7N4FMowSGek-unsplash.jpg differ diff --git a/docs/assets/images/sprite.svg b/docs/assets/images/sprite.svg new file mode 100644 index 000000000..217fb532c --- /dev/null +++ b/docs/assets/images/sprite.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/docs/assets/scripts/code-examples.js b/docs/assets/scripts/code-examples.js index 755e5c110..406dd96ee 100644 --- a/docs/assets/scripts/code-examples.js +++ b/docs/assets/scripts/code-examples.js @@ -19,8 +19,9 @@ document.addEventListener('click', event => { const html = `\n` + `\n\n` + + `\n\n` + `${code.textContent}`; - const css = 'body {\n font: 16px sans-serif;\n padding: 1rem;\n}'; + const css = 'body {\n font: 16px sans-serif;\n padding: 2rem;\n}'; const js = ''; const form = document.createElement('form'); diff --git a/docs/assets/scripts/color-scheme.js b/docs/assets/scripts/color-scheme.js index 17b5c5969..aa69e3d9d 100644 --- a/docs/assets/scripts/color-scheme.js +++ b/docs/assets/scripts/color-scheme.js @@ -2,35 +2,29 @@ // Color scheme selector // (() => { - function getColorScheme() { - return localStorage.getItem('colorScheme') || 'auto'; - } - - function isDark() { - if (colorScheme === 'auto') { - return window.matchMedia('(prefers-color-scheme: dark)').matches; - } - return colorScheme === 'dark'; - } - function setColorScheme(newColorScheme) { colorScheme = newColorScheme; localStorage.setItem('colorScheme', colorScheme); + const presetTheme = window.getPresetTheme(); // Update the UI updateSelection(); // Toggle the dark mode class - document.documentElement.classList.toggle('wa-theme-default-dark', isDark()); + document.documentElement.classList.toggle(`wa-theme-${presetTheme}-dark`, window.isDark()); } function updateSelection() { const menu = document.querySelector('#color-scheme-selector wa-menu'); if (!menu) return; - [...menu.querySelectorAll('wa-menu-item')].map(item => (item.checked = item.getAttribute('value') === colorScheme)); + [...menu.querySelectorAll('wa-menu-item')].forEach(async item => { + await customElements.whenDefined(item.localName); + await item.updateComplete; + item.checked = item.getAttribute('value') === colorScheme; + }); } - let colorScheme = getColorScheme(); + let colorScheme = window.getColorScheme(); // Selection is not preserved when changing page, so update when opening dropdown document.addEventListener('wa-show', event => { @@ -56,7 +50,7 @@ !event.composedPath().some(el => ['input', 'textarea'].includes(el?.tagName?.toLowerCase())) ) { event.preventDefault(); - setColorScheme(isDark() ? 'light' : 'dark'); + setColorScheme(window.isDark() ? 'light' : 'dark'); } }); diff --git a/docs/assets/scripts/preset-theme.js b/docs/assets/scripts/preset-theme.js new file mode 100644 index 000000000..5be7d3c43 --- /dev/null +++ b/docs/assets/scripts/preset-theme.js @@ -0,0 +1,86 @@ +// +// Preset theme selector +// +(() => { + function setPresetTheme(newPresetTheme) { + presetTheme = newPresetTheme; + localStorage.setItem('presetTheme', presetTheme); + + const stylesheet = document.getElementById('theme-stylesheet'); + + const newStylesheet = Object.assign(document.createElement('link'), { + href: `/dist/themes/${presetTheme}.css`, + rel: 'preload', + as: 'style' + }); + + newStylesheet.addEventListener( + 'load', + () => { + newStylesheet.rel = 'stylesheet'; + newStylesheet.id = stylesheet.id; + requestAnimationFrame(() => { + stylesheet.remove(); + }); + }, + { once: true } + ); + + document.head.append(newStylesheet); + + // Update the UI + updateSelection(); + + // Toggle the dark mode class + document.documentElement.classList.toggle(`wa-theme-${presetTheme}-dark`, window.isDark()); + } + + function updateSelection(container = document) { + const menu = container.querySelector('#preset-theme-selector wa-menu'); + if (!menu) return; + [...menu.querySelectorAll('wa-menu-item')].forEach(async item => { + const isChecked = item.getAttribute('value') === presetTheme; + if (isChecked) { + container.querySelector('#preset-theme-selector__text').textContent = item.innerText; + } + await customElements.whenDefined(item.localName); + await item.updateComplete; + item.checked = isChecked; + }); + } + + let presetTheme = window.getPresetTheme(); + + // Selection is not preserved when changing page, so update when opening dropdown + document.addEventListener('wa-show', event => { + const presetThemeSelector = event.target.closest('#preset-theme-selector'); + if (!presetThemeSelector) return; + updateSelection(); + }); + + // Listen for selections + document.addEventListener('wa-select', event => { + const menu = event.target.closest('#preset-theme-selector wa-menu'); + if (!menu) return; + setPresetTheme(event.detail.item.value); + }); + + // Update the color scheme when the preference changes + window.matchMedia('(prefers-preset-theme: dark)').addEventListener('change', () => setPresetTheme(presetTheme)); + updateSelection(); + + /** + * Without this, there's a flash of the incorrect preset theme. + */ + function updateSelectionBeforeTurboLoad(e) { + const newElement = e.detail.newBody || e.detail.newFrame || e.detail.newStream; + if (!newElement) { + return; + } + updateSelection(newElement); + } + + ['turbo:before-render', 'turbo:before-stream-render', 'turbo:before-frame-render'].forEach(eventName => { + document.addEventListener(eventName, updateSelectionBeforeTurboLoad); + }); +})(); diff --git a/docs/docs/patterns/app.md b/docs/docs/patterns/app.md index 6d97bd534..6962c3c6d 100644 --- a/docs/docs/patterns/app.md +++ b/docs/docs/patterns/app.md @@ -1,4 +1,1048 @@ --- title: App description: TODO +layout: page.njk --- + +TODO Page Description + +## Examples + +### Action Plan + +```html {.example} + +

Manage subscription

+

Lorem ipsum dolor sit amet consectetur adipisicing elit. Recusandae voluptatibus corrupti atque repudiandae nam.

+ Change Plan +
+``` + +### Feeds + +```html {.example} +
+
+ +
+ +

Kicked ass and chewed bubblegum

+ Oct. 31st +
+
+
+ +
+ +

Kicked ass and chewed bubblegum

+ Oct. 31st +
+
+
+ +
+ +

Kicked ass and chewed bubblegum

+ Oct. 31st +
+
+
+ +
+ +

Kicked ass and chewed bubblegum

+ Oct. 31st +
+
+ +
+ + +``` + +### Grid + +```html {.example} +
+
    +
  • + +
    +
    + John Carpenter + Admin +

    Master of Horror

    +
    +
    + + +
    +
    +
    +
    + + Email +
    +
    + + + Phone +
    +
    +
    +
  • +
  • + +
    +
    + Tobe Hooper + Admin +

    Master of Horror

    +
    +
    + +
    +
    +
    +
    Email
    +
    Phone
    +
    +
    +
  • +
  • + +
    +
    + George A. Romero + Admin +

    Master of Horror

    +
    +
    +
    +
    +
    +
    Email
    +
    Phone
    +
    +
    +
  • +
  • + +
    +
    + Alfred Hitchcock + Admin +

    Master of Horror

    +
    +
    + +
    +
    + +
    +
    Email
    +
    Phone
    +
    +
    +
  • +
  • + +
    +
    + Sam Raimi + Admin +

    Master of Horror

    +
    +
    + +
    +
    +
    +
    Email
    +
    Phone
    +
    +
    +
  • +
  • + +
    +
    + Wes Craven + Admin +

    Master of Horror

    +
    +
    + +
    +
    +
    +
    Email
    +
    Phone
    +
    +
    +
  • +
+
+ +``` + +## Pagination + +### Simple Pagination + +```html {.example} + +
+ +
+ +``` +### Multi Page + +```html {.example} + +
+ +
+ +``` + +## Comment Box + +```html{.example} +
+ + + + +
+ +``` + +## Description List + +```html{.example} +
+
+

Client Information

+

Personal details

+
+
+
+
Beast of Bodmin
+
A large feline inhabiting Bodmin Moor.
+
+
+
Beast of Bodmin
+
A large feline inhabiting Bodmin Moor.
+
+
+
Beast of Bodmin
+
A large feline inhabiting Bodmin Moor.
+
+
+
Beast of Bodmin
+
A large feline inhabiting Bodmin Moor.
+
+
+
+ +``` + +## FAQ/Details (WIP) + +```html{.example} +
+
+
+
Beast of Bodmin
+
A large feline inhabiting Bodmin Moor.
+
+
+
+``` + +## Pricing Tiers (WIP) + +```html{.example} +``` + +## Empty States + +### Simple + +```html{.example} +
+ +

No Project

+

Get started by one.

+ + + New Project + +
+ +``` + +### With dashed border + +```html{.example} + +
+ +

No DBs

+

Get started by creating a database.

+ +
+
+ +``` +### With starting points + +```html{.example} + +
+

Projects

+

You haven’t created a project yet. Get started by selecting a template or start from an empty project.

+
+
    +
  • +
    +
    + + Create a List + +

    Another to-do system you’ll try but eventually give up on.

    +
    +
  • +
  • +
    +
    + Create a Gallery +

    Another to-do system you’ll try but eventually give up on.

    +
    +
  • +
  • +
    +
    + Create a Spreadsheet +

    Another to-do system you’ll try but eventually give up on.

    +
    +
  • +
  • +
    +
    + Create a Timeline +

    Another to-do system you’ll try but eventually give up on.

    +
    +
  • +
  • +
    +
    + Create a Calendar +

    Another to-do system you’ll try but eventually give up on.

    +
    +
  • +
+
+ Or start from an empty project → +
+
+ +``` + +## Data Display + +### With icon + +```html{.example} +
+

Last Week

+
+
+ +
+
+ +
+

Total Subscribers

+
+
+ 71,897 + 122 +
+
+ View all +
+
+ +
+
+ +
+

Total Subscribers

+
+
+ 71,897 + 122 +
+
+ View all +
+
+
+ + +
+ +
+ +``` + +### With shared borders +```html{.example} + +
+
+
Total Subscribers
+
+
+ 71,897 + from 70,946 +
+
+ + 12% + +
+
+
+
+
Total Subscribers
+
+
+ 71,897 + from 70,946 +
+
+ + 12% + +
+
+
+ +
+
+ +``` + +## Leaderboard (Very rough WIP) +```html{.example} +
+

Collective Activity for Yesterday

+ + + + + Items Studied + +
482,813
+
+ + + + Items Mastered + +
97,303
+
+ + + + Items Mastered + +
97,303
+
+ + +
+
+ +
+ +

Study Leaders

+ items mastered last 7 days +
+
+
    +
  1. +
    + +
    Title
    + 4,500 +
    +
    +
  2. +
  3. +
    + + +
    Title
    + 4,500 +
    +
    +
  4. +
  5. +
    + +
    Title
    + 4,500 +
    +
    +
  6. +
  7. +
    + +
    Title
    + 4,500 +
    +
    +
  8. +
+
+ +
+ +``` + +## Pricing +```html{.example} +
+ +
+
Basic Plan
+ + $10 + +

per user

+

per month

+
+
+

Basic features for up to 10 users.

+ Get Started + Talk to sales +
+
+ Features +

Everything in our free plans plus...

+
    +
  • + + Access to basic features +
  • +
  • + + Basic Reporting and analytics +
  • +
  • + + Up to 10 individual users +
  • +
  • + + 20GB Individual data each user +
  • +
  • + + Basic chat and email support +
  • +
+
+
+ +
+
Business Plan Most Popular
+ + $20 + +

per user

+

per month

+
+
+

Growing teams up to 20 users.

+ Get Started + Talk to sales +
+
+ Features +

Everything in Basic plus...

+
    +
  • + + 200+ integrations +
  • +
  • + + Basic Reporting and analytics +
  • +
  • + + Up to 10 individual users +
  • +
  • + + 20GB Individual data each user +
  • +
  • + + Basic chat and email support +
  • +
+
+
+ +
+
Basic Plan
+ + $40 + +

per user

+

per month

+
+
+

Basic features for up to 10 users.

+ Get Started + Talk to sales +
+
+ Features +

Everything in our free plans plus...

+
    +
  • + + Access to basic features +
  • +
  • + + Basic Reporting and analytics +
  • +
  • + + Up to 10 individual users +
  • +
  • + + 20GB Individual data each user +
  • +
  • + + Basic chat and email support +
  • +
+
+
+
+ +``` +```html{.example} +
+ +
+ + Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna + aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. + + +
+
+
+``` +### With templates + +### With recommendations grid diff --git a/docs/docs/patterns/blog.md b/docs/docs/patterns/blog.md index 736ac9fee..9b9334c32 100644 --- a/docs/docs/patterns/blog.md +++ b/docs/docs/patterns/blog.md @@ -1,4 +1,370 @@ --- title: Blog description: TODO +layout: page.njk --- + +TODO Page Description + +## Examples + +### Hero +```html{.example} + + + +
+ +
+
+ A waterfall in the middle of a forest (by Thomas Kelly on Unsplash) +
+

Do you see any Teletubbies in here?

+
+
+ + +
+ +
+
+ A waterfall in the middle of a forest (by Thomas Kelly on Unsplash) +
+

The path of the righteous man is beset on all sides

+
+
+ + +
+ +
+
+ A waterfall in the middle of a forest (by Thomas Kelly on Unsplash) +
+

Article Title

+
+
+ + +
+ +
+
+ A waterfall in the middle of a forest (by Thomas Kelly on Unsplash) +
+

Article Title

+
+
+ + +
+ +
+
+ A waterfall in the middle of a forest (by Thomas Kelly on Unsplash) +
+

Article Title

+
+
+ +
+ +``` + +### Newsletter signup +```html{.example} + + +``` + +### Posts List +```html{.example} + +
+ Recent Articles +
+
+
+
+ +
+ Lifestyle + Your bones don't break + Jules +
+
+
+ +
+ Health + That's clear. Your cells react to bacteria + Mr. Glass +
+
+
+ +
+ Sports + Do you see any Teletubbies in here? + Nick Fury +
+
+
+ +
+ Lifestyle + Your bones don't break + Jules +
+
+
+ +
+ Lifestyle + Your bones don't break + Jules +
+
+
+
+
+ +``` + +### Related Posts +```html{.example} + + A kitten sits patiently between a terracotta pot and decorative grasses. + + Color Advancements
+ Lot of new and exciting features in web colors
+ 2d ago + +
+ Read More + +
+
+ + + + + +``` +### Article footer +```html{.example} + +``` + +## Social Share + +### Vertical +```html{.example} + + +``` + +### Horizontal +```html{.example} + + +``` \ No newline at end of file diff --git a/docs/docs/patterns/business.md b/docs/docs/patterns/business.md index 75e0cba8c..d8448f00f 100644 --- a/docs/docs/patterns/business.md +++ b/docs/docs/patterns/business.md @@ -1,4 +1,9 @@ --- title: Business description: TODO +layout: page.njk --- + +TODO Page Description + +## Examples \ No newline at end of file diff --git a/docs/docs/patterns/ecommerce-category-filter.md b/docs/docs/patterns/ecommerce-category-filter.md new file mode 100644 index 000000000..c886e4d9c --- /dev/null +++ b/docs/docs/patterns/ecommerce-category-filter.md @@ -0,0 +1,12 @@ +--- +title: E-commerce - Category Filter +description: TODO +layout: page.njk +--- + +TODO Page Description + +## With inline actions and expandable sidebar filters +```html{.example} + +``` \ No newline at end of file diff --git a/docs/docs/patterns/ecommerce-category-preview.md b/docs/docs/patterns/ecommerce-category-preview.md new file mode 100644 index 000000000..db3342252 --- /dev/null +++ b/docs/docs/patterns/ecommerce-category-preview.md @@ -0,0 +1,11 @@ +--- +title: E-commerce - Category Preview +description: TODO +layout: page.njk +--- + +TODO Page Description + +## Three Column (WIP) + +``` \ No newline at end of file diff --git a/docs/docs/patterns/ecommerce-order-history.md b/docs/docs/patterns/ecommerce-order-history.md new file mode 100644 index 000000000..1cda559e7 --- /dev/null +++ b/docs/docs/patterns/ecommerce-order-history.md @@ -0,0 +1,13 @@ +--- +title: E-commerce - Order History +description: TODO +layout: page.njk +--- + +TODO Page Description + +## Invoice panels + +```html{.example} + +``` \ No newline at end of file diff --git a/docs/docs/patterns/ecommerce-order-summmary.md b/docs/docs/patterns/ecommerce-order-summmary.md new file mode 100644 index 000000000..b506bc866 --- /dev/null +++ b/docs/docs/patterns/ecommerce-order-summmary.md @@ -0,0 +1,12 @@ +--- +title: E-commerce - Product List +description: TODO +layout: page.njk +--- + +TODO Page Description + +## With split image +```html{.example} + +``` \ No newline at end of file diff --git a/docs/docs/patterns/ecommerce-product-detail.md b/docs/docs/patterns/ecommerce-product-detail.md new file mode 100644 index 000000000..3d55f40c6 --- /dev/null +++ b/docs/docs/patterns/ecommerce-product-detail.md @@ -0,0 +1,128 @@ +--- +title: E-commerce - Product Detail +description: TODO +layout: page.njk +--- + +TODO Page Description + +## With color and size selector +```html{.example} +
+ +
+ Graphic Tank + +
+
+ +
+ $32 + 36 Reviews + + Black + White + Gray + + + Option 1 + Option 2 + Option 3 + +Medium +
+
+
+
+ +``` + +## with large selector +```html{.example} + +
+
+ +
+
+

Basic Tank

+ +
+

$32

+
+

3.9

+ + See all 512 Reviews +
+
+
+
+ + Black + Gray + + + S + M + L + XL + + Medium + View full details +
+
+
+
+
+ +``` \ No newline at end of file diff --git a/docs/docs/patterns/ecommerce-product-list.md b/docs/docs/patterns/ecommerce-product-list.md new file mode 100644 index 000000000..9979e9117 --- /dev/null +++ b/docs/docs/patterns/ecommerce-product-list.md @@ -0,0 +1,166 @@ +--- +title: E-commerce - Product Lists +description: TODO +layout: page.njk +--- + +TODO Page Description +## With Product Grid + +```html{.example} +
+
+ +
Shirt
+ + 38 Reviews +
$170
+
+
+ +
Shirt
+ + 38 Reviews +
$170
+
+
+ +
Shirt
+ + 38 Reviews +
$170
+
+
+ +
Shirt
+ + 38 Reviews +
$170
+
+
+ +``` +## Card with full details +```html{.example} +
+ + + + + + + + + + + + + + + + +
+ +``` +## With color swatches (WIP) +```html{.example} + +``` + diff --git a/docs/docs/patterns/ecommerce-product-review.md b/docs/docs/patterns/ecommerce-product-review.md new file mode 100644 index 000000000..4297fd0b0 --- /dev/null +++ b/docs/docs/patterns/ecommerce-product-review.md @@ -0,0 +1,464 @@ +--- +title: E-commerce - Product Reviews +description: TODO +layout: page.njk +--- + +TODO Page Description + +## With images grid +```html{.example} +
+ + Clothing + Men's + Shirts & Tops + +
+ + + + +
+
+

Tank top

+

The Basic Tee 6-Pack allows you to fully express your vibrant personality with three grayscale options. Feeling adventurous? Put on a heather gray tee. Want to be a trendsetter? Try our exclusive colorway: "Black". Need to add an extra pop of color to your outfit? Our white tee has you covered.

+

Highlights

+
    +
  • Hand cut and sewn locally
  • +
+ +

Highlights

+

The 6-Pack includes two black, two white, and two heather gray Basic Tees. Sign up for our subscription service and be the first to get new, exciting colors, like our upcoming "Charcoal Gray" limited release.

+ + $192 +
+ + 117 Reviews +
+ + Option 1 + Option 2 + Option 3 + + + Option 1 + Option 2 + Option 3 + + Add to Cart +
+
+ +``` + +## With Tiered Images + +```html{.example} +
+ + Clothing + Men's + Shirts & Tops + +
+
+

Basic Tee

+ $35 +
+
+ 3.9 + + 117 Reviews +
+
+ + + +
+
+ + Option 1 + Option 2 + Option 3 + + + Option 1 + Option 2 + Option 3 + + Add to Cart +

Description

+

The Basic tee is an honest new take on a classic. The tee uses super soft, pre-shrunk cotton for true comfort and a dependable fit. They are hand cut and sewn locally, with a special dye technique that gives each tee it's own look.

+

Looking to stock your closet? The Basic tee also comes in a 3-pack or 5-pack at a bundle discount.

+
+

Highlights

+
    +
  • Hand cut and sewn locally
  • +
+
+ + +

International delivery

+

Get your order in 2 years

+
+ + +

International delivery

+

Get your order in 2 years

+ +
+
+
+ +``` +## with images and expandable details + +```html {.example} + + + The sun shines on the mountains and trees (by Adam Kool on Unsplash) + + + A waterfall in the middle of a forest (by Thomas Kelly on Unsplash) + + + The sun is setting over a lavender field (by Leonard Cotte on Unsplash) + + + A field of grass with the sun setting in the background (by Sapan Patel on Unsplash) + + + A scenic view of a mountain with clouds rolling in (by V2osk on Unsplash) + + + +
+
+ Thumbnail by 1 + Thumbnail by 2 + Thumbnail by 3 + Thumbnail by 4 + Thumbnail by 5 +
+
+
+

Pullover Sweater

+ $140 + +

The Zip Tote Basket is the perfect midpoint between shopping tote and comfy backpack. With convertible straps, you can hand carry, should sling, or backpack this convenient and spacious bag. The zip top and durable canvas construction keeps your goods protected for all-day use.

+ + + + + +
+ Add to cart + +
+
+ + Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna + aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. + + + + Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna + aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. + + + + Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna + aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. + +
+
+ + + + +``` + +## Split with image + +```html {.example} +
+
+ + Clothing + Men's + Shirts & Tops + +

Everyday Ruck Snack

+ + $220 | + + 1624 reviews + +

Don't compromise on snack-carrying capacity with this lightweight and spacious bag. The drawstring top keeps all your favorite chips, crisps, fries, biscuits, crackers, and cookies secure.

+ In stock and ready to ship + + +
+
+ +
+
+ + Option 1 + Option 2 + Option 3 + +
+
+ +``` +## With tabs + +```html{.example} +
+ +

Application UI Icon Pack

+ Sample of 30 icons with friendly and fun details in outline, filled, and brand color styles. +

The Application UI Icon Pack comes with over 200 icons in 3 styles: outline, filled, and branded. This playful icon pack is tailored for complex application user interfaces with a friendly and legible look.

+ Brand + +Success +
+

Highlights

+
    +
  • 200+ SVG icons in 3 unique styles
  • +
  • Compatible with Figma, Sketch, and Adobe XD
  • +
  • Drawn on 24 x 24 pixel grid
  • +
+
+

License

+

For personal and professional use. You cannot resell or redistribute these icons in their original or modified state. Read full license

+
+

Share

+ + + + + + + General + Custom + Advanced + Disabled + + +
+
+

Hector Gibbons

+

July 12, 2021

+ +

Blown away by how polished this icon pack is. Everything looks so consistent and each SVG is optimized out of the box so I can use it directly with confidence. It would take me several hours to create a single icon this good, so it's a steal at this price.

+
+
+ This is the custom tab panel. + This is the advanced tab panel. + This is a disabled tab panel. +
+ +
+ +``` diff --git a/docs/docs/patterns/ecommerce-shopping-cart.md b/docs/docs/patterns/ecommerce-shopping-cart.md new file mode 100644 index 000000000..73725143b --- /dev/null +++ b/docs/docs/patterns/ecommerce-shopping-cart.md @@ -0,0 +1,9 @@ +--- +title: E-commerce - Shopping Cart +description: TODO +layout: page.njk +--- + +TODO Page Description + +## Examples \ No newline at end of file diff --git a/docs/docs/patterns/ecommerce.md b/docs/docs/patterns/ecommerce.md index 29d5298f0..a68056e64 100644 --- a/docs/docs/patterns/ecommerce.md +++ b/docs/docs/patterns/ecommerce.md @@ -8,16 +8,133 @@ TODO Page Description ## Examples +## Coupon + +```html{.example} + +
+ +
+ help us start you off on the right foot. +

Get 15% Off...*

+

...your first online order when you signup for emails.

+ +
What would you link like people to call you?
+
+ Email me discount +

*The path of the righteous man is beset on all sides by the iniquities of the selfish and the tyranny of evil men. Blessed is he who, in the name of charity and good will, shepherds the weak through the valley of darkness, for he is truly his brother's keeper and the finder of lost children. And I will strike down upon thee with great vengeance and furious anger those who would attempt to poison and destroy My brothers. And you will know My name is the Lord when I lay My vengeance upon thee.

+
+
+
+ +Open Dialog + + + + +``` + +## Mega Menu + +```html{.example} + + Shop + +
+ Shop by Department + Mens + Womens + Kids + + Infants + + Newborns + 6 Months + 12 Months + + + Big & Tall +
+
+ Shop by Category + Shirts + Pants + Shoes +
+ +
+ Just Arrived + + + + + + + + + + + +
+ + + +
+

footer with something cool in it

+ Signup now +
+ +
+ +
+ + +
+ +``` ### Slide Over ```html {.example} - +
Shopping Cart
- +
AJ1 @@ -31,7 +148,7 @@ TODO Page Description
- +
The Trails @@ -45,7 +162,7 @@ TODO Page Description
- +
Outcast @@ -120,7 +237,7 @@ TODO Page Description

Shopping Cart

- +
@@ -144,7 +261,7 @@ TODO Page Description
- +
@@ -168,7 +285,7 @@ TODO Page Description
- +
@@ -194,7 +311,7 @@ TODO Page Description
- +
Order Summary @@ -224,6 +341,9 @@ TODO Page Description ``` -### Product Quickview + + +### With Carousel + +```html {.example} + + + The sun shines on the mountains and trees (by Adam Kool on Unsplash) + + + A waterfall in the middle of a forest (by Thomas Kelly on Unsplash) + + + The sun is setting over a lavender field (by Leonard Cotte on Unsplash) + + + A field of grass with the sun setting in the background (by Sapan Patel on Unsplash) + + + A scenic view of a mountain with clouds rolling in (by V2osk on Unsplash) + + + +
+
+ Thumbnail by 1 + Thumbnail by 2 + Thumbnail by 3 + Thumbnail by 4 + Thumbnail by 5 +
+
+
+

Pullover Sweater

+ $140 + +

The Zip Tote Basket is the perfect midpoint between shopping tote and comfy backpack. With convertible straps, you can hand carry, should sling, or backpack this convenient and spacious bag. The zip top and durable canvas construction keeps your goods protected for all-day use.

+ + Black + + White + Gray + +
+ Add to cart + +
+
+ + Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna + aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. + + + + Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna + aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. + + + + Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna + aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. + +
+
+ + + + + ``` ### Product Review @@ -423,21 +731,21 @@ TODO Page Description
-
+
Mark Henry

I initially had my doubts, but once I got the widgets and played around with them, I became a believer.

-
+
Liz Michaels

I'd definitely but these again.

-
+
Todd Smith @@ -447,6 +755,21 @@ TODO Page Description
+ + ``` ### Order History @@ -475,7 +798,7 @@ TODO Page Description
- +
Kitchen Stool @@ -490,7 +813,7 @@ TODO Page Description
- +
Succulent @@ -505,7 +828,7 @@ TODO Page Description
- +
French Roast @@ -522,6 +845,9 @@ TODO Page Description
@@ -586,7 +912,7 @@ TODO Page Description

Order Summary

- +
Dolce Runners @@ -607,7 +933,7 @@ TODO Page Description
- +
Dunk High @@ -628,7 +954,7 @@ TODO Page Description
- +
NB Runner @@ -671,6 +997,7 @@ TODO Page Description img { grid-column: 1/4; + width: 100%; } .summary-item-info { diff --git a/docs/docs/patterns/education.md b/docs/docs/patterns/education.md new file mode 100644 index 000000000..d8448f00f --- /dev/null +++ b/docs/docs/patterns/education.md @@ -0,0 +1,9 @@ +--- +title: Business +description: TODO +layout: page.njk +--- + +TODO Page Description + +## Examples \ No newline at end of file diff --git a/docs/docs/patterns/entertainement.md b/docs/docs/patterns/entertainement.md index 801d85ad5..12a4789e6 100644 --- a/docs/docs/patterns/entertainement.md +++ b/docs/docs/patterns/entertainement.md @@ -1,4 +1,9 @@ --- title: Entertainment description: TODO +layout: page.njk --- + +TODO Page Description + +## Examples \ No newline at end of file diff --git a/docs/docs/patterns/index.md b/docs/docs/patterns/index.md new file mode 100644 index 000000000..abf73e782 --- /dev/null +++ b/docs/docs/patterns/index.md @@ -0,0 +1,5 @@ +--- +title: Patterns +description: Browse the library of customizable, framework-friendly web components included in Web Awesome. +layout: page-outline +--- \ No newline at end of file diff --git a/docs/docs/patterns/membership.md b/docs/docs/patterns/membership.md index 7e3e13642..ce4362f33 100644 --- a/docs/docs/patterns/membership.md +++ b/docs/docs/patterns/membership.md @@ -1,4 +1,9 @@ --- title: Membership description: TODO +layout: page.njk --- + +TODO Page Description + +## Examples \ No newline at end of file diff --git a/docs/docs/patterns/news.md b/docs/docs/patterns/news.md index f5a30fcdf..b4cb07f9d 100644 --- a/docs/docs/patterns/news.md +++ b/docs/docs/patterns/news.md @@ -1,4 +1,160 @@ --- title: News description: TODO +layout: page.njk --- + +TODO Page Description + +## Examples +### Paywall + +```html{.example} +
+ + Register + Already a subscriber? Login + + +Open Paywall + + + +
+``` +## Related articles +```html{.example} +
+ +
+
+ +

Title

+

Well, the way they make shows is, they make one show. That show's called a pilot.

+ + sub-title +
+
+
+ + +

Normally, both your asses would be dead as fucking fried chicken.

+ + sub-title +
+
+ + +

Besides, I've already been through too much shit this morning over this case to hand it over to your dumb ass.

+ + sub-title +
+
+
+
+
+``` + +## Footer +```html{.example} + + +``` \ No newline at end of file diff --git a/docs/docs/patterns/non-profit.md b/docs/docs/patterns/non-profit.md index bce00817d..499c9af15 100644 --- a/docs/docs/patterns/non-profit.md +++ b/docs/docs/patterns/non-profit.md @@ -1,4 +1,9 @@ --- title: Non-profit description: TODO +layout: page.njk --- + +TODO Page Description + +## Examples \ No newline at end of file diff --git a/docs/docs/patterns/portfilio.md b/docs/docs/patterns/portfilio.md new file mode 100644 index 000000000..d8448f00f --- /dev/null +++ b/docs/docs/patterns/portfilio.md @@ -0,0 +1,9 @@ +--- +title: Business +description: TODO +layout: page.njk +--- + +TODO Page Description + +## Examples \ No newline at end of file diff --git a/docs/docs/patterns/portfolio.md b/docs/docs/patterns/portfolio.md index e5275586c..fd366aff2 100644 --- a/docs/docs/patterns/portfolio.md +++ b/docs/docs/patterns/portfolio.md @@ -1,4 +1,9 @@ --- title: Portfolio description: TODO +layout: page.njk --- + +TODO Page Description + +## Examples \ No newline at end of file diff --git a/docs/docs/patterns/product-landing.md b/docs/docs/patterns/product-landing.md index a75be52fa..07e24f70c 100644 --- a/docs/docs/patterns/product-landing.md +++ b/docs/docs/patterns/product-landing.md @@ -1,4 +1,9 @@ --- title: Product Landing description: TODO +layout: page.njk --- + +TODO Page Description + +## Examples \ No newline at end of file diff --git a/docs/src/env.d.ts b/docs/src/env.d.ts new file mode 100644 index 000000000..9c03f0a2c --- /dev/null +++ b/docs/src/env.d.ts @@ -0,0 +1,2 @@ +/// +///