maverick-wave 4.21.0 → 4.23.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/skills/maverick-wave/SKILL.md +9 -7
- package/.claude/skills/maverick-wave/references/components.md +85 -0
- package/.claude/skills/maverick-wave/references/layout.md +30 -7
- package/.claude/skills/maverick-wave/references/theming.md +1 -1
- package/.github/workflows/ci.yml +1 -1
- package/.prettierignore +2 -0
- package/CHANGELOG.md +17 -0
- package/CLAUDE.md +7 -4
- package/gulpfile.js +4 -4
- package/index.html +40 -0
- package/maverick-wave.min.css +3 -3
- package/package.json +3 -3
- package/release.sh +1 -1
- package/scripts/verify.js +15 -0
- package/src/assets/images/gallery-city.svg +49 -0
- package/src/assets/images/gallery-desert.svg +25 -0
- package/src/assets/images/gallery-forest.svg +46 -0
- package/src/assets/images/gallery-lake.svg +26 -0
- package/src/assets/images/gallery-mountain.svg +19 -0
- package/src/assets/images/gallery-ocean.svg +26 -0
- package/src/assets/images/gallery-oldtown.svg +41 -0
- package/src/assets/images/gallery-snow.svg +39 -0
- package/src/assets/images/slider-field.svg +124 -0
- package/src/assets/images/slider-forest.svg +33 -0
- package/src/assets/images/slider-lake.svg +35 -0
- package/src/assets/images/slider-mountains.svg +29 -0
- package/src/assets/images/slider-trees.svg +41 -0
- package/src/assets/images/tile-analytics.svg +22 -0
- package/src/assets/images/tile-cloud.svg +19 -0
- package/src/assets/images/tile-ecommerce.svg +14 -0
- package/src/assets/images/tile-enterprise.svg +22 -0
- package/src/assets/images/tile-marketing.svg +16 -0
- package/src/assets/media/demo-chime.wav +0 -0
- package/src/partials/announcement-container.html +67 -0
- package/src/partials/content-slider-container.html +5 -17
- package/src/partials/gallery-container.html +8 -8
- package/src/partials/home-container.html +11 -20
- package/src/partials/media-container.html +27 -0
- package/src/partials/prose-container.html +43 -0
- package/src/partials/testimonials-container.html +82 -0
- package/src/partials/tiles-container.html +5 -20
- package/src/scss/base/_base.scss +7 -1
- package/src/scss/components/_announcement.scss +84 -0
- package/src/scss/components/_index.scss +4 -0
- package/src/scss/components/_media.scss +26 -0
- package/src/scss/components/_prose.scss +42 -0
- package/src/scss/components/_testimonial.scss +58 -0
- package/src/scss/layout/_grid.scss +39 -0
- package/src/scss/layout/_main.scss +9 -1
- package/src/scss/layout/_section.scss +14 -0
- package/src/scss/utilities/_index.scss +1 -0
- package/src/scss/utilities/_reveal.scss +34 -0
- package/src/scss/utilities/_touch-targets.scss +10 -2
|
@@ -215,7 +215,8 @@ feature frame) ·
|
|
|
215
215
|
`mw-rating` · `mw-meta-header` · `mw-stepper` · `mw-timeline-big` /
|
|
216
216
|
`mw-timeline-simple`
|
|
217
217
|
|
|
218
|
-
**Feedback** `mw-alert` · `mw-toast-stack` · `mw-
|
|
218
|
+
**Feedback** `mw-alert` · `mw-toast-stack` · `mw-announcement` (+ `-content`,
|
|
219
|
+
`-highlight`, `-static`, color variants) · `mw-empty-state` ·
|
|
219
220
|
`mw-spinner-border` / `mw-spinner-dots` / `mw-spinner-dual-ring` · `mw-skeleton`
|
|
220
221
|
|
|
221
222
|
**Navigation** `mw-header` + `mw-navbar` · `mw-breadcrumbs` · `mw-pagination` ·
|
|
@@ -223,9 +224,10 @@ feature frame) ·
|
|
|
223
224
|
`-caret`, `-end`, `-up`) · `mw-section-nav` (`references/layout.md`)
|
|
224
225
|
|
|
225
226
|
**Media & content** `mw-avatar` (+ `initials`, `group`) · `mw-gallery` ·
|
|
226
|
-
`mw-image-slider` · `mw-blog-post` · `mw-
|
|
227
|
-
`
|
|
228
|
-
`mw-
|
|
227
|
+
`mw-image-slider` · `mw-blog-post` · `mw-testimonial` (+ `-source`, `-detail`,
|
|
228
|
+
`-featured`) · `mw-prose` · `mw-media` (+ `-caption`) · `mw-code-block` /
|
|
229
|
+
`mw-terminal` · `mw-techstack-bucket` · `mw-coming-soon` · `mw-divider` ·
|
|
230
|
+
`mw-kbd` · `mw-list` family
|
|
229
231
|
|
|
230
232
|
**Forms** (`references/forms.md`) `mw-field` · `mw-input` · `mw-select` ·
|
|
231
233
|
`mw-textarea` · `mw-checkbox` · `mw-radio` · `mw-toggle` · `mw-slider` ·
|
|
@@ -233,8 +235,8 @@ feature frame) ·
|
|
|
233
235
|
`mw-form-actions` · `mw-login`
|
|
234
236
|
|
|
235
237
|
**Layout** (`references/layout.md`) `mw-main` · `mw-container` · `mw-content` ·
|
|
236
|
-
`mw-section`
|
|
237
|
-
`mw-footer`
|
|
238
|
+
`mw-section` (+ `mw-section-intro`) · `mw-page-header` · `mw-grid-*` ·
|
|
239
|
+
`mw-columns-2/3` · `mw-row-split` · `mw-hero` · `mw-footer`
|
|
238
240
|
|
|
239
241
|
**Utilities** (`references/layout.md`) `mw-sr-only` / `mw-sr-only-focusable` /
|
|
240
242
|
`mw-skip-link` · `mw-row-split` (+ `center`) · `mw-text-numeric` /
|
|
@@ -244,7 +246,7 @@ feature frame) ·
|
|
|
244
246
|
`mw-corner-plain` ·
|
|
245
247
|
`mw-aspect-square|video|wide|portrait|photo` · `mw-d-{sm,md,lg,xl}-*` /
|
|
246
248
|
`mw-hide-mobile` / `mw-hide-desktop` · `mw-overflow-*` / `mw-snap-x` ·
|
|
247
|
-
spacing, flex, display, text
|
|
249
|
+
`mw-reveal` · spacing, flex, display, text
|
|
248
250
|
|
|
249
251
|
## Pitfalls
|
|
250
252
|
|
|
@@ -636,6 +636,32 @@ class), `-top-center`, `-bottom-right`. Width is capped at
|
|
|
636
636
|
the entry animation respects `prefers-reduced-motion`. Auto-dismiss is the
|
|
637
637
|
application's job.
|
|
638
638
|
|
|
639
|
+
## Announcement
|
|
640
|
+
|
|
641
|
+
The ribbon glued under the fixed header - a discount, a launch note, a
|
|
642
|
+
maintenance window. One per page.
|
|
643
|
+
|
|
644
|
+
```html
|
|
645
|
+
<aside class="mw-announcement mw-announcement-secondary">
|
|
646
|
+
<a class="mw-announcement-content" href="#pricing">
|
|
647
|
+
<span class="mw-announcement-highlight">-20 %</span>
|
|
648
|
+
<span>Summer discount on all coachings until 06.09.</span>
|
|
649
|
+
</a>
|
|
650
|
+
</aside>
|
|
651
|
+
```
|
|
652
|
+
|
|
653
|
+
Positioned fixed below the header and one z-index layer under it, and it stays
|
|
654
|
+
there - the page scrolls beneath it. Variants: `mw-announcement-secondary`,
|
|
655
|
+
`-success`, `-warning`, `-danger`, `-info` (primary is the default).
|
|
656
|
+
`mw-announcement-highlight` is the pill in front of the text; the content
|
|
657
|
+
element is usually an `<a>` but a plain `<div>` works.
|
|
658
|
+
`mw-announcement-static` puts the ribbon into the document flow instead - it
|
|
659
|
+
then scrolls with the content and shifts no anchor offset.
|
|
660
|
+
|
|
661
|
+
The height lives in `--mw-announcement-height` and drives the anchor scroll
|
|
662
|
+
offset (`scroll-padding-top`) automatically - a taller ribbon raises the token
|
|
663
|
+
instead of fighting the offset.
|
|
664
|
+
|
|
639
665
|
## Empty state
|
|
640
666
|
|
|
641
667
|
```html
|
|
@@ -1561,6 +1587,65 @@ current button carry `active`.
|
|
|
1561
1587
|
`mw-blog-post-content-markdown` styles unclassed HTML - the target for rendered
|
|
1562
1588
|
markdown. `mw-blog-post-content` is the same wrapper for hand-written markup.
|
|
1563
1589
|
|
|
1590
|
+
## Testimonial
|
|
1591
|
+
|
|
1592
|
+
A quote card with its source - a voice about the product. A `figure`, because
|
|
1593
|
+
quote and attribution belong together:
|
|
1594
|
+
|
|
1595
|
+
```html
|
|
1596
|
+
<figure class="mw-testimonial">
|
|
1597
|
+
<blockquote>
|
|
1598
|
+
The workshop picked me up after a long day of talking.
|
|
1599
|
+
</blockquote>
|
|
1600
|
+
<figcaption class="mw-testimonial-source">
|
|
1601
|
+
Anna M. <span class="mw-testimonial-detail">· voice workshop</span>
|
|
1602
|
+
</figcaption>
|
|
1603
|
+
</figure>
|
|
1604
|
+
```
|
|
1605
|
+
|
|
1606
|
+
The card carries the surface, so inside it the blockquote drops most of its
|
|
1607
|
+
tint and keeps only the edge and the quotation marks. `mw-testimonial-source`
|
|
1608
|
+
uses `margin-top: auto` - in a grid of equal-height cards every source line
|
|
1609
|
+
sits on its card's bottom edge. `mw-testimonial-featured` sets the quote a
|
|
1610
|
+
size larger, for the one voice lifted above the grid.
|
|
1611
|
+
|
|
1612
|
+
For a wall of testimonials of unequal length, put them in `mw-columns-2` or
|
|
1613
|
+
`mw-columns-3` (`references/layout.md`) instead of a grid.
|
|
1614
|
+
|
|
1615
|
+
## Prose
|
|
1616
|
+
|
|
1617
|
+
Long-form running text - a legal page, terms, a plain article. One class on
|
|
1618
|
+
the container, bare `h2`/`h3`/`p`/`ul` inside:
|
|
1619
|
+
|
|
1620
|
+
```html
|
|
1621
|
+
<div class="mw-card mw-card-simple mw-prose">
|
|
1622
|
+
<h2>1. Scope</h2>
|
|
1623
|
+
<p>...</p>
|
|
1624
|
+
<h2>2. Contact</h2>
|
|
1625
|
+
<p>...</p>
|
|
1626
|
+
</div>
|
|
1627
|
+
```
|
|
1628
|
+
|
|
1629
|
+
Headings are deliberately small (`lg`/`md`, primary ink) - in a document they
|
|
1630
|
+
structure the reading rather than compete with the page title. First and last
|
|
1631
|
+
child lose their outer margins, so the container's own padding rules.
|
|
1632
|
+
|
|
1633
|
+
## Media
|
|
1634
|
+
|
|
1635
|
+
Self-hosted audio and video. The native controls are the player -
|
|
1636
|
+
`accent-color` already brands them - the wrapper only makes the element sit
|
|
1637
|
+
right:
|
|
1638
|
+
|
|
1639
|
+
```html
|
|
1640
|
+
<div class="mw-media">
|
|
1641
|
+
<video src="/media/intro.mp4" controls preload="metadata"></video>
|
|
1642
|
+
<p class="mw-media-caption">Two minutes about how a session works.</p>
|
|
1643
|
+
</div>
|
|
1644
|
+
```
|
|
1645
|
+
|
|
1646
|
+
`audio` and `video` become full-width blocks; a video also gets the surface
|
|
1647
|
+
silhouette and a resting shadow. Works with `<audio controls>` the same way.
|
|
1648
|
+
|
|
1564
1649
|
## Code & terminal
|
|
1565
1650
|
|
|
1566
1651
|
```html
|
|
@@ -162,13 +162,14 @@ viewport, so keep long tooltips off the outermost elements.
|
|
|
162
162
|
|
|
163
163
|
## Sections
|
|
164
164
|
|
|
165
|
-
| Class | Use
|
|
166
|
-
| ----------------------------------- |
|
|
167
|
-
| `mw-section` | Vertical rhythm for a page band - `--mw-section-padding-block`, 1.75rem
|
|
168
|
-
| `mw-section-alternate` | Diagonal pattern background; combine with `mw-section`
|
|
169
|
-
| `mw-section-title` | Centered `3xl` heading with a decorative primary underline - landing pages
|
|
170
|
-
| `mw-section-
|
|
171
|
-
| `mw-section-
|
|
165
|
+
| Class | Use |
|
|
166
|
+
| ----------------------------------- | -------------------------------------------------------------------------------------------------------------- |
|
|
167
|
+
| `mw-section` | Vertical rhythm for a page band - `--mw-section-padding-block`, 3.3rem (2.5rem below `md`, 1.75rem below `sm`) |
|
|
168
|
+
| `mw-section-alternate` | Diagonal pattern background; combine with `mw-section` |
|
|
169
|
+
| `mw-section-title` | Centered `3xl` heading with a decorative primary underline - landing pages |
|
|
170
|
+
| `mw-section-intro` | The lead paragraph under a section title - centred, muted, 46rem measure |
|
|
171
|
+
| `mw-section-subtitle` | Centered `2xl` heading with a thin secondary underline |
|
|
172
|
+
| `mw-section-nav` + `mw-section-btn` | Centered, wrapping row of outline-style jump links |
|
|
172
173
|
|
|
173
174
|
```html
|
|
174
175
|
<section class="mw-section mw-section-alternate">
|
|
@@ -303,6 +304,21 @@ Every one of them has a `-lg` twin with a wider gap (2.5rem instead of 1.35rem):
|
|
|
303
304
|
| `mw-grid-stack-stretch` | full width (same result as `mw-grid-1`) |
|
|
304
305
|
| `mw-grid-stack-lg`, `mw-grid-stack-center-lg` | wide-gap twins |
|
|
305
306
|
|
|
307
|
+
**Masonry columns** - `mw-columns-2` and `mw-columns-3`, for cards of unequal
|
|
308
|
+
height where a row grid tears a gap under every short one. CSS multi-column:
|
|
309
|
+
the children flow into columns and close up, the count steps down with the
|
|
310
|
+
viewport (3 → 2 below `lg`, → 1 below `sm`), and every child keeps
|
|
311
|
+
`break-inside: avoid` so a break never lands mid-card. Reading order runs top
|
|
312
|
+
to bottom, then across - right for testimonials and galleries, wrong for
|
|
313
|
+
anything ranked or chronological.
|
|
314
|
+
|
|
315
|
+
```html
|
|
316
|
+
<div class="mw-columns-3">
|
|
317
|
+
<figure class="mw-testimonial">...</figure>
|
|
318
|
+
<figure class="mw-testimonial">...</figure>
|
|
319
|
+
</div>
|
|
320
|
+
```
|
|
321
|
+
|
|
306
322
|
## Utilities
|
|
307
323
|
|
|
308
324
|
**Spacing** - margin `mw-m-*`, `mw-mt-*`, `mw-mb-*`, `mw-ml-*`, `mw-mr-*`,
|
|
@@ -340,6 +356,13 @@ with it; `mw-text-capitalize` is the plain transform.
|
|
|
340
356
|
**Elevation** - `mw-elevation-0` through `-5`, the same ramp every component
|
|
341
357
|
uses. See the scale table in `SKILL.md`. Never hand-roll a `box-shadow`.
|
|
342
358
|
|
|
359
|
+
**Scroll entrance** - `mw-reveal` lets a block rise briefly as it scrolls into
|
|
360
|
+
view, driven by the browser's scroll timeline (`animation-timeline: view()`) -
|
|
361
|
+
no JavaScript, no observer. Doubly guarded: `prefers-reduced-motion` turns it
|
|
362
|
+
off, and a browser without scroll timelines renders the block in place instead
|
|
363
|
+
of leaving it invisible. Put it on section content, not on the section itself -
|
|
364
|
+
a screen-high band finishes its entrance before its content is halfway up.
|
|
365
|
+
|
|
343
366
|
**Corner accent** - `mw-corner-plain` drops the accent arc that sits on the
|
|
344
367
|
two round corners of every card, panel, modal, tile, accordion, calendar,
|
|
345
368
|
pagination and login box. Everything else stays: the radii, the border, the
|
|
@@ -77,7 +77,7 @@ Safari 16.4+, Firefox 128+. The same range is declared as `browserslist` in
|
|
|
77
77
|
| `--mw-table-scroll-height` | Per-table height cap for `mw-table-responsive-scroll` |
|
|
78
78
|
| `--mw-kanban-background`, `--mw-kanban-lane-border`, `--mw-kanban-column-min-height` | Per-board surface, lane border and lane floor (120px, 90px on `mw-kanban-compact`) |
|
|
79
79
|
| `--mw-container-gutter`, `--mw-container-width` | Page gutter of `mw-container` (fluid `clamp(1rem, 4.2vw + 0.5rem, 4rem)`, never below the safe-area inset) and the width derived from it (`min(1200px, 100% - 2 * gutter)`) |
|
|
80
|
-
| `--mw-section-padding-block` | Top/bottom rhythm of `mw-section` (1.75rem)
|
|
80
|
+
| `--mw-section-padding-block` | Top/bottom rhythm of `mw-section` (3.3rem, stepping down to 2.5rem below `md` and 1.75rem below `sm`) |
|
|
81
81
|
| `--mw-calendar-dot` | Colour of a single calendar dot - set it per dot or per cell; the `mw-calendar-dot-*` classes are presets for it |
|
|
82
82
|
| `--mw-scroll-hint-cover` | Colour the scroll hint on a tab bar fades into. Preset to the page, re-pointed to the card background inside `mw-card`, `mw-panel`, `mw-modal`, `mw-tile`, `mw-calendar` |
|
|
83
83
|
| `--mw-elevation-1` … `-5` | Every shadow in the framework. Two layers per level - contact plus ambient. Never write a `box-shadow` by hand: a hand-rolled one is the wrong colour in one of the two themes |
|
package/.github/workflows/ci.yml
CHANGED
package/.prettierignore
CHANGED
package/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,23 @@ Patch releases are only for test purposes - here I only document major and minor
|
|
|
6
6
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
7
7
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
8
8
|
|
|
9
|
+
## [4.23.0] - 2026-09-01
|
|
10
|
+
|
|
11
|
+
### Changed
|
|
12
|
+
|
|
13
|
+
- Technical updates
|
|
14
|
+
|
|
15
|
+
## [4.22.0] - 2026-09-01
|
|
16
|
+
|
|
17
|
+
### Added
|
|
18
|
+
|
|
19
|
+
- `mw-announcement` - the ribbon under the fixed header (discount, launch note), with `-content`, `-highlight` pill, color variants, a `-static` in-flow variant and `--mw-announcement-height` driving the anchor scroll offset
|
|
20
|
+
- `mw-testimonial` - quote card with `-source`, `-detail` and `-featured`, built for walls of voices
|
|
21
|
+
- `mw-prose` - long-form running text container (legal pages, terms, articles): bare h2/h3/p/ul inside, no utility chains
|
|
22
|
+
- `mw-section-intro` - the lead paragraph under a `mw-section-title`
|
|
23
|
+
- `mw-reveal` - scroll entrance via `animation-timeline: view()`, guarded for reduced motion and older browsers
|
|
24
|
+
- `mw-media` - self-hosted audio and video sit full width, video in the surface silhouette
|
|
25
|
+
|
|
9
26
|
## [4.21.0] - 2026-08-31
|
|
10
27
|
|
|
11
28
|
### Fixed
|
package/CLAUDE.md
CHANGED
|
@@ -12,9 +12,12 @@ MaverickWave is a lightweight, modern CSS framework providing a grid system, 25+
|
|
|
12
12
|
npm start # Build + watch for changes (development)
|
|
13
13
|
npm run build # Clean dist, then full build
|
|
14
14
|
npm run showcase # Serve built dist on http://localhost:8888
|
|
15
|
-
npm run clean # Remove dist/
|
|
16
|
-
npm run format #
|
|
17
|
-
npm run
|
|
15
|
+
npm run clean # Remove dist/ (never touches the root release files)
|
|
16
|
+
npm run format # Check formatting of SCSS, JS, JSON, HTML, MD (used by CI)
|
|
17
|
+
npm run format:fix # Format all files with Prettier
|
|
18
|
+
npm run verify # Consistency checks between built CSS, markup and docs
|
|
19
|
+
npm run prepack # Build minified maverick-wave.min.{css,js} in project root
|
|
20
|
+
# (runs automatically before npm pack / npm publish)
|
|
18
21
|
```
|
|
19
22
|
|
|
20
23
|
There are no test or lint scripts.
|
|
@@ -46,7 +49,7 @@ There are no test or lint scripts.
|
|
|
46
49
|
|
|
47
50
|
## Code Formatting
|
|
48
51
|
|
|
49
|
-
Prettier is the single formatter. Config (`.prettierrc.json`): single quotes, 80-char print width, 2-space tabs, semicolons, trailing commas (ES5). Run `npm run format` before committing.
|
|
52
|
+
Prettier is the single formatter. Config (`.prettierrc.json`): single quotes, 80-char print width, 2-space tabs, semicolons, trailing commas (ES5). Run `npm run format:fix` before committing.
|
|
50
53
|
|
|
51
54
|
## Commit Convention
|
|
52
55
|
|
package/gulpfile.js
CHANGED
|
@@ -135,11 +135,11 @@ gulp.task('inject-build-info', function () {
|
|
|
135
135
|
.pipe(gulp.dest(paths.dist));
|
|
136
136
|
});
|
|
137
137
|
|
|
138
|
-
// clean - remove dist
|
|
138
|
+
// clean - remove dist only. The root maverick-wave.min.* files are committed
|
|
139
|
+
// release artifacts - deleting them here once shipped a broken npm package
|
|
140
|
+
// (4.22.0) because a plain build before publish wiped them.
|
|
139
141
|
gulp.task('clean', async function () {
|
|
140
|
-
await deleteAsync(['dist',
|
|
141
|
-
force: true,
|
|
142
|
-
});
|
|
142
|
+
await deleteAsync(['dist'], { force: true });
|
|
143
143
|
});
|
|
144
144
|
|
|
145
145
|
// Watch for changes
|
package/index.html
CHANGED
|
@@ -150,6 +150,10 @@
|
|
|
150
150
|
<section id="foundations" class="mw-section">
|
|
151
151
|
<div class="mw-container">
|
|
152
152
|
<h2 class="mw-section-title">Foundations</h2>
|
|
153
|
+
<p class="mw-section-intro">
|
|
154
|
+
The raw material - type, color, spacing and the small utilities
|
|
155
|
+
everything else is built from.
|
|
156
|
+
</p>
|
|
153
157
|
<nav class="mw-section-nav">
|
|
154
158
|
<a href="#typography" class="mw-section-btn">Typography</a>
|
|
155
159
|
<a href="#colors" class="mw-section-btn">Main Colors</a>
|
|
@@ -197,6 +201,10 @@
|
|
|
197
201
|
<section id="layout" class="mw-section mw-section-alternate">
|
|
198
202
|
<div class="mw-container">
|
|
199
203
|
<h2 class="mw-section-title">Layout</h2>
|
|
204
|
+
<p class="mw-section-intro">
|
|
205
|
+
The bones of a page - grids, cards, panels and the containers that
|
|
206
|
+
hold content together.
|
|
207
|
+
</p>
|
|
200
208
|
<nav class="mw-section-nav">
|
|
201
209
|
<a href="#grid" class="mw-section-btn">Grid System</a>
|
|
202
210
|
<a href="#cards" class="mw-section-btn">Cards</a>
|
|
@@ -264,6 +272,10 @@
|
|
|
264
272
|
<section id="components" class="mw-section">
|
|
265
273
|
<div class="mw-container">
|
|
266
274
|
<h2 class="mw-section-title">Components</h2>
|
|
275
|
+
<p class="mw-section-intro">
|
|
276
|
+
The everyday parts - buttons, tags, alerts and their many friends,
|
|
277
|
+
ready to drop in.
|
|
278
|
+
</p>
|
|
267
279
|
<nav class="mw-section-nav">
|
|
268
280
|
<a href="#buttons" class="mw-section-btn">Buttons</a>
|
|
269
281
|
<a href="#button-bar" class="mw-section-btn">Button Bar</a>
|
|
@@ -277,6 +289,7 @@
|
|
|
277
289
|
<a href="#ratings" class="mw-section-btn">Ratings</a>
|
|
278
290
|
<a href="#info" class="mw-section-btn">Info</a>
|
|
279
291
|
<a href="#alerts" class="mw-section-btn">Alerts</a>
|
|
292
|
+
<a href="#announcement" class="mw-section-btn">Announcement</a>
|
|
280
293
|
<a href="#code" class="mw-section-btn">Code</a>
|
|
281
294
|
<a href="#skeleton" class="mw-section-btn">Skeleton</a>
|
|
282
295
|
<a href="#empty-state" class="mw-section-btn">Empty State</a>
|
|
@@ -337,6 +350,11 @@
|
|
|
337
350
|
@@include('./src/partials/alerts-container.html')
|
|
338
351
|
</div>
|
|
339
352
|
|
|
353
|
+
<!-- Announcement container -->
|
|
354
|
+
<div id="announcement">
|
|
355
|
+
@@include('./src/partials/announcement-container.html')
|
|
356
|
+
</div>
|
|
357
|
+
|
|
340
358
|
<!-- Code container -->
|
|
341
359
|
<div id="code">@@include('./src/partials/code-container.html')</div>
|
|
342
360
|
|
|
@@ -361,6 +379,10 @@
|
|
|
361
379
|
<section id="forms" class="mw-section mw-section-alternate">
|
|
362
380
|
<div class="mw-container">
|
|
363
381
|
<h2 class="mw-section-title">Forms</h2>
|
|
382
|
+
<p class="mw-section-intro">
|
|
383
|
+
Inputs, selects, toggles and validation - fields and buttons share
|
|
384
|
+
one height scale by construction.
|
|
385
|
+
</p>
|
|
364
386
|
<nav class="mw-section-nav">
|
|
365
387
|
<a href="#form-elements" class="mw-section-btn">Form Elements</a>
|
|
366
388
|
<a href="#input-group" class="mw-section-btn">Input Group</a>
|
|
@@ -402,6 +424,10 @@
|
|
|
402
424
|
<section id="data-display" class="mw-section">
|
|
403
425
|
<div class="mw-container">
|
|
404
426
|
<h2 class="mw-section-title">Data & Display</h2>
|
|
427
|
+
<p class="mw-section-intro">
|
|
428
|
+
Tables, boards, timelines and long-form content - everything that
|
|
429
|
+
shows real data.
|
|
430
|
+
</p>
|
|
405
431
|
<nav class="mw-section-nav">
|
|
406
432
|
<a href="#page-header" class="mw-section-btn">Page Header</a>
|
|
407
433
|
<a href="#meta-info" class="mw-section-btn">Meta Info</a>
|
|
@@ -415,6 +441,9 @@
|
|
|
415
441
|
>Technology Stack Bucket</a
|
|
416
442
|
>
|
|
417
443
|
<a href="#content-slider" class="mw-section-btn">Content Slider</a>
|
|
444
|
+
<a href="#testimonials" class="mw-section-btn">Testimonials</a>
|
|
445
|
+
<a href="#prose" class="mw-section-btn">Prose</a>
|
|
446
|
+
<a href="#media" class="mw-section-btn">Media</a>
|
|
418
447
|
<a href="#blog-posts" class="mw-section-btn">Blog Posts</a>
|
|
419
448
|
</nav>
|
|
420
449
|
|
|
@@ -468,6 +497,17 @@
|
|
|
468
497
|
@@include('./src/partials/content-slider-container.html')
|
|
469
498
|
</div>
|
|
470
499
|
|
|
500
|
+
<!-- Testimonials container-->
|
|
501
|
+
<div id="testimonials">
|
|
502
|
+
@@include('./src/partials/testimonials-container.html')
|
|
503
|
+
</div>
|
|
504
|
+
|
|
505
|
+
<!-- Prose container-->
|
|
506
|
+
<div id="prose">@@include('./src/partials/prose-container.html')</div>
|
|
507
|
+
|
|
508
|
+
<!-- Media container-->
|
|
509
|
+
<div id="media">@@include('./src/partials/media-container.html')</div>
|
|
510
|
+
|
|
471
511
|
<!-- Blogposts container-->
|
|
472
512
|
<div id="blog-posts">
|
|
473
513
|
@@include('./src/partials/blog-posts-container.html')
|