From 1edfa50d1a60b13a4dc6c726ef7abe2da35bb625 Mon Sep 17 00:00:00 2001 From: Johann-S Date: Wed, 8 May 2019 15:01:03 +0200 Subject: [PATCH 001/182] add a thanks page to our doc --- site/content/docs/5.0/thanks.md | 76 +++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 site/content/docs/5.0/thanks.md diff --git a/site/content/docs/5.0/thanks.md b/site/content/docs/5.0/thanks.md new file mode 100644 index 000000000..cc1aa5a2f --- /dev/null +++ b/site/content/docs/5.0/thanks.md @@ -0,0 +1,76 @@ +--- +layout: docs +title: Thanks +description: To say thanks to our sponsors and services which support us. +group: thanks +aliases: "/thanks/" +toc: true +--- + +## Sponsors + +{{< sponsors.inline >}} +{{- $ocURL := "https://opencollective.com/bootstrap/members/all.json" -}} +{{- $sponsors := getJSON $ocURL "?TierId=7193&limit=10&offset=0" -}} +
+ {{- range $sponsors }} + {{- if .isActive -}} +
+
+ {{- .name -}} +
+
+ {{- .name -}} +
+

{{- .description -}}

+
+
+
+ {{- end -}} + {{- end -}} +
+{{< /sponsors.inline >}} + +## Backers + +{{< backers.inline >}} +{{- $ocURL := "https://opencollective.com/bootstrap/members/all.json" -}} +{{- $sponsors := getJSON $ocURL "?TierId=7192&limit=10&offset=0" -}} +
+ {{- range $sponsors }} + {{- if .isActive -}} +
+
+ {{- .name -}} +
+
+ {{- .name -}} +
+

{{- .description -}}

+
+
+
+ {{- end -}} + {{- end -}} +
+{{< /backers.inline >}} + +## Services + +{{< services.inline >}} +
+
+
+
+ BrowserStack +
+
+
+ BrowserStack +
+

Instant access to 2000+ browsers and real iOS and Android devices for cross browser testing. Ship apps and websites that work for everyone, every time. Get Free Trial.

+
+
+
+
+{{< /services.inline >}} From dd854e31713051628c002b146d080ca380607668 Mon Sep 17 00:00:00 2001 From: XhmikosR Date: Wed, 8 May 2019 16:33:28 +0300 Subject: [PATCH 002/182] Check for `.description` and `.website`. --- site/content/docs/5.0/thanks.md | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/site/content/docs/5.0/thanks.md b/site/content/docs/5.0/thanks.md index cc1aa5a2f..e84664794 100644 --- a/site/content/docs/5.0/thanks.md +++ b/site/content/docs/5.0/thanks.md @@ -20,9 +20,13 @@ toc: true {{- .name -}}
+ {{ if .website -}} {{- .name -}} + {{ else -}} + {{- .name -}} + {{ end -}}
-

{{- .description -}}

+ {{ with .description }}

{{ . | chomp }}

{{ end }}
@@ -44,9 +48,13 @@ toc: true {{- .name -}}
+ {{ if .website -}} {{- .name -}} + {{ else -}} + {{- .name -}} + {{ end -}}
-

{{- .description -}}

+ {{ with .description }}

{{ . | chomp }}

{{ end }}
From 4c7953d365867bb780c1767870c648695badb5f5 Mon Sep 17 00:00:00 2001 From: Martijn Cuppens Date: Wed, 8 May 2019 21:20:15 +0300 Subject: [PATCH 003/182] Change theming & copy --- site/content/docs/5.0/thanks.md | 78 +++++++++---------- site/data/services.yml | 6 ++ .../5.0/assets/img/services/browserstack.svg | 1 + .../docs/5.0/assets/img/services/netlify.svg | 1 + 4 files changed, 44 insertions(+), 42 deletions(-) create mode 100644 site/data/services.yml create mode 100644 site/static/docs/5.0/assets/img/services/browserstack.svg create mode 100644 site/static/docs/5.0/assets/img/services/netlify.svg diff --git a/site/content/docs/5.0/thanks.md b/site/content/docs/5.0/thanks.md index e84664794..ac00d1fe2 100644 --- a/site/content/docs/5.0/thanks.md +++ b/site/content/docs/5.0/thanks.md @@ -1,34 +1,34 @@ --- layout: docs -title: Thanks -description: To say thanks to our sponsors and services which support us. +title: Support the team group: thanks aliases: "/thanks/" toc: true --- +Through donations and sponsorships we are able to maintain & improve Bootstrap. Feel free to show your support on our [Open Collective page](https://opencollective.com/bootstrap). + ## Sponsors {{< sponsors.inline >}} {{- $ocURL := "https://opencollective.com/bootstrap/members/all.json" -}} {{- $sponsors := getJSON $ocURL "?TierId=7193&limit=10&offset=0" -}} -
+
{{- range $sponsors }} {{- if .isActive -}} -
-
- {{- .name -}} -
-
- {{ if .website -}} - {{- .name -}} - {{ else -}} - {{- .name -}} - {{ end -}} -
- {{ with .description }}

{{ . | chomp }}

{{ end }} +
+
+
+ {{- .name -}}
+

+ {{ if .website -}} + {{- .name -}} + {{ else -}} + {{- .name -}} + {{ end -}} +

{{- end -}} {{- end -}} @@ -40,22 +40,18 @@ toc: true {{< backers.inline >}} {{- $ocURL := "https://opencollective.com/bootstrap/members/all.json" -}} {{- $sponsors := getJSON $ocURL "?TierId=7192&limit=10&offset=0" -}} -
+
{{- range $sponsors }} {{- if .isActive -}} -
-
- {{- .name -}} -
-
- {{ if .website -}} - {{- .name -}} - {{ else -}} - {{- .name -}} - {{ end -}} -
- {{ with .description }}

{{ . | chomp }}

{{ end }} -
+
+
+ {{ if .website -}} + + {{ end -}} + {{- .name -}} + {{ if .website -}} + + {{ end -}}
{{- end -}} @@ -66,19 +62,17 @@ toc: true ## Services {{< services.inline >}} -
-
-
-
- BrowserStack -
-
-
- BrowserStack -
-

Instant access to 2000+ browsers and real iOS and Android devices for cross browser testing. Ship apps and websites that work for everyone, every time. Get Free Trial.

-
+
+ {{- range (index $.Site.Data "services") }} +
+ {{ if .website -}} + + {{ end -}} + {{- .name -}} + {{ if .website -}} + + {{ end -}}
-
+ {{ end -}}
{{< /services.inline >}} diff --git a/site/data/services.yml b/site/data/services.yml new file mode 100644 index 000000000..07e020b42 --- /dev/null +++ b/site/data/services.yml @@ -0,0 +1,6 @@ +- name: Browserstack + image: browserstack.svg + website: https://www.browserstack.com/ +- name: Netlify + image: netlify.svg + website: https://www.netlify.com diff --git a/site/static/docs/5.0/assets/img/services/browserstack.svg b/site/static/docs/5.0/assets/img/services/browserstack.svg new file mode 100644 index 000000000..3fab672c2 --- /dev/null +++ b/site/static/docs/5.0/assets/img/services/browserstack.svg @@ -0,0 +1 @@ + diff --git a/site/static/docs/5.0/assets/img/services/netlify.svg b/site/static/docs/5.0/assets/img/services/netlify.svg new file mode 100644 index 000000000..67a78718d --- /dev/null +++ b/site/static/docs/5.0/assets/img/services/netlify.svg @@ -0,0 +1 @@ + From 3b78e40962a4d9bbac2c01c24656857e920b40fa Mon Sep 17 00:00:00 2001 From: Johann-S Date: Mon, 3 Jun 2019 13:54:01 +0200 Subject: [PATCH 004/182] using xhr to display backers and sponsors --- site/content/docs/5.0/thanks.md | 149 +++++++++++++++++++++++--------- 1 file changed, 108 insertions(+), 41 deletions(-) diff --git a/site/content/docs/5.0/thanks.md b/site/content/docs/5.0/thanks.md index ac00d1fe2..71dced5e5 100644 --- a/site/content/docs/5.0/thanks.md +++ b/site/content/docs/5.0/thanks.md @@ -11,52 +11,13 @@ Through donations and sponsorships we are able to maintain & improve Bootstrap. ## Sponsors {{< sponsors.inline >}} -{{- $ocURL := "https://opencollective.com/bootstrap/members/all.json" -}} -{{- $sponsors := getJSON $ocURL "?TierId=7193&limit=10&offset=0" -}} -
- {{- range $sponsors }} - {{- if .isActive -}} -
-
-
- {{- .name -}} -
-
-

- {{ if .website -}} - {{- .name -}} - {{ else -}} - {{- .name -}} - {{ end -}} -

-
- {{- end -}} - {{- end -}} -
+
{{< /sponsors.inline >}} ## Backers {{< backers.inline >}} -{{- $ocURL := "https://opencollective.com/bootstrap/members/all.json" -}} -{{- $sponsors := getJSON $ocURL "?TierId=7192&limit=10&offset=0" -}} -
- {{- range $sponsors }} - {{- if .isActive -}} -
-
- {{ if .website -}} - - {{ end -}} - {{- .name -}} - {{ if .website -}} - - {{ end -}} -
-
- {{- end -}} - {{- end -}} -
+
{{< /backers.inline >}} ## Services @@ -75,4 +36,110 @@ Through donations and sponsorships we are able to maintain & improve Bootstrap.
{{ end -}}
+ + {{< /services.inline >}} From b72135b4c35ca96b4b3c4aa2209b3b01002e9055 Mon Sep 17 00:00:00 2001 From: Johann-S Date: Mon, 3 Jun 2019 16:33:07 +0200 Subject: [PATCH 005/182] change opencollective endpoint to get backers --- site/content/docs/5.0/thanks.md | 39 ++++++++++++++------------------- 1 file changed, 17 insertions(+), 22 deletions(-) diff --git a/site/content/docs/5.0/thanks.md b/site/content/docs/5.0/thanks.md index 71dced5e5..b93de9847 100644 --- a/site/content/docs/5.0/thanks.md +++ b/site/content/docs/5.0/thanks.md @@ -47,7 +47,7 @@ Through donations and sponsorships we are able to maintain & improve Bootstrap. '
', '
', '
', - ' ' + sponsor.name + '', + ' ' + sponsor.name + '', '
', '
', '

', @@ -84,7 +84,7 @@ Through donations and sponsorships we are able to maintain & improve Bootstrap. ) } - output.push('' + backer.name + '') + output.push('' + backer.name + '') if (backer.website) { output.push('') @@ -99,11 +99,11 @@ Through donations and sponsorships we are able to maintain & improve Bootstrap. backerListEl.innerHTML = output.join('') } - function requestOC(params, cb) { - var ocURL = 'https://opencollective.com/bootstrap/members/all.json' + function requestOC(cb) { + var ocURL = 'https://opencollective.com/api/groups/bootstrap/backers' var xhr = new XMLHttpRequest() - xhr.open('GET', ocURL + params, true) + xhr.open('GET', ocURL, true) xhr.onload = function () { if (xhr.readyState !== 4) { return @@ -119,26 +119,21 @@ Through donations and sponsorships we are able to maintain & improve Bootstrap. } (function () { - requestOC('?TierId=7193', function (sponsorList, error) { - if (sponsorList) { - sponsorList = sponsorList.filter(function (sponsor) { return sponsor.isActive }) - .slice(0, 10) + requestOC(function (allBackerList, error) { + var backerList = allBackerList.filter(function (backer) { return backer.tier === 'backer' }) + var sponsorList = allBackerList.filter(function (backer) { return backer.tier === 'sponsor' }) - // Sort by total amount donated - sponsorList.sort(function (sponsor1, sponsor2) { return sponsor2.totalAmountDonated - sponsor1.totalAmountDonated }) - displaySponsors(sponsorList) - } - }) + // Sort by total amount donated + sponsorList.sort(function (sponsor1, sponsor2) { return sponsor2.directDonations - sponsor1.directDonations }) + sponsorList = sponsorList.slice(0, 10) - requestOC('?TierId=7192', function (backerList, error) { - if (backerList) { - backerList = backerList.filter(function (backer) { return backer.isActive }) - .slice(0, 10) + displaySponsors(sponsorList) - // Sort by total amount donated - backerList.sort(function (backer1, backer2) { return backer2.totalAmountDonated - backer1.totalAmountDonated }) - displayBackers(backerList) - } + // Sort by total amount donated + backerList.sort(function (backer1, backer2) { return backer2.directDonations - backer1.directDonations }) + backerList = backerList.slice(0, 10) + + displayBackers(backerList) }) })() From 9f72bbae7c0992b1a0f5d53592563e4b9167bdd3 Mon Sep 17 00:00:00 2001 From: XhmikosR Date: Sat, 8 Jun 2019 13:50:24 +0300 Subject: [PATCH 006/182] Tweak image. --- site/content/docs/5.0/thanks.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/site/content/docs/5.0/thanks.md b/site/content/docs/5.0/thanks.md index b93de9847..7d1ece963 100644 --- a/site/content/docs/5.0/thanks.md +++ b/site/content/docs/5.0/thanks.md @@ -27,9 +27,9 @@ Through donations and sponsorships we are able to maintain & improve Bootstrap. {{- range (index $.Site.Data "services") }}
{{ if .website -}} - + {{ end -}} - {{- .name -}} + {{ .name }} {{ if .website -}} {{ end -}} From 9febb30c19640af1ff782e52a5402be7648f458e Mon Sep 17 00:00:00 2001 From: XhmikosR Date: Sat, 8 Jun 2019 14:34:37 +0300 Subject: [PATCH 007/182] Clean up classes and lint JS. --- site/content/docs/5.0/thanks.md | 195 +++++++++++++++++--------------- 1 file changed, 103 insertions(+), 92 deletions(-) diff --git a/site/content/docs/5.0/thanks.md b/site/content/docs/5.0/thanks.md index 7d1ece963..a27b32807 100644 --- a/site/content/docs/5.0/thanks.md +++ b/site/content/docs/5.0/thanks.md @@ -38,103 +38,114 @@ Through donations and sponsorships we are able to maintain & improve Bootstrap.
{{< /services.inline >}} From e46e225895dab9070c42c83f91fe5e6f03d9be0e Mon Sep 17 00:00:00 2001 From: Johann-S Date: Tue, 11 Jun 2019 09:40:26 +0200 Subject: [PATCH 008/182] migrate to new oc api --- site/content/docs/5.0/thanks.md | 39 +++++++++++++++++++-------------- 1 file changed, 23 insertions(+), 16 deletions(-) diff --git a/site/content/docs/5.0/thanks.md b/site/content/docs/5.0/thanks.md index a27b32807..d828f50a0 100644 --- a/site/content/docs/5.0/thanks.md +++ b/site/content/docs/5.0/thanks.md @@ -41,23 +41,27 @@ Through donations and sponsorships we are able to maintain & improve Bootstrap. (function () { 'use strict' + var backerDisplayed = 10 + function displaySponsors(sponsorList) { var sponsorListEl = document.getElementById('sponsorList') var output = [] sponsorList.forEach(function (sponsor) { + var sponsorAccount = sponsor.fromAccount + output.push( '
', '
', - ' ' + sponsor.name + '', + ' ' + sponsorAccount.name + '', '
', '

', ) - if (sponsor.website) { - output.push('' + sponsor.name + '') + if (sponsorAccount.website) { + output.push('' + sponsorAccount.name + '') } else { - output.push(sponsor.name) + output.push(sponsorAccount.name) } output.push( @@ -74,20 +78,22 @@ Through donations and sponsorships we are able to maintain & improve Bootstrap. var output = [] backerList.forEach(function (backer) { + var backerAccount = backer.fromAccount + output.push( '
', '
' ) - if (backer.website) { + if (backerAccount.website) { output.push( - '' + '' ) } - output.push('' + backer.name + '') + output.push('' + backerAccount.name + '') - if (backer.website) { + if (backerAccount.website) { output.push('') } @@ -101,7 +107,7 @@ Through donations and sponsorships we are able to maintain & improve Bootstrap. } function requestOC(cb) { - var ocURL = 'https://opencollective.com/api/groups/bootstrap/backers' + var ocURL = 'https://rest.opencollective.com/v2/bootstrap/orders/incoming/active' var xhr = new XMLHttpRequest() xhr.open('GET', ocURL, true) @@ -121,27 +127,28 @@ Through donations and sponsorships we are able to maintain & improve Bootstrap. } (function () { - requestOC(function (allBackerList) { + requestOC(function (data) { + var allBackerList = data.nodes var backerList = allBackerList.filter(function (backer) { - return backer.tier === 'backer' + return backer.tier.slug === 'backer' }) var sponsorList = allBackerList.filter(function (backer) { - return backer.tier === 'sponsor' + return backer.tier.slug === 'sponsor' }) // Sort by total amount donated sponsorList.sort(function (sponsor1, sponsor2) { - return sponsor2.directDonations - sponsor1.directDonations + return sponsor2.totalDonations.value - sponsor1.totalDonations.value }) - sponsorList = sponsorList.slice(0, 10) + sponsorList = sponsorList.slice(0, backerDisplayed) displaySponsors(sponsorList) // Sort by total amount donated backerList.sort(function (backer1, backer2) { - return backer2.directDonations - backer1.directDonations + return backer2.totalDonations.value - backer1.totalDonations.value }) - backerList = backerList.slice(0, 10) + backerList = backerList.slice(0, backerDisplayed) displayBackers(backerList) }) From 058067336f4dc5ee18da8edc7ac0dd2dfce8ae0a Mon Sep 17 00:00:00 2001 From: Martijn Cuppens Date: Tue, 20 Aug 2019 19:32:17 +0300 Subject: [PATCH 009/182] Move inline css to scss file --- site/assets/scss/_sponsor.scss | 9 +++++++++ site/assets/scss/docs.scss | 1 + site/content/docs/5.0/thanks.md | 4 ++-- 3 files changed, 12 insertions(+), 2 deletions(-) create mode 100644 site/assets/scss/_sponsor.scss diff --git a/site/assets/scss/_sponsor.scss b/site/assets/scss/_sponsor.scss new file mode 100644 index 000000000..dac9a751d --- /dev/null +++ b/site/assets/scss/_sponsor.scss @@ -0,0 +1,9 @@ +.sponsor { + width: 100px; + height: 100px; +} + +.sponsor-md { + width: 50px; + height: 50px; +} diff --git a/site/assets/scss/docs.scss b/site/assets/scss/docs.scss index 4da387aa4..ec59ef2f0 100644 --- a/site/assets/scss/docs.scss +++ b/site/assets/scss/docs.scss @@ -36,6 +36,7 @@ @import "ads"; @import "content"; @import "skippy"; +@import "sponsor"; @import "sidebar"; @import "layout"; @import "toc"; diff --git a/site/content/docs/5.0/thanks.md b/site/content/docs/5.0/thanks.md index d828f50a0..9589cafea 100644 --- a/site/content/docs/5.0/thanks.md +++ b/site/content/docs/5.0/thanks.md @@ -52,7 +52,7 @@ Through donations and sponsorships we are able to maintain & improve Bootstrap. output.push( '
', - '
', + ' ', '

', @@ -82,7 +82,7 @@ Through donations and sponsorships we are able to maintain & improve Bootstrap. output.push( '
', - '
' + '

- Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS. + This is the first item's accordion body. It is hidden by default, until the collapse plugin adds the appropriate classes that we use to style each element. These classes control the overall appearance, as well as the showing and hiding via CSS transitions. You can modify any of this with custom CSS or overriding our default variables. It's also worth noting that just about any HTML can go within the .accordion-body, though the transition does limit overflow.
@@ -631,7 +628,7 @@ body_class: "bg-light"

- Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS. + This is the second item's accordion body. It is hidden by default, until the collapse plugin adds the appropriate classes that we use to style each element. These classes control the overall appearance, as well as the showing and hiding via CSS transitions. You can modify any of this with custom CSS or overriding our default variables. It's also worth noting that just about any HTML can go within the .accordion-body, though the transition does limit overflow.
@@ -643,7 +640,7 @@ body_class: "bg-light"

- Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, sunt aliqua put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. Leggings occaecat craft beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus labore sustainable VHS. + This is the third item's accordion body. It is hidden by default, until the collapse plugin adds the appropriate classes that we use to style each element. These classes control the overall appearance, as well as the showing and hiding via CSS transitions. You can modify any of this with custom CSS or overriding our default variables. It's also worth noting that just about any HTML can go within the .accordion-body, though the transition does limit overflow.
@@ -822,9 +819,9 @@ body_class: "bg-light"

Some quick example text to build on the card title and make up the bulk of the card's content.

    -
  • Cras justo odio
  • -
  • Dapibus ac facilisis in
  • -
  • Vestibulum at eros
  • +
  • An item
  • +
  • A second item
  • +
  • A third item
Card link @@ -871,21 +868,21 @@ body_class: "bg-light" {{< placeholder width="800" height="400" class="bd-placeholder-img-lg d-block w-100" color="#555" background="#777" text="First slide" >}}
@@ -1092,27 +1089,27 @@ body_class: "bg-light"
{{< example show_markup="false" >}}
    -
  • Cras justo odio
  • -
  • Dapibus ac facilisis in
  • -
  • Morbi leo risus
  • -
  • Porta ac consectetur ac
  • -
  • Vestibulum at eros
  • +
  • A disabled item
  • +
  • A second item
  • +
  • A third item
  • +
  • A fourth item
  • +
  • And a fifth one
{{< /example >}} {{< example show_markup="false" >}}
    -
  • Cras justo odio
  • -
  • Dapibus ac facilisis in
  • -
  • Morbi leo risus
  • -
  • Porta ac consectetur ac
  • -
  • Vestibulum at eros
  • +
  • An item
  • +
  • A second item
  • +
  • A third item
  • +
  • A fourth item
  • +
  • And a fifth one
{{< /example >}} {{< example show_markup="false" >}}
- Dapibus ac facilisis in + A simple default list group item {{< list.inline >}} {{- range (index $.Site.Data "theme-colors") }} A simple {{ .name }} list group item @@ -1173,13 +1170,13 @@ body_class: "bg-light" {{< /example >}} @@ -1437,19 +1434,18 @@ body_class: "bg-light" -
+

@fat

-

Ad leggings keytar, brunch id art party dolor labore. Pitchfork yr enim lo-fi before they sold out qui. Tumblr farm-to-table bicycle rights whatever. Anim keffiyeh carles cardigan. Velit seitan mcsweeney's photo booth 3 wolf moon irure. Cosby sweater lomo jean shorts, williamsburg hoodie minim qui you probably haven't heard of them et cardigan trust fund culpa biodiesel wes anderson aesthetic. Nihil tattooed accusamus, cred irony biodiesel keffiyeh artisan ullamco consequat.

+

Placeholder content for the scrollspy example. You got the finest architecture. Passport stamps, she's cosmopolitan. Fine, fresh, fierce, we got it on lock. Never planned that one day I'd be losing you. She eats your heart out. Your kiss is cosmic, every move is magic. I mean the ones, I mean like she's the one. Greetings loved ones let's take a journey. Just own the night like the 4th of July! But you'd rather get wasted.

@mdo

-

Veniam marfa mustache skateboard, adipisicing fugiat velit pitchfork beard. Freegan beard aliqua cupidatat mcsweeney's vero. Cupidatat four loko nisi, ea helvetica nulla carles. Tattooed cosby sweater food truck, mcsweeney's quis non freegan vinyl. Lo-fi wes anderson +1 sartorial. Carles non aesthetic exercitation quis gentrify. Brooklyn adipisicing craft beer vice keytar deserunt.

+

Placeholder content for the scrollspy example. 'Cause she's the muse and the artist. (This is how we do) So you wanna play with magic. So just be sure before you give it all to me. I'm walking, I'm walking on air (tonight). Skip the talk, heard it all, time to walk the walk.

one

-

Occaecat commodo aliqua delectus. Fap craft beer deserunt skateboard ea. Lomo bicycle rights adipisicing banh mi, velit ea sunt next level locavore single-origin coffee in magna veniam. High life id vinyl, echo park consequat quis aliquip banh mi pitchfork. Vero VHS est adipisicing. Consectetur nisi DIY minim messenger bag. Cred ex in, sustainable delectus consectetur fanny pack iphone.

+

Placeholder content for the scrollspy example. Takes you miles high, so high, 'cause she’s got that one international smile. There's a stranger in my bed, there's a pounding in my head. Oh, no. In another life I would make you stay. ‘Cause I, I’m capable of anything. Suiting up for my crowning battle. Used to steal your parents' liquor and climb to the roof. Tone, tan fit and ready, turn it up cause its gettin' heavy. Her love is like a drug. I guess that I forgot I had a choice.

two

-

In incididunt echo park, officia deserunt mcsweeney's proident master cleanse thundercats sapiente veniam. Excepteur VHS elit, proident shoreditch +1 biodiesel laborum craft beer. Single-origin coffee wayfarers irure four loko, cupidatat terry richardson master cleanse. Assumenda you probably haven't heard of them art party fanny pack, tattooed nulla cardigan tempor ad. Proident wolf nesciunt sartorial keffiyeh eu banh mi sustainable. Elit wolf voluptate, lo-fi ea portland before they sold out four loko. Locavore enim nostrud mlkshk brooklyn nesciunt.

+

Placeholder content for the scrollspy example. It's time to bring out the big balloons. I'm walking, I'm walking on air (tonight). Yeah, we maxed our credit cards and got kicked out of the bar. Yo, shout out to all you kids, buying bottle service, with your rent money. I'm ma get your heart racing in my skin-tight jeans. If you get the chance you better keep her. Yo, shout out to all you kids, buying bottle service, with your rent money.

three

-

Ad leggings keytar, brunch id art party dolor labore. Pitchfork yr enim lo-fi before they sold out qui. Tumblr farm-to-table bicycle rights whatever. Anim keffiyeh carles cardigan. Velit seitan mcsweeney's photo booth 3 wolf moon irure. Cosby sweater lomo jean shorts, williamsburg hoodie minim qui you probably haven't heard of them et cardigan trust fund culpa biodiesel wes anderson aesthetic. Nihil tattooed accusamus, cred irony biodiesel keffiyeh artisan ullamco consequat.

-

Keytar twee blog, culpa messenger bag marfa whatever delectus food truck. Sapiente synth id assumenda. Locavore sed helvetica cliche irony, thundercats you probably haven't heard of them consequat hoodie gluten-free lo-fi fap aliquip. Labore elit placeat before they sold out, terry richardson proident brunch nesciunt quis cosby sweater pariatur keffiyeh ut helvetica artisan. Cardigan craft beer seitan readymade velit. VHS chambray laboris tempor veniam. Anim mollit minim commodo ullamco thundercats. -

+

Placeholder content for the scrollspy example. If you wanna dance, if you want it all, you know that I'm the girl that you should call. Walk through the storm I would. So let me get you in your birthday suit. The one that got away. Last Friday night, yeah I think we broke the law, always say we're gonna stop. 'Cause she's a little bit of Yoko, And she's a little bit of 'Oh no'. I want the jaw droppin', eye poppin', head turnin', body shockin'. Yeah, we maxed our credit cards and got kicked out of the bar.

+

And some more placeholder content, for good measure.

@@ -1558,18 +1554,17 @@ body_class: "bg-light"