commit ad49d772971e48423121023d37e292b0f9120d16 Author: Set Hallstrom Date: Fri Jul 24 14:34:09 2020 +0200 Initial commit diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..26b9763 --- /dev/null +++ b/.gitignore @@ -0,0 +1,28 @@ + +# OS generated files # +###################### +.DS_Store +.DS_Store? +._* +.Spotlight-V100 +.Trashes +ehthumbs.db +Thumbs.db + +# mousepad shit # +*.*~ + +#### JEKYLL +_site/ +.sass-cache/ +.jekyll-cache/ +.jekyll-metadata +_data/.~lock.*.csv + +## vcode +.vscode +.vscode/* + +## No cover artwork or Mp3 +*.mp3 +assets/albums/ \ No newline at end of file diff --git a/404.html b/404.html new file mode 100644 index 0000000..3bc257b --- /dev/null +++ b/404.html @@ -0,0 +1,93 @@ +--- +layout: nil +title: Error 404 This is not a page +description: The page you are looking for has moved to the darknet. +image: /assets/img/Chain_1.png +permalink: /404.html +--- + + + + + +{% include seo.html %} + + + + + + + + + + +
+ + + + + + + + + + +
+ +{% include navigation.html %} + + + + + + + + + + + + +{% include cookie-consent.html %} + + + \ No newline at end of file diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000..e3b3f02 --- /dev/null +++ b/Gemfile @@ -0,0 +1,8 @@ +source 'https://rubygems.org' + +gem 'jekyll', '4.0.0' + +group :jekyll_plugins do + gem 'jekyll-sitemap', '1.4.0' + gem 'jekyll-last-modified-at','1.1.0' +end diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 0000000..a982461 --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,75 @@ +GEM + remote: https://rubygems.org/ + specs: + addressable (2.7.0) + public_suffix (>= 2.0.2, < 5.0) + colorator (1.1.0) + concurrent-ruby (1.1.6) + em-websocket (0.5.1) + eventmachine (>= 0.12.9) + http_parser.rb (~> 0.6.0) + eventmachine (1.2.7) + ffi (1.13.1) + forwardable-extended (2.6.0) + http_parser.rb (0.6.0) + i18n (1.8.4) + concurrent-ruby (~> 1.0) + jekyll (4.0.0) + addressable (~> 2.4) + colorator (~> 1.0) + em-websocket (~> 0.5) + i18n (>= 0.9.5, < 2) + jekyll-sass-converter (~> 2.0) + jekyll-watch (~> 2.0) + kramdown (~> 2.1) + kramdown-parser-gfm (~> 1.0) + liquid (~> 4.0) + mercenary (~> 0.3.3) + pathutil (~> 0.9) + rouge (~> 3.0) + safe_yaml (~> 1.0) + terminal-table (~> 1.8) + jekyll-last-modified-at (1.1.0) + jekyll (>= 3.7, < 5.0) + posix-spawn (~> 0.3.9) + jekyll-sass-converter (2.1.0) + sassc (> 2.0.1, < 3.0) + jekyll-sitemap (1.4.0) + jekyll (>= 3.7, < 5.0) + jekyll-watch (2.2.1) + listen (~> 3.0) + kramdown (2.3.0) + rexml + kramdown-parser-gfm (1.1.0) + kramdown (~> 2.0) + liquid (4.0.3) + listen (3.2.1) + rb-fsevent (~> 0.10, >= 0.10.3) + rb-inotify (~> 0.9, >= 0.9.10) + mercenary (0.3.6) + pathutil (0.16.2) + forwardable-extended (~> 2.6) + posix-spawn (0.3.15) + public_suffix (4.0.5) + rb-fsevent (0.10.4) + rb-inotify (0.10.1) + ffi (~> 1.0) + rexml (3.2.4) + rouge (3.21.0) + safe_yaml (1.0.5) + sassc (2.4.0) + ffi (~> 1.9) + terminal-table (1.8.0) + unicode-display_width (~> 1.1, >= 1.1.1) + unicode-display_width (1.7.0) + +PLATFORMS + ruby + +DEPENDENCIES + jekyll (= 4.0.0) + jekyll-last-modified-at (= 1.1.0) + jekyll-sitemap (= 1.4.0) + +BUNDLED WITH + 2.1.4 diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..cfac67e --- /dev/null +++ b/LICENSE @@ -0,0 +1,28 @@ +This is free and unencumbered software released into the public domain applied to +the code written by Sakrecoer. Code present in this repository written by other +people will be subject to their own licensing-model respectfully, with credit +served where credits are due. + +Anyone is free to copy, modify, publish, use, compile, sell, or distribute the +software written by Sakrecoer, either in source code form or as a compiled binary, +for any purpose, commercial or non-commercial, and by any means. + +In jurisdictions that recognize copyright laws, the author or authors +of this software dedicate any and all copyright interest in the +software to the public domain. We make this dedication for the benefit +of the public at large and to the detriment of our heirs and +successors. We intend this dedication to be an overt act of +relinquishment in perpetuity of all present and future rights to this +software under copyright law. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR +OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + +For more information, please refer to + + diff --git a/README.md b/README.md new file mode 100644 index 0000000..ff41e5e --- /dev/null +++ b/README.md @@ -0,0 +1,2 @@ +# sakrecoer.com +Webiste for Sakrecoer diff --git a/_albums/cyber-grany.md b/_albums/cyber-grany.md new file mode 100644 index 0000000..3bc92e0 --- /dev/null +++ b/_albums/cyber-grany.md @@ -0,0 +1,117 @@ +--- +layout: album +slug: cyber-grany +name: Cyber Grany +artists: 徒 Setto セット +bitrate: 320000 +trackCount: 1 +cover: /assets/albums/cyber-grany/1-grandma-got-the-ssh-keys.jpeg +date: 2019-1-1 +tracks: + - path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/cyber-grany/1-grandma-got-the-ssh-keys.mp3 + audio: /assets/albums/cyber-grany/1-grandma-got-the-ssh-keys.mp3 + slug: cyber-grany/1-grandma-got-the-ssh-keys + albumSlug: cyber-grany + trackSlug: 1-grandma-got-the-ssh-keys + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/cyber-grany/1-grandma-got-the-ssh-keys.jpeg + cover: /assets/albums/cyber-grany/1-grandma-got-the-ssh-keys.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 320000 + codecProfile: CBR + numberOfSamples: 8909568 + duration: 202.03102040816327 + native: + ID3v2.3: + - id: TIT2 + value: Grandma got the SSH keys + - id: TPE1 + value: 徒 Setto セット + - id: TRCK + value: 1/1 + - id: TALB + value: Cyber Grany + - id: TPE2 + value: To Setto Setto + - id: TCON + value: Acid Trap + - id: 'TXXX:CDDB DiscID' + value: 0200ca01 + - id: 'TXXX:discid' + value: 0200ca01 + - id: 'TXXX:MusicBrainz DiscID' + value: bhKd3SFqkr6x1L9X2JkIZ6UIaRA- + - id: 'TXXX:musicbrainz_discid' + value: bhKd3SFqkr6x1L9X2JkIZ6UIaRA- + - id: COMM + value: + language: XXX + description: WEBSITE + text: 'https://setto.basspistol.com' + - id: COMM + value: + language: XXX + description: Comment + text: Special track for Acid December 2019 + - id: TYER + value: '2019' + quality: + warnings: [] + common: + track: + 'no': 1 + of: 1 + disk: + 'no': null + of: null + title: Grandma got the SSH keys + artists: + - 徒 Setto セット + artist: 徒 Setto セット + album: Cyber Grany + albumartist: To Setto Setto + genre: + - Acid Trap + comment: + - 'https://setto.basspistol.com' + - Special track for Acid December 2019 + year: 2019 + transformed: + ID3v2.3: + TIT2: Grandma got the SSH keys + TPE1: 徒 Setto セット + TRCK: 1/1 + TALB: Cyber Grany + TPE2: To Setto Setto + TCON: Acid Trap + 'TXXX:CDDB DiscID': 0200ca01 + 'TXXX:discid': 0200ca01 + 'TXXX:MusicBrainz DiscID': bhKd3SFqkr6x1L9X2JkIZ6UIaRA- + 'TXXX:musicbrainz_discid': bhKd3SFqkr6x1L9X2JkIZ6UIaRA- + WEBSITE: 'https://setto.basspistol.com' + Comment: Special track for Acid December 2019 + TYER: '2019' + all: + TIT2: Grandma got the SSH keys + TPE1: 徒 Setto セット + TRCK: 1/1 + TALB: Cyber Grany + TPE2: To Setto Setto + TCON: Acid Trap + 'TXXX:CDDB DiscID': 0200ca01 + 'TXXX:discid': 0200ca01 + 'TXXX:MusicBrainz DiscID': bhKd3SFqkr6x1L9X2JkIZ6UIaRA- + 'TXXX:musicbrainz_discid': bhKd3SFqkr6x1L9X2JkIZ6UIaRA- + WEBSITE: 'https://setto.basspistol.com' + Comment: Special track for Acid December 2019 + TYER: '2019' +--- diff --git a/_albums/darkweb.md b/_albums/darkweb.md new file mode 100644 index 0000000..4abe918 --- /dev/null +++ b/_albums/darkweb.md @@ -0,0 +1,618 @@ +--- +layout: album +slug: darkweb +name: Darkweb +artists: 徒 Setto セット +bitrate: 128000 +trackCount: 4 +cover: /assets/albums/darkweb/1-swipe.jpeg +date: 2019-1-1 +tracks: + - path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/1-swipe.mp3 + audio: /assets/albums/darkweb/1-swipe.mp3 + slug: darkweb/1-swipe + albumSlug: darkweb + trackSlug: 1-swipe + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/1-swipe.jpeg + cover: /assets/albums/darkweb/1-swipe.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 12388608 + duration: 280.9208163265306 + native: + ID3v2.3: + - id: TIT2 + value: Swipe + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: Comment + text: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + - id: TALB + value: Darkweb + - id: TRCK + value: '1' + - id: TPE2 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: UNSYNCEDLYRICS + text: >- + Comme tous les après-midis, Assis dans le tram en face d'une jolie + vie, + + Sur mon écran elles sont encore plus sexy. + + Swipe à gauche swipe à droite, + + Celle-ci a l'aire plutôt maladroite, + + Ça m'irait bien ça. + + Mais la personne en face de moi, + + Elle me matte, elle me mire. + + Je ne sais pas quoi faire, + + Qu'est-ce que je vais lui dire? + + Elle a de belles dents! + + Je vais retourner a mon écran. + + je n'ai simplement, + + Pas assez de cran. + + + Je swipe à droite, + + Je swipe à gauche, + + Je yeuxt vers l'avant de temps en temps. + + + Si seulement elle voyait mon flux, + + Je suis sur qu'elle n'en pourrait plus! + + Comment je fais pour l'ajouter? + + Est-ce que Google pourrait la trouver? + + Hashtag jolitram, + + Faudrait que ça devienne viral sur Instagram. + + Ensemble on aurait peut-être un avenir! + + Mais comment coño vais-je lui dire? + + Merde elle appuie sur arrêt! + + Je lui tend mon casque ça le fait! + + Elle donne le siens truc de ouf?! + + Hésitations je m'immisce. + + Cette personne écoute de la bonne musique de glisse. + + + Je swipe à droite, + + Je swipe à gauche, + + Je yeuxt vers l'avant de temps en temps. + - id: TCON + value: Cyber Soul + - id: TYER + value: '2019' + quality: + warnings: [] + common: + track: + 'no': 1 + of: null + disk: + 'no': null + of: null + title: Swipe + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + - >- + Comme tous les après-midis, Assis dans le tram en face d'une jolie + vie, + + Sur mon écran elles sont encore plus sexy. + + Swipe à gauche swipe à droite, + + Celle-ci a l'aire plutôt maladroite, + + Ça m'irait bien ça. + + Mais la personne en face de moi, + + Elle me matte, elle me mire. + + Je ne sais pas quoi faire, + + Qu'est-ce que je vais lui dire? + + Elle a de belles dents! + + Je vais retourner a mon écran. + + je n'ai simplement, + + Pas assez de cran. + + + Je swipe à droite, + + Je swipe à gauche, + + Je yeuxt vers l'avant de temps en temps. + + + Si seulement elle voyait mon flux, + + Je suis sur qu'elle n'en pourrait plus! + + Comment je fais pour l'ajouter? + + Est-ce que Google pourrait la trouver? + + Hashtag jolitram, + + Faudrait que ça devienne viral sur Instagram. + + Ensemble on aurait peut-être un avenir! + + Mais comment coño vais-je lui dire? + + Merde elle appuie sur arrêt! + + Je lui tend mon casque ça le fait! + + Elle donne le siens truc de ouf?! + + Hésitations je m'immisce. + + Cette personne écoute de la bonne musique de glisse. + + + Je swipe à droite, + + Je swipe à gauche, + + Je yeuxt vers l'avant de temps en temps. + album: Darkweb + albumartist: 徒 Setto セット + genre: + - Cyber Soul + year: 2019 + transformed: + ID3v2.3: + TIT2: Swipe + TPE1: 徒 Setto セット + Comment: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + TALB: Darkweb + TRCK: '1' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: >- + Comme tous les après-midis, Assis dans le tram en face d'une jolie + vie, + + Sur mon écran elles sont encore plus sexy. + + Swipe à gauche swipe à droite, + + Celle-ci a l'aire plutôt maladroite, + + Ça m'irait bien ça. + + Mais la personne en face de moi, + + Elle me matte, elle me mire. + + Je ne sais pas quoi faire, + + Qu'est-ce que je vais lui dire? + + Elle a de belles dents! + + Je vais retourner a mon écran. + + je n'ai simplement, + + Pas assez de cran. + + + Je swipe à droite, + + Je swipe à gauche, + + Je yeuxt vers l'avant de temps en temps. + + + Si seulement elle voyait mon flux, + + Je suis sur qu'elle n'en pourrait plus! + + Comment je fais pour l'ajouter? + + Est-ce que Google pourrait la trouver? + + Hashtag jolitram, + + Faudrait que ça devienne viral sur Instagram. + + Ensemble on aurait peut-être un avenir! + + Mais comment coño vais-je lui dire? + + Merde elle appuie sur arrêt! + + Je lui tend mon casque ça le fait! + + Elle donne le siens truc de ouf?! + + Hésitations je m'immisce. + + Cette personne écoute de la bonne musique de glisse. + + + Je swipe à droite, + + Je swipe à gauche, + + Je yeuxt vers l'avant de temps en temps. + TCON: Cyber Soul + TYER: '2019' + all: + TIT2: Swipe + TPE1: 徒 Setto セット + Comment: 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + TALB: Darkweb + TRCK: '1' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: |- + Comme tous les après-midis, Assis dans le tram en face d'une jolie vie, + Sur mon écran elles sont encore plus sexy. + Swipe à gauche swipe à droite, + Celle-ci a l'aire plutôt maladroite, + Ça m'irait bien ça. + Mais la personne en face de moi, + Elle me matte, elle me mire. + Je ne sais pas quoi faire, + Qu'est-ce que je vais lui dire? + Elle a de belles dents! + Je vais retourner a mon écran. + je n'ai simplement, + Pas assez de cran. + + Je swipe à droite, + Je swipe à gauche, + Je yeuxt vers l'avant de temps en temps. + + Si seulement elle voyait mon flux, + Je suis sur qu'elle n'en pourrait plus! + Comment je fais pour l'ajouter? + Est-ce que Google pourrait la trouver? + Hashtag jolitram, + Faudrait que ça devienne viral sur Instagram. + Ensemble on aurait peut-être un avenir! + Mais comment coño vais-je lui dire? + Merde elle appuie sur arrêt! + Je lui tend mon casque ça le fait! + Elle donne le siens truc de ouf?! + Hésitations je m'immisce. + Cette personne écoute de la bonne musique de glisse. + + Je swipe à droite, + Je swipe à gauche, + Je yeuxt vers l'avant de temps en temps. + TCON: Cyber Soul + TYER: '2019' + - path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/2-darkweb.mp3 + audio: /assets/albums/darkweb/2-darkweb.mp3 + slug: darkweb/2-darkweb + albumSlug: darkweb + trackSlug: 2-darkweb + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/2-darkweb.jpeg + cover: /assets/albums/darkweb/2-darkweb.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 12566016 + duration: 284.94367346938776 + native: + ID3v2.3: + - id: TIT2 + value: Darkweb + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: Comment + text: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + - id: TALB + value: Darkweb + - id: TRCK + value: '2' + - id: TPE2 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: UNSYNCEDLYRICS + text: "Y'en a mare de ce web\r\nIl est tout pourri\r\nOn peu plus rien y faire\r\nSeulement pousser des cris\r\nQue personne va entendre\r\nSi t'as pas mille amis\r\nTa home-page va se pendre\r\nPerdu le goût de la vie\r\nEnvois ton Paypal\r\nJ'vais lui faire un refus\r\nAjoute-moi en ami\r\nTu vas kiffer mon flux\r\nViens pas faire ton vieux troll\r\nRien a foutre de toi\r\nT’écris de belles paroles\r\nRien à foutre de toi\r\nPuis au fond de ce noire\r\nJe vois un rayon\r\nUn programme provisoire\r\nPour poser mes sillons\r\nY a une communauté\r\nDe gens mal intégrés\r\nIl sont tous comme moi\r\nMais encore plus tarés\r\nProtocole anonyme\r\nConnexion en chiffré\r\nP2P solidaire\r\nConnexion certifiée\r\nLittéraire digital\r\nTu vas aussi kiffer\r\nÇa s'appelle le Darkweb\r\nTu vas aussi kiffer\r\n\r\nFacegoogle aux gogues\r\nY a plus que des conneries\r\nPropagande démagogue\r\nPetits chats tous mimis\r\nMais c'est quoi cette shit\r\nÇa veut plus rien dire\r\nLes keums envoient leurs bites\r\nComme si elles allaient applaudir\r\nNon! C'est trop con\r\nJe veux pas participer\r\nMais si je joue pas le jeux\r\nJe vais être abandonné\r\nPlus personne entendra\r\nTout ce que j'ai à crier\r\nPlus personne ne lira\r\nTout ce que j'ai à crier\r\nPuis au bout du tunnel\r\nJe vois une lueur étrange\r\nCelle d'un réseau fermé\r\nQui reste ouvert au strange\r\nUn lieu virtuel\r\nUne cité idéelle\r\nUne banque de données\r\nPour les mal intégrés\r\nJe peux y être qui je veux\r\nUn antichrist bien pleb\r\nAvoir beaucoup de cheveux\r\nUn intello du Zagreb\r\nT'as besoin d'faire entendre\r\nTu vas aussi kiffer\r\nLa clef tu peux la prendre\r\nTu vas aussi kiffer" + - id: TCON + value: Cypher Rap + - id: TYER + value: '2019' + quality: + warnings: [] + common: + track: + 'no': 2 + of: null + disk: + 'no': null + of: null + title: Darkweb + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + - "Y'en a mare de ce web\r\nIl est tout pourri\r\nOn peu plus rien y faire\r\nSeulement pousser des cris\r\nQue personne va entendre\r\nSi t'as pas mille amis\r\nTa home-page va se pendre\r\nPerdu le goût de la vie\r\nEnvois ton Paypal\r\nJ'vais lui faire un refus\r\nAjoute-moi en ami\r\nTu vas kiffer mon flux\r\nViens pas faire ton vieux troll\r\nRien a foutre de toi\r\nT’écris de belles paroles\r\nRien à foutre de toi\r\nPuis au fond de ce noire\r\nJe vois un rayon\r\nUn programme provisoire\r\nPour poser mes sillons\r\nY a une communauté\r\nDe gens mal intégrés\r\nIl sont tous comme moi\r\nMais encore plus tarés\r\nProtocole anonyme\r\nConnexion en chiffré\r\nP2P solidaire\r\nConnexion certifiée\r\nLittéraire digital\r\nTu vas aussi kiffer\r\nÇa s'appelle le Darkweb\r\nTu vas aussi kiffer\r\n\r\nFacegoogle aux gogues\r\nY a plus que des conneries\r\nPropagande démagogue\r\nPetits chats tous mimis\r\nMais c'est quoi cette shit\r\nÇa veut plus rien dire\r\nLes keums envoient leurs bites\r\nComme si elles allaient applaudir\r\nNon! C'est trop con\r\nJe veux pas participer\r\nMais si je joue pas le jeux\r\nJe vais être abandonné\r\nPlus personne entendra\r\nTout ce que j'ai à crier\r\nPlus personne ne lira\r\nTout ce que j'ai à crier\r\nPuis au bout du tunnel\r\nJe vois une lueur étrange\r\nCelle d'un réseau fermé\r\nQui reste ouvert au strange\r\nUn lieu virtuel\r\nUne cité idéelle\r\nUne banque de données\r\nPour les mal intégrés\r\nJe peux y être qui je veux\r\nUn antichrist bien pleb\r\nAvoir beaucoup de cheveux\r\nUn intello du Zagreb\r\nT'as besoin d'faire entendre\r\nTu vas aussi kiffer\r\nLa clef tu peux la prendre\r\nTu vas aussi kiffer" + album: Darkweb + albumartist: 徒 Setto セット + genre: + - Cypher Rap + year: 2019 + transformed: + ID3v2.3: + TIT2: Darkweb + TPE1: 徒 Setto セット + Comment: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + TALB: Darkweb + TRCK: '2' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Y'en a mare de ce web\r\nIl est tout pourri\r\nOn peu plus rien y faire\r\nSeulement pousser des cris\r\nQue personne va entendre\r\nSi t'as pas mille amis\r\nTa home-page va se pendre\r\nPerdu le goût de la vie\r\nEnvois ton Paypal\r\nJ'vais lui faire un refus\r\nAjoute-moi en ami\r\nTu vas kiffer mon flux\r\nViens pas faire ton vieux troll\r\nRien a foutre de toi\r\nT’écris de belles paroles\r\nRien à foutre de toi\r\nPuis au fond de ce noire\r\nJe vois un rayon\r\nUn programme provisoire\r\nPour poser mes sillons\r\nY a une communauté\r\nDe gens mal intégrés\r\nIl sont tous comme moi\r\nMais encore plus tarés\r\nProtocole anonyme\r\nConnexion en chiffré\r\nP2P solidaire\r\nConnexion certifiée\r\nLittéraire digital\r\nTu vas aussi kiffer\r\nÇa s'appelle le Darkweb\r\nTu vas aussi kiffer\r\n\r\nFacegoogle aux gogues\r\nY a plus que des conneries\r\nPropagande démagogue\r\nPetits chats tous mimis\r\nMais c'est quoi cette shit\r\nÇa veut plus rien dire\r\nLes keums envoient leurs bites\r\nComme si elles allaient applaudir\r\nNon! C'est trop con\r\nJe veux pas participer\r\nMais si je joue pas le jeux\r\nJe vais être abandonné\r\nPlus personne entendra\r\nTout ce que j'ai à crier\r\nPlus personne ne lira\r\nTout ce que j'ai à crier\r\nPuis au bout du tunnel\r\nJe vois une lueur étrange\r\nCelle d'un réseau fermé\r\nQui reste ouvert au strange\r\nUn lieu virtuel\r\nUne cité idéelle\r\nUne banque de données\r\nPour les mal intégrés\r\nJe peux y être qui je veux\r\nUn antichrist bien pleb\r\nAvoir beaucoup de cheveux\r\nUn intello du Zagreb\r\nT'as besoin d'faire entendre\r\nTu vas aussi kiffer\r\nLa clef tu peux la prendre\r\nTu vas aussi kiffer" + TCON: Cypher Rap + TYER: '2019' + all: + TIT2: Darkweb + TPE1: 徒 Setto セット + Comment: 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + TALB: Darkweb + TRCK: '2' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Y'en a mare de ce web\r\nIl est tout pourri\r\nOn peu plus rien y faire\r\nSeulement pousser des cris\r\nQue personne va entendre\r\nSi t'as pas mille amis\r\nTa home-page va se pendre\r\nPerdu le goût de la vie\r\nEnvois ton Paypal\r\nJ'vais lui faire un refus\r\nAjoute-moi en ami\r\nTu vas kiffer mon flux\r\nViens pas faire ton vieux troll\r\nRien a foutre de toi\r\nT’écris de belles paroles\r\nRien à foutre de toi\r\nPuis au fond de ce noire\r\nJe vois un rayon\r\nUn programme provisoire\r\nPour poser mes sillons\r\nY a une communauté\r\nDe gens mal intégrés\r\nIl sont tous comme moi\r\nMais encore plus tarés\r\nProtocole anonyme\r\nConnexion en chiffré\r\nP2P solidaire\r\nConnexion certifiée\r\nLittéraire digital\r\nTu vas aussi kiffer\r\nÇa s'appelle le Darkweb\r\nTu vas aussi kiffer\r\n\r\nFacegoogle aux gogues\r\nY a plus que des conneries\r\nPropagande démagogue\r\nPetits chats tous mimis\r\nMais c'est quoi cette shit\r\nÇa veut plus rien dire\r\nLes keums envoient leurs bites\r\nComme si elles allaient applaudir\r\nNon! C'est trop con\r\nJe veux pas participer\r\nMais si je joue pas le jeux\r\nJe vais être abandonné\r\nPlus personne entendra\r\nTout ce que j'ai à crier\r\nPlus personne ne lira\r\nTout ce que j'ai à crier\r\nPuis au bout du tunnel\r\nJe vois une lueur étrange\r\nCelle d'un réseau fermé\r\nQui reste ouvert au strange\r\nUn lieu virtuel\r\nUne cité idéelle\r\nUne banque de données\r\nPour les mal intégrés\r\nJe peux y être qui je veux\r\nUn antichrist bien pleb\r\nAvoir beaucoup de cheveux\r\nUn intello du Zagreb\r\nT'as besoin d'faire entendre\r\nTu vas aussi kiffer\r\nLa clef tu peux la prendre\r\nTu vas aussi kiffer" + TCON: Cypher Rap + TYER: '2019' + - path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/3-swipe-instrumental-.mp3 + audio: /assets/albums/darkweb/3-swipe-instrumental-.mp3 + slug: darkweb/3-swipe-instrumental- + albumSlug: darkweb + trackSlug: 3-swipe-instrumental- + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/3-swipe-instrumental-.jpeg + cover: /assets/albums/darkweb/3-swipe-instrumental-.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 12436992 + duration: 282.0179591836735 + native: + ID3v2.3: + - id: TIT2 + value: Swipe (Instrumental) + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: Comment + text: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + - id: TALB + value: Darkweb + - id: TRCK + value: '3' + - id: TPE2 + value: 徒 Setto セット + - id: TCON + value: Cyber Soul + - id: TYER + value: '2019' + quality: + warnings: + - message: Illegal ID3v2 tag length + common: + track: + 'no': 3 + of: null + disk: + 'no': null + of: null + title: Swipe (Instrumental) + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + album: Darkweb + albumartist: 徒 Setto セット + genre: + - Cyber Soul + year: 2019 + transformed: + ID3v2.3: + TIT2: Swipe (Instrumental) + TPE1: 徒 Setto セット + Comment: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + TALB: Darkweb + TRCK: '3' + TPE2: 徒 Setto セット + TCON: Cyber Soul + TYER: '2019' + all: + TIT2: Swipe (Instrumental) + TPE1: 徒 Setto セット + Comment: 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + TALB: Darkweb + TRCK: '3' + TPE2: 徒 Setto セット + TCON: Cyber Soul + TYER: '2019' + - path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/4-darkweb-instrumental-.mp3 + audio: /assets/albums/darkweb/4-darkweb-instrumental-.mp3 + slug: darkweb/4-darkweb-instrumental- + albumSlug: darkweb + trackSlug: 4-darkweb-instrumental- + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/4-darkweb-instrumental-.jpeg + cover: /assets/albums/darkweb/4-darkweb-instrumental-.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 12526848 + duration: 284.05551020408166 + native: + ID3v2.3: + - id: TIT2 + value: Darkweb (Instrumental) + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: &ref_0 + language: XXX + description: '' + text: '' + - id: TALB + value: Darkweb + - id: TPE2 + value: 徒 Setto セット + - id: TCON + value: Cypher Rap + - id: TRCK + value: '4' + - id: COMM + value: + language: XXX + description: Comment + text: Cover art and music by To Setto Setto + - id: TYER + value: '2019' + quality: + warnings: [] + common: + track: + 'no': 4 + of: null + disk: + 'no': null + of: null + title: Darkweb (Instrumental) + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - '' + - Cover art and music by To Setto Setto + album: Darkweb + albumartist: 徒 Setto セット + genre: + - Cypher Rap + year: 2019 + transformed: + ID3v2.3: + TIT2: Darkweb (Instrumental) + TPE1: 徒 Setto セット + COMM: *ref_0 + TALB: Darkweb + TPE2: 徒 Setto セット + TCON: Cypher Rap + TRCK: '4' + Comment: Cover art and music by To Setto Setto + TYER: '2019' + all: + TIT2: Darkweb (Instrumental) + TPE1: 徒 Setto セット + COMM: *ref_0 + TALB: Darkweb + TPE2: 徒 Setto セット + TCON: Cypher Rap + TRCK: '4' + Comment: Cover art and music by To Setto Setto + TYER: '2019' +--- diff --git a/_albums/live-with-hardware.md b/_albums/live-with-hardware.md new file mode 100644 index 0000000..fffa976 --- /dev/null +++ b/_albums/live-with-hardware.md @@ -0,0 +1,89 @@ +--- +layout: album +slug: live-with-hardware +name: Live with hardware +artists: 徒 Setto セット +bitrate: 192000 +trackCount: 1 +cover: /assets/albums/live-with-hardware/1-ep-life-of-a-dudelini.jpeg +date: 2020-4-20 +tracks: + - path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/live-with-hardware/1-ep-life-of-a-dudelini.mp3 + audio: /assets/albums/live-with-hardware/1-ep-life-of-a-dudelini.mp3 + slug: live-with-hardware/1-ep-life-of-a-dudelini + albumSlug: live-with-hardware + trackSlug: 1-ep-life-of-a-dudelini + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/live-with-hardware/1-ep-life-of-a-dudelini.jpeg + cover: /assets/albums/live-with-hardware/1-ep-life-of-a-dudelini.jpeg + format: + tagTypes: + - ID3v2.4 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 48000 + numberOfChannels: 2 + bitrate: 192000 + codecProfile: CBR + tool: LAME3.100 + duration: 683.472 + native: + ID3v2.4: + - id: TIT2 + value: EP-Life of a Dudelini + - id: TPE1 + value: 徒 Setto セット + - id: TALB + value: Live with hardware + - id: COMM + value: &ref_0 + language: eng + description: '' + text: Live take + - id: TDRC + value: '2020-04-20' + - id: TRCK + value: '1' + - id: TCON + value: Cybersoul + quality: + warnings: [] + common: + track: + 'no': 1 + of: null + disk: + 'no': null + of: null + title: EP-Life of a Dudelini + artists: + - 徒 Setto セット + artist: 徒 Setto セット + album: Live with hardware + comment: + - Live take + year: 2020 + date: '2020-04-20' + genre: + - Cybersoul + transformed: + ID3v2.4: + TIT2: EP-Life of a Dudelini + TPE1: 徒 Setto セット + TALB: Live with hardware + COMM: *ref_0 + TDRC: '2020-04-20' + TRCK: '1' + TCON: Cybersoul + all: + TIT2: EP-Life of a Dudelini + TPE1: 徒 Setto セット + TALB: Live with hardware + COMM: *ref_0 + TDRC: '2020-04-20' + TRCK: '1' + TCON: Cybersoul +--- diff --git a/_albums/satoshi-mon-ami.md b/_albums/satoshi-mon-ami.md new file mode 100644 index 0000000..14524a4 --- /dev/null +++ b/_albums/satoshi-mon-ami.md @@ -0,0 +1,191 @@ +--- +layout: album +slug: satoshi-mon-ami +name: Satoshi mon ami +artists: 徒 Setto セット +bitrate: 128000 +trackCount: 2 +cover: /assets/albums/satoshi-mon-ami/1-k-as-tu-fait-de-nous-.jpeg +date: 2018-1-1 +tracks: + - path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/satoshi-mon-ami/1-k-as-tu-fait-de-nous-.mp3 + audio: /assets/albums/satoshi-mon-ami/1-k-as-tu-fait-de-nous-.mp3 + slug: satoshi-mon-ami/1-k-as-tu-fait-de-nous- + albumSlug: satoshi-mon-ami + trackSlug: 1-k-as-tu-fait-de-nous- + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/satoshi-mon-ami/1-k-as-tu-fait-de-nous-.jpeg + cover: /assets/albums/satoshi-mon-ami/1-k-as-tu-fait-de-nous-.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 13433472 + duration: 304.6138775510204 + native: + ID3v2.3: + - id: TIT2 + value: K'as-tu fait de nous? + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: &ref_0 + language: XXX + description: '' + text: Cover art and music by To Setto Setto + - id: TALB + value: Satoshi mon ami + - id: TRCK + value: '1' + - id: TPE2 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: UNSYNCEDLYRICS + text: "Qu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\nAcid est la tribe\r\nCyberpunk le game\r\nSur des reseau de bribe\r\non fait monter le fame\r\nMeme pas besoin de files\r\nIsole sur l'iles\r\non fait un tour au grotte\r\npour pas que la story capotte\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\n\r\nSi la police nous ajoute\r\nNouvelle vie nouveau compte\r\nOn tourne le dos au toute\r\non delete sans honte\r\nMeme pas besoin d'ecrire\r\ntu peux mäentendre rire\r\nen tour de face a face\r\nQui brise la glace\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\n24 heures pour dechiffre\r\nOn dirait une invitation\r\nLa story que t'as balancer\r\nCryptokids une seul nation\r\ncelle des rave et du reve\r\nHilife a plein poumons\r\nLe flux n'as pas de treve\r\nEt en suede il mange du saumon\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou" + - id: TCON + value: Cyber Soul + - id: TYER + value: '2018' + quality: + warnings: [] + common: + track: + 'no': 1 + of: null + disk: + 'no': null + of: null + title: K'as-tu fait de nous? + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - Cover art and music by To Setto Setto + - "Qu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\nAcid est la tribe\r\nCyberpunk le game\r\nSur des reseau de bribe\r\non fait monter le fame\r\nMeme pas besoin de files\r\nIsole sur l'iles\r\non fait un tour au grotte\r\npour pas que la story capotte\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\n\r\nSi la police nous ajoute\r\nNouvelle vie nouveau compte\r\nOn tourne le dos au toute\r\non delete sans honte\r\nMeme pas besoin d'ecrire\r\ntu peux mäentendre rire\r\nen tour de face a face\r\nQui brise la glace\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\n24 heures pour dechiffre\r\nOn dirait une invitation\r\nLa story que t'as balancer\r\nCryptokids une seul nation\r\ncelle des rave et du reve\r\nHilife a plein poumons\r\nLe flux n'as pas de treve\r\nEt en suede il mange du saumon\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou" + album: Satoshi mon ami + albumartist: 徒 Setto セット + genre: + - Cyber Soul + year: 2018 + transformed: + ID3v2.3: + TIT2: K'as-tu fait de nous? + TPE1: 徒 Setto セット + COMM: *ref_0 + TALB: Satoshi mon ami + TRCK: '1' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Qu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\nAcid est la tribe\r\nCyberpunk le game\r\nSur des reseau de bribe\r\non fait monter le fame\r\nMeme pas besoin de files\r\nIsole sur l'iles\r\non fait un tour au grotte\r\npour pas que la story capotte\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\n\r\nSi la police nous ajoute\r\nNouvelle vie nouveau compte\r\nOn tourne le dos au toute\r\non delete sans honte\r\nMeme pas besoin d'ecrire\r\ntu peux mäentendre rire\r\nen tour de face a face\r\nQui brise la glace\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\n24 heures pour dechiffre\r\nOn dirait une invitation\r\nLa story que t'as balancer\r\nCryptokids une seul nation\r\ncelle des rave et du reve\r\nHilife a plein poumons\r\nLe flux n'as pas de treve\r\nEt en suede il mange du saumon\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou" + TCON: Cyber Soul + TYER: '2018' + all: + TIT2: K'as-tu fait de nous? + TPE1: 徒 Setto セット + COMM: *ref_0 + TALB: Satoshi mon ami + TRCK: '1' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Qu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\nAcid est la tribe\r\nCyberpunk le game\r\nSur des reseau de bribe\r\non fait monter le fame\r\nMeme pas besoin de files\r\nIsole sur l'iles\r\non fait un tour au grotte\r\npour pas que la story capotte\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\n\r\nSi la police nous ajoute\r\nNouvelle vie nouveau compte\r\nOn tourne le dos au toute\r\non delete sans honte\r\nMeme pas besoin d'ecrire\r\ntu peux mäentendre rire\r\nen tour de face a face\r\nQui brise la glace\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\n24 heures pour dechiffre\r\nOn dirait une invitation\r\nLa story que t'as balancer\r\nCryptokids une seul nation\r\ncelle des rave et du reve\r\nHilife a plein poumons\r\nLe flux n'as pas de treve\r\nEt en suede il mange du saumon\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou" + TCON: Cyber Soul + TYER: '2018' + - path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/satoshi-mon-ami/2-r-ve-de-toi.mp3 + audio: /assets/albums/satoshi-mon-ami/2-r-ve-de-toi.mp3 + slug: satoshi-mon-ami/2-r-ve-de-toi + albumSlug: satoshi-mon-ami + trackSlug: 2-r-ve-de-toi + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/satoshi-mon-ami/2-r-ve-de-toi.jpeg + cover: /assets/albums/satoshi-mon-ami/2-r-ve-de-toi.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 8195328 + duration: 185.83510204081634 + native: + ID3v2.3: + - id: TIT2 + value: Rêve de toi + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: &ref_1 + language: XXX + description: '' + text: Cover art and music by To Setto Setto + - id: TALB + value: Satoshi mon ami + - id: TRCK + value: '2' + - id: TPE2 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: UNSYNCEDLYRICS + text: "Je rêve de toi\r\nChaque jour je te vois\r\nJe fais pas de faux pas\r\nToujours des commentaires sympas\r\n\r\nTa vie est belle\r\nÇa se voit sur les cocotiers\r\nMais mon label\r\nNe pourras pas me déployer\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, ce n'est pas toi\r\n\r\nJ'ajoute des cœurs\r\nA tous les poste que tu publies\r\nJ’envoie des merdes\r\nA tous les cons qui t'humilient\r\n\r\nTa vie radieuse\r\nIllumine mes après-midi\r\nQuand je me lève\r\nAprès avoir perdu encore une nuit\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, toujours pas toi" + - id: TCON + value: Cyber Soul + - id: TYER + value: '2018' + quality: + warnings: [] + common: + track: + 'no': 2 + of: null + disk: + 'no': null + of: null + title: Rêve de toi + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - Cover art and music by To Setto Setto + - "Je rêve de toi\r\nChaque jour je te vois\r\nJe fais pas de faux pas\r\nToujours des commentaires sympas\r\n\r\nTa vie est belle\r\nÇa se voit sur les cocotiers\r\nMais mon label\r\nNe pourras pas me déployer\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, ce n'est pas toi\r\n\r\nJ'ajoute des cœurs\r\nA tous les poste que tu publies\r\nJ’envoie des merdes\r\nA tous les cons qui t'humilient\r\n\r\nTa vie radieuse\r\nIllumine mes après-midi\r\nQuand je me lève\r\nAprès avoir perdu encore une nuit\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, toujours pas toi" + album: Satoshi mon ami + albumartist: 徒 Setto セット + genre: + - Cyber Soul + year: 2018 + transformed: + ID3v2.3: + TIT2: Rêve de toi + TPE1: 徒 Setto セット + COMM: *ref_1 + TALB: Satoshi mon ami + TRCK: '2' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Je rêve de toi\r\nChaque jour je te vois\r\nJe fais pas de faux pas\r\nToujours des commentaires sympas\r\n\r\nTa vie est belle\r\nÇa se voit sur les cocotiers\r\nMais mon label\r\nNe pourras pas me déployer\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, ce n'est pas toi\r\n\r\nJ'ajoute des cœurs\r\nA tous les poste que tu publies\r\nJ’envoie des merdes\r\nA tous les cons qui t'humilient\r\n\r\nTa vie radieuse\r\nIllumine mes après-midi\r\nQuand je me lève\r\nAprès avoir perdu encore une nuit\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, toujours pas toi" + TCON: Cyber Soul + TYER: '2018' + all: + TIT2: Rêve de toi + TPE1: 徒 Setto セット + COMM: *ref_1 + TALB: Satoshi mon ami + TRCK: '2' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Je rêve de toi\r\nChaque jour je te vois\r\nJe fais pas de faux pas\r\nToujours des commentaires sympas\r\n\r\nTa vie est belle\r\nÇa se voit sur les cocotiers\r\nMais mon label\r\nNe pourras pas me déployer\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, ce n'est pas toi\r\n\r\nJ'ajoute des cœurs\r\nA tous les poste que tu publies\r\nJ’envoie des merdes\r\nA tous les cons qui t'humilient\r\n\r\nTa vie radieuse\r\nIllumine mes après-midi\r\nQuand je me lève\r\nAprès avoir perdu encore une nuit\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, toujours pas toi" + TCON: Cyber Soul + TYER: '2018' +--- diff --git a/_authors/_defaults.md b/_authors/_defaults.md new file mode 100644 index 0000000..e31a8a0 --- /dev/null +++ b/_authors/_defaults.md @@ -0,0 +1,9 @@ +--- +name: +position: +image: +url_staff: +email: +gpg: +blurb_markup: +--- \ No newline at end of file diff --git a/_authors/setto.md b/_authors/setto.md new file mode 100644 index 0000000..a76e7aa --- /dev/null +++ b/_authors/setto.md @@ -0,0 +1,9 @@ +--- +name: 徒 setto セット +position: 'Geek' +image: /siteicon.png +url_staff: 'https://setto.basspistol.com' +email: 'setto@basspistol.com' +gpg: 'https://keyserver.ubuntu.com/pks/lookup?search=setto%40basspistol.com&fingerprint=on&op=index' +blurb_markup: 'Set, Party, Gang' +--- \ No newline at end of file diff --git a/_config.yml b/_config.yml new file mode 100644 index 0000000..f1de04b --- /dev/null +++ b/_config.yml @@ -0,0 +1,118 @@ +url: "https://setto.basspistol.com" # the base hostname & protocol for your site +permalink: /:categories/:title/ + +exclude: + - changelog.md + - '*.*~' + - '*.xcf' + - '*.blend*' + - Gemfile + - Gemfile.lock + - README.md + - LICENCE + +title : 徒 setto セット +description: 'Set, Party, Gang! #Cybersoul.' +geo: + timezone: "Europe/Switzerland" + lat: '46.203918' + long: '6.133011' + region: 'CH-GE' + town: 'Geneva' + country: 'Switzerland' + postalcode: '1201' + +banner: /images/setto-logo.svg +icon: /images/setto-logoicon.svg +logo: /images/setto-logo.svg +logo-footer: /images/setto-logo-dark.svg +mediaurl: https://media.basspistol.com/setto.basspistol.com + +publisher: + name: To Setto Setto + domain: setto.basspistol.com + mail: setto@basspistol.com +social: + name: To Setto Setto + links: + - https://twitter.com/ToSettoSetto + - https://instagram.com/ToSettoSetto + +categories: + - releases + - ramblings + +collections: + albums: + output: false + permalink: /albums/:name/ + tracks: + output: true + permalink: /albums/:path/ + authors: + output: false + +# defaults + +sass: + sass_dir: _sass + +defaults: + - scope: + path: "" + values: + lang: en + - scope: + path: "" + type: "tracks" + values: + layout: "track" + lang: en + seo: + type: "AudioObject" + - scope: + path: "" + type: "albums" + values: + layout: "album" + lang: en + seo: + type: "AudioObject" + - scope: + path: "" + type: "pages" + values: + layout: "default" + lang: en + _options: + image: + width: 1024 + height: 720 + resize_style: cover + uploads_dir: "/images/pages" + content: + width: 720 + height: 720 + resize_style: cover + uploads_dir: "/images/pages" + - scope: + path: "" + type: "posts" + values: + layout: "post" + lang: en + permalink: /:title/ + _options: + image: + width: 1024 + height: 720 + resize_style: cover + uploads_dir: "/images/posts" + content: + width: 720 + height: 720 + resize_style: cover + uploads_dir: "/images/posts" +# --------- +# Translate +lang: en diff --git a/_data/albums.yml b/_data/albums.yml new file mode 100644 index 0000000..1cb8045 --- /dev/null +++ b/_data/albums.yml @@ -0,0 +1,1045 @@ +- layout: album + slug: cyber-grany + name: Cyber Grany + artists: 徒 Setto セット + bitrate: 320000 + trackCount: 1 + cover: /assets/albums/cyber-grany/1-grandma-got-the-ssh-keys.jpeg + date: 2019-1-1 + tracks: + - path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/cyber-grany/1-grandma-got-the-ssh-keys.mp3 + audio: /assets/albums/cyber-grany/1-grandma-got-the-ssh-keys.mp3 + slug: cyber-grany/1-grandma-got-the-ssh-keys + albumSlug: cyber-grany + trackSlug: 1-grandma-got-the-ssh-keys + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/cyber-grany/1-grandma-got-the-ssh-keys.jpeg + cover: /assets/albums/cyber-grany/1-grandma-got-the-ssh-keys.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 320000 + codecProfile: CBR + numberOfSamples: 8909568 + duration: 202.03102040816327 + native: + ID3v2.3: + - id: TIT2 + value: Grandma got the SSH keys + - id: TPE1 + value: 徒 Setto セット + - id: TRCK + value: 1/1 + - id: TALB + value: Cyber Grany + - id: TPE2 + value: To Setto Setto + - id: TCON + value: Acid Trap + - id: 'TXXX:CDDB DiscID' + value: 0200ca01 + - id: 'TXXX:discid' + value: 0200ca01 + - id: 'TXXX:MusicBrainz DiscID' + value: bhKd3SFqkr6x1L9X2JkIZ6UIaRA- + - id: 'TXXX:musicbrainz_discid' + value: bhKd3SFqkr6x1L9X2JkIZ6UIaRA- + - id: COMM + value: + language: XXX + description: WEBSITE + text: 'https://setto.basspistol.com' + - id: COMM + value: + language: XXX + description: Comment + text: Special track for Acid December 2019 + - id: TYER + value: '2019' + quality: + warnings: [] + common: + track: + 'no': 1 + of: 1 + disk: + 'no': null + of: null + title: Grandma got the SSH keys + artists: + - 徒 Setto セット + artist: 徒 Setto セット + album: Cyber Grany + albumartist: To Setto Setto + genre: + - Acid Trap + comment: + - 'https://setto.basspistol.com' + - Special track for Acid December 2019 + year: 2019 + transformed: + ID3v2.3: + TIT2: Grandma got the SSH keys + TPE1: 徒 Setto セット + TRCK: 1/1 + TALB: Cyber Grany + TPE2: To Setto Setto + TCON: Acid Trap + 'TXXX:CDDB DiscID': 0200ca01 + 'TXXX:discid': 0200ca01 + 'TXXX:MusicBrainz DiscID': bhKd3SFqkr6x1L9X2JkIZ6UIaRA- + 'TXXX:musicbrainz_discid': bhKd3SFqkr6x1L9X2JkIZ6UIaRA- + WEBSITE: 'https://setto.basspistol.com' + Comment: Special track for Acid December 2019 + TYER: '2019' + all: + TIT2: Grandma got the SSH keys + TPE1: 徒 Setto セット + TRCK: 1/1 + TALB: Cyber Grany + TPE2: To Setto Setto + TCON: Acid Trap + 'TXXX:CDDB DiscID': 0200ca01 + 'TXXX:discid': 0200ca01 + 'TXXX:MusicBrainz DiscID': bhKd3SFqkr6x1L9X2JkIZ6UIaRA- + 'TXXX:musicbrainz_discid': bhKd3SFqkr6x1L9X2JkIZ6UIaRA- + WEBSITE: 'https://setto.basspistol.com' + Comment: Special track for Acid December 2019 + TYER: '2019' +- layout: album + slug: darkweb + name: Darkweb + artists: 徒 Setto セット + bitrate: 128000 + trackCount: 4 + cover: /assets/albums/darkweb/1-swipe.jpeg + date: 2019-1-1 + tracks: + - path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/1-swipe.mp3 + audio: /assets/albums/darkweb/1-swipe.mp3 + slug: darkweb/1-swipe + albumSlug: darkweb + trackSlug: 1-swipe + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/1-swipe.jpeg + cover: /assets/albums/darkweb/1-swipe.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 12388608 + duration: 280.9208163265306 + native: + ID3v2.3: + - id: TIT2 + value: Swipe + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: Comment + text: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + - id: TALB + value: Darkweb + - id: TRCK + value: '1' + - id: TPE2 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: UNSYNCEDLYRICS + text: >- + Comme tous les après-midis, Assis dans le tram en face d'une + jolie vie, + + Sur mon écran elles sont encore plus sexy. + + Swipe à gauche swipe à droite, + + Celle-ci a l'aire plutôt maladroite, + + Ça m'irait bien ça. + + Mais la personne en face de moi, + + Elle me matte, elle me mire. + + Je ne sais pas quoi faire, + + Qu'est-ce que je vais lui dire? + + Elle a de belles dents! + + Je vais retourner a mon écran. + + je n'ai simplement, + + Pas assez de cran. + + + Je swipe à droite, + + Je swipe à gauche, + + Je yeuxt vers l'avant de temps en temps. + + + Si seulement elle voyait mon flux, + + Je suis sur qu'elle n'en pourrait plus! + + Comment je fais pour l'ajouter? + + Est-ce que Google pourrait la trouver? + + Hashtag jolitram, + + Faudrait que ça devienne viral sur Instagram. + + Ensemble on aurait peut-être un avenir! + + Mais comment coño vais-je lui dire? + + Merde elle appuie sur arrêt! + + Je lui tend mon casque ça le fait! + + Elle donne le siens truc de ouf?! + + Hésitations je m'immisce. + + Cette personne écoute de la bonne musique de glisse. + + + Je swipe à droite, + + Je swipe à gauche, + + Je yeuxt vers l'avant de temps en temps. + - id: TCON + value: Cyber Soul + - id: TYER + value: '2019' + quality: + warnings: [] + common: + track: + 'no': 1 + of: null + disk: + 'no': null + of: null + title: Swipe + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + - >- + Comme tous les après-midis, Assis dans le tram en face d'une jolie + vie, + + Sur mon écran elles sont encore plus sexy. + + Swipe à gauche swipe à droite, + + Celle-ci a l'aire plutôt maladroite, + + Ça m'irait bien ça. + + Mais la personne en face de moi, + + Elle me matte, elle me mire. + + Je ne sais pas quoi faire, + + Qu'est-ce que je vais lui dire? + + Elle a de belles dents! + + Je vais retourner a mon écran. + + je n'ai simplement, + + Pas assez de cran. + + + Je swipe à droite, + + Je swipe à gauche, + + Je yeuxt vers l'avant de temps en temps. + + + Si seulement elle voyait mon flux, + + Je suis sur qu'elle n'en pourrait plus! + + Comment je fais pour l'ajouter? + + Est-ce que Google pourrait la trouver? + + Hashtag jolitram, + + Faudrait que ça devienne viral sur Instagram. + + Ensemble on aurait peut-être un avenir! + + Mais comment coño vais-je lui dire? + + Merde elle appuie sur arrêt! + + Je lui tend mon casque ça le fait! + + Elle donne le siens truc de ouf?! + + Hésitations je m'immisce. + + Cette personne écoute de la bonne musique de glisse. + + + Je swipe à droite, + + Je swipe à gauche, + + Je yeuxt vers l'avant de temps en temps. + album: Darkweb + albumartist: 徒 Setto セット + genre: + - Cyber Soul + year: 2019 + transformed: + ID3v2.3: + TIT2: Swipe + TPE1: 徒 Setto セット + Comment: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + TALB: Darkweb + TRCK: '1' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: >- + Comme tous les après-midis, Assis dans le tram en face d'une jolie + vie, + + Sur mon écran elles sont encore plus sexy. + + Swipe à gauche swipe à droite, + + Celle-ci a l'aire plutôt maladroite, + + Ça m'irait bien ça. + + Mais la personne en face de moi, + + Elle me matte, elle me mire. + + Je ne sais pas quoi faire, + + Qu'est-ce que je vais lui dire? + + Elle a de belles dents! + + Je vais retourner a mon écran. + + je n'ai simplement, + + Pas assez de cran. + + + Je swipe à droite, + + Je swipe à gauche, + + Je yeuxt vers l'avant de temps en temps. + + + Si seulement elle voyait mon flux, + + Je suis sur qu'elle n'en pourrait plus! + + Comment je fais pour l'ajouter? + + Est-ce que Google pourrait la trouver? + + Hashtag jolitram, + + Faudrait que ça devienne viral sur Instagram. + + Ensemble on aurait peut-être un avenir! + + Mais comment coño vais-je lui dire? + + Merde elle appuie sur arrêt! + + Je lui tend mon casque ça le fait! + + Elle donne le siens truc de ouf?! + + Hésitations je m'immisce. + + Cette personne écoute de la bonne musique de glisse. + + + Je swipe à droite, + + Je swipe à gauche, + + Je yeuxt vers l'avant de temps en temps. + TCON: Cyber Soul + TYER: '2019' + all: + TIT2: Swipe + TPE1: 徒 Setto セット + Comment: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + TALB: Darkweb + TRCK: '1' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: >- + Comme tous les après-midis, Assis dans le tram en face d'une jolie + vie, + + Sur mon écran elles sont encore plus sexy. + + Swipe à gauche swipe à droite, + + Celle-ci a l'aire plutôt maladroite, + + Ça m'irait bien ça. + + Mais la personne en face de moi, + + Elle me matte, elle me mire. + + Je ne sais pas quoi faire, + + Qu'est-ce que je vais lui dire? + + Elle a de belles dents! + + Je vais retourner a mon écran. + + je n'ai simplement, + + Pas assez de cran. + + + Je swipe à droite, + + Je swipe à gauche, + + Je yeuxt vers l'avant de temps en temps. + + + Si seulement elle voyait mon flux, + + Je suis sur qu'elle n'en pourrait plus! + + Comment je fais pour l'ajouter? + + Est-ce que Google pourrait la trouver? + + Hashtag jolitram, + + Faudrait que ça devienne viral sur Instagram. + + Ensemble on aurait peut-être un avenir! + + Mais comment coño vais-je lui dire? + + Merde elle appuie sur arrêt! + + Je lui tend mon casque ça le fait! + + Elle donne le siens truc de ouf?! + + Hésitations je m'immisce. + + Cette personne écoute de la bonne musique de glisse. + + + Je swipe à droite, + + Je swipe à gauche, + + Je yeuxt vers l'avant de temps en temps. + TCON: Cyber Soul + TYER: '2019' + - path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/2-darkweb.mp3 + audio: /assets/albums/darkweb/2-darkweb.mp3 + slug: darkweb/2-darkweb + albumSlug: darkweb + trackSlug: 2-darkweb + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/2-darkweb.jpeg + cover: /assets/albums/darkweb/2-darkweb.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 12566016 + duration: 284.94367346938776 + native: + ID3v2.3: + - id: TIT2 + value: Darkweb + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: Comment + text: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + - id: TALB + value: Darkweb + - id: TRCK + value: '2' + - id: TPE2 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: UNSYNCEDLYRICS + text: "Y'en a mare de ce web\r\nIl est tout pourri\r\nOn peu plus rien y faire\r\nSeulement pousser des cris\r\nQue personne va entendre\r\nSi t'as pas mille amis\r\nTa home-page va se pendre\r\nPerdu le goût de la vie\r\nEnvois ton Paypal\r\nJ'vais lui faire un refus\r\nAjoute-moi en ami\r\nTu vas kiffer mon flux\r\nViens pas faire ton vieux troll\r\nRien a foutre de toi\r\nT’écris de belles paroles\r\nRien à foutre de toi\r\nPuis au fond de ce noire\r\nJe vois un rayon\r\nUn programme provisoire\r\nPour poser mes sillons\r\nY a une communauté\r\nDe gens mal intégrés\r\nIl sont tous comme moi\r\nMais encore plus tarés\r\nProtocole anonyme\r\nConnexion en chiffré\r\nP2P solidaire\r\nConnexion certifiée\r\nLittéraire digital\r\nTu vas aussi kiffer\r\nÇa s'appelle le Darkweb\r\nTu vas aussi kiffer\r\n\r\nFacegoogle aux gogues\r\nY a plus que des conneries\r\nPropagande démagogue\r\nPetits chats tous mimis\r\nMais c'est quoi cette shit\r\nÇa veut plus rien dire\r\nLes keums envoient leurs bites\r\nComme si elles allaient applaudir\r\nNon! C'est trop con\r\nJe veux pas participer\r\nMais si je joue pas le jeux\r\nJe vais être abandonné\r\nPlus personne entendra\r\nTout ce que j'ai à crier\r\nPlus personne ne lira\r\nTout ce que j'ai à crier\r\nPuis au bout du tunnel\r\nJe vois une lueur étrange\r\nCelle d'un réseau fermé\r\nQui reste ouvert au strange\r\nUn lieu virtuel\r\nUne cité idéelle\r\nUne banque de données\r\nPour les mal intégrés\r\nJe peux y être qui je veux\r\nUn antichrist bien pleb\r\nAvoir beaucoup de cheveux\r\nUn intello du Zagreb\r\nT'as besoin d'faire entendre\r\nTu vas aussi kiffer\r\nLa clef tu peux la prendre\r\nTu vas aussi kiffer" + - id: TCON + value: Cypher Rap + - id: TYER + value: '2019' + quality: + warnings: [] + common: + track: + 'no': 2 + of: null + disk: + 'no': null + of: null + title: Darkweb + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + - "Y'en a mare de ce web\r\nIl est tout pourri\r\nOn peu plus rien y faire\r\nSeulement pousser des cris\r\nQue personne va entendre\r\nSi t'as pas mille amis\r\nTa home-page va se pendre\r\nPerdu le goût de la vie\r\nEnvois ton Paypal\r\nJ'vais lui faire un refus\r\nAjoute-moi en ami\r\nTu vas kiffer mon flux\r\nViens pas faire ton vieux troll\r\nRien a foutre de toi\r\nT’écris de belles paroles\r\nRien à foutre de toi\r\nPuis au fond de ce noire\r\nJe vois un rayon\r\nUn programme provisoire\r\nPour poser mes sillons\r\nY a une communauté\r\nDe gens mal intégrés\r\nIl sont tous comme moi\r\nMais encore plus tarés\r\nProtocole anonyme\r\nConnexion en chiffré\r\nP2P solidaire\r\nConnexion certifiée\r\nLittéraire digital\r\nTu vas aussi kiffer\r\nÇa s'appelle le Darkweb\r\nTu vas aussi kiffer\r\n\r\nFacegoogle aux gogues\r\nY a plus que des conneries\r\nPropagande démagogue\r\nPetits chats tous mimis\r\nMais c'est quoi cette shit\r\nÇa veut plus rien dire\r\nLes keums envoient leurs bites\r\nComme si elles allaient applaudir\r\nNon! C'est trop con\r\nJe veux pas participer\r\nMais si je joue pas le jeux\r\nJe vais être abandonné\r\nPlus personne entendra\r\nTout ce que j'ai à crier\r\nPlus personne ne lira\r\nTout ce que j'ai à crier\r\nPuis au bout du tunnel\r\nJe vois une lueur étrange\r\nCelle d'un réseau fermé\r\nQui reste ouvert au strange\r\nUn lieu virtuel\r\nUne cité idéelle\r\nUne banque de données\r\nPour les mal intégrés\r\nJe peux y être qui je veux\r\nUn antichrist bien pleb\r\nAvoir beaucoup de cheveux\r\nUn intello du Zagreb\r\nT'as besoin d'faire entendre\r\nTu vas aussi kiffer\r\nLa clef tu peux la prendre\r\nTu vas aussi kiffer" + album: Darkweb + albumartist: 徒 Setto セット + genre: + - Cypher Rap + year: 2019 + transformed: + ID3v2.3: + TIT2: Darkweb + TPE1: 徒 Setto セット + Comment: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + TALB: Darkweb + TRCK: '2' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Y'en a mare de ce web\r\nIl est tout pourri\r\nOn peu plus rien y faire\r\nSeulement pousser des cris\r\nQue personne va entendre\r\nSi t'as pas mille amis\r\nTa home-page va se pendre\r\nPerdu le goût de la vie\r\nEnvois ton Paypal\r\nJ'vais lui faire un refus\r\nAjoute-moi en ami\r\nTu vas kiffer mon flux\r\nViens pas faire ton vieux troll\r\nRien a foutre de toi\r\nT’écris de belles paroles\r\nRien à foutre de toi\r\nPuis au fond de ce noire\r\nJe vois un rayon\r\nUn programme provisoire\r\nPour poser mes sillons\r\nY a une communauté\r\nDe gens mal intégrés\r\nIl sont tous comme moi\r\nMais encore plus tarés\r\nProtocole anonyme\r\nConnexion en chiffré\r\nP2P solidaire\r\nConnexion certifiée\r\nLittéraire digital\r\nTu vas aussi kiffer\r\nÇa s'appelle le Darkweb\r\nTu vas aussi kiffer\r\n\r\nFacegoogle aux gogues\r\nY a plus que des conneries\r\nPropagande démagogue\r\nPetits chats tous mimis\r\nMais c'est quoi cette shit\r\nÇa veut plus rien dire\r\nLes keums envoient leurs bites\r\nComme si elles allaient applaudir\r\nNon! C'est trop con\r\nJe veux pas participer\r\nMais si je joue pas le jeux\r\nJe vais être abandonné\r\nPlus personne entendra\r\nTout ce que j'ai à crier\r\nPlus personne ne lira\r\nTout ce que j'ai à crier\r\nPuis au bout du tunnel\r\nJe vois une lueur étrange\r\nCelle d'un réseau fermé\r\nQui reste ouvert au strange\r\nUn lieu virtuel\r\nUne cité idéelle\r\nUne banque de données\r\nPour les mal intégrés\r\nJe peux y être qui je veux\r\nUn antichrist bien pleb\r\nAvoir beaucoup de cheveux\r\nUn intello du Zagreb\r\nT'as besoin d'faire entendre\r\nTu vas aussi kiffer\r\nLa clef tu peux la prendre\r\nTu vas aussi kiffer" + TCON: Cypher Rap + TYER: '2019' + all: + TIT2: Darkweb + TPE1: 徒 Setto セット + Comment: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + TALB: Darkweb + TRCK: '2' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Y'en a mare de ce web\r\nIl est tout pourri\r\nOn peu plus rien y faire\r\nSeulement pousser des cris\r\nQue personne va entendre\r\nSi t'as pas mille amis\r\nTa home-page va se pendre\r\nPerdu le goût de la vie\r\nEnvois ton Paypal\r\nJ'vais lui faire un refus\r\nAjoute-moi en ami\r\nTu vas kiffer mon flux\r\nViens pas faire ton vieux troll\r\nRien a foutre de toi\r\nT’écris de belles paroles\r\nRien à foutre de toi\r\nPuis au fond de ce noire\r\nJe vois un rayon\r\nUn programme provisoire\r\nPour poser mes sillons\r\nY a une communauté\r\nDe gens mal intégrés\r\nIl sont tous comme moi\r\nMais encore plus tarés\r\nProtocole anonyme\r\nConnexion en chiffré\r\nP2P solidaire\r\nConnexion certifiée\r\nLittéraire digital\r\nTu vas aussi kiffer\r\nÇa s'appelle le Darkweb\r\nTu vas aussi kiffer\r\n\r\nFacegoogle aux gogues\r\nY a plus que des conneries\r\nPropagande démagogue\r\nPetits chats tous mimis\r\nMais c'est quoi cette shit\r\nÇa veut plus rien dire\r\nLes keums envoient leurs bites\r\nComme si elles allaient applaudir\r\nNon! C'est trop con\r\nJe veux pas participer\r\nMais si je joue pas le jeux\r\nJe vais être abandonné\r\nPlus personne entendra\r\nTout ce que j'ai à crier\r\nPlus personne ne lira\r\nTout ce que j'ai à crier\r\nPuis au bout du tunnel\r\nJe vois une lueur étrange\r\nCelle d'un réseau fermé\r\nQui reste ouvert au strange\r\nUn lieu virtuel\r\nUne cité idéelle\r\nUne banque de données\r\nPour les mal intégrés\r\nJe peux y être qui je veux\r\nUn antichrist bien pleb\r\nAvoir beaucoup de cheveux\r\nUn intello du Zagreb\r\nT'as besoin d'faire entendre\r\nTu vas aussi kiffer\r\nLa clef tu peux la prendre\r\nTu vas aussi kiffer" + TCON: Cypher Rap + TYER: '2019' + - path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/3-swipe-instrumental-.mp3 + audio: /assets/albums/darkweb/3-swipe-instrumental-.mp3 + slug: darkweb/3-swipe-instrumental- + albumSlug: darkweb + trackSlug: 3-swipe-instrumental- + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/3-swipe-instrumental-.jpeg + cover: /assets/albums/darkweb/3-swipe-instrumental-.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 12436992 + duration: 282.0179591836735 + native: + ID3v2.3: + - id: TIT2 + value: Swipe (Instrumental) + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: Comment + text: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + - id: TALB + value: Darkweb + - id: TRCK + value: '3' + - id: TPE2 + value: 徒 Setto セット + - id: TCON + value: Cyber Soul + - id: TYER + value: '2019' + quality: + warnings: + - message: Illegal ID3v2 tag length + common: + track: + 'no': 3 + of: null + disk: + 'no': null + of: null + title: Swipe (Instrumental) + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + album: Darkweb + albumartist: 徒 Setto セット + genre: + - Cyber Soul + year: 2019 + transformed: + ID3v2.3: + TIT2: Swipe (Instrumental) + TPE1: 徒 Setto セット + Comment: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + TALB: Darkweb + TRCK: '3' + TPE2: 徒 Setto セット + TCON: Cyber Soul + TYER: '2019' + all: + TIT2: Swipe (Instrumental) + TPE1: 徒 Setto セット + Comment: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + TALB: Darkweb + TRCK: '3' + TPE2: 徒 Setto セット + TCON: Cyber Soul + TYER: '2019' + - path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/4-darkweb-instrumental-.mp3 + audio: /assets/albums/darkweb/4-darkweb-instrumental-.mp3 + slug: darkweb/4-darkweb-instrumental- + albumSlug: darkweb + trackSlug: 4-darkweb-instrumental- + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/4-darkweb-instrumental-.jpeg + cover: /assets/albums/darkweb/4-darkweb-instrumental-.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 12526848 + duration: 284.05551020408166 + native: + ID3v2.3: + - id: TIT2 + value: Darkweb (Instrumental) + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: &ref_0 + language: XXX + description: '' + text: '' + - id: TALB + value: Darkweb + - id: TPE2 + value: 徒 Setto セット + - id: TCON + value: Cypher Rap + - id: TRCK + value: '4' + - id: COMM + value: + language: XXX + description: Comment + text: Cover art and music by To Setto Setto + - id: TYER + value: '2019' + quality: + warnings: [] + common: + track: + 'no': 4 + of: null + disk: + 'no': null + of: null + title: Darkweb (Instrumental) + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - '' + - Cover art and music by To Setto Setto + album: Darkweb + albumartist: 徒 Setto セット + genre: + - Cypher Rap + year: 2019 + transformed: + ID3v2.3: + TIT2: Darkweb (Instrumental) + TPE1: 徒 Setto セット + COMM: *ref_0 + TALB: Darkweb + TPE2: 徒 Setto セット + TCON: Cypher Rap + TRCK: '4' + Comment: Cover art and music by To Setto Setto + TYER: '2019' + all: + TIT2: Darkweb (Instrumental) + TPE1: 徒 Setto セット + COMM: *ref_0 + TALB: Darkweb + TPE2: 徒 Setto セット + TCON: Cypher Rap + TRCK: '4' + Comment: Cover art and music by To Setto Setto + TYER: '2019' +- layout: album + slug: live-with-hardware + name: Live with hardware + artists: 徒 Setto セット + bitrate: 192000 + trackCount: 1 + cover: /assets/albums/live-with-hardware/1-ep-life-of-a-dudelini.jpeg + date: 2020-4-20 + tracks: + - path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/live-with-hardware/1-ep-life-of-a-dudelini.mp3 + audio: /assets/albums/live-with-hardware/1-ep-life-of-a-dudelini.mp3 + slug: live-with-hardware/1-ep-life-of-a-dudelini + albumSlug: live-with-hardware + trackSlug: 1-ep-life-of-a-dudelini + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/live-with-hardware/1-ep-life-of-a-dudelini.jpeg + cover: /assets/albums/live-with-hardware/1-ep-life-of-a-dudelini.jpeg + format: + tagTypes: + - ID3v2.4 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 48000 + numberOfChannels: 2 + bitrate: 192000 + codecProfile: CBR + tool: LAME3.100 + duration: 683.472 + native: + ID3v2.4: + - id: TIT2 + value: EP-Life of a Dudelini + - id: TPE1 + value: 徒 Setto セット + - id: TALB + value: Live with hardware + - id: COMM + value: &ref_1 + language: eng + description: '' + text: Live take + - id: TDRC + value: '2020-04-20' + - id: TRCK + value: '1' + - id: TCON + value: Cybersoul + quality: + warnings: [] + common: + track: + 'no': 1 + of: null + disk: + 'no': null + of: null + title: EP-Life of a Dudelini + artists: + - 徒 Setto セット + artist: 徒 Setto セット + album: Live with hardware + comment: + - Live take + year: 2020 + date: '2020-04-20' + genre: + - Cybersoul + transformed: + ID3v2.4: + TIT2: EP-Life of a Dudelini + TPE1: 徒 Setto セット + TALB: Live with hardware + COMM: *ref_1 + TDRC: '2020-04-20' + TRCK: '1' + TCON: Cybersoul + all: + TIT2: EP-Life of a Dudelini + TPE1: 徒 Setto セット + TALB: Live with hardware + COMM: *ref_1 + TDRC: '2020-04-20' + TRCK: '1' + TCON: Cybersoul +- layout: album + slug: satoshi-mon-ami + name: Satoshi mon ami + artists: 徒 Setto セット + bitrate: 128000 + trackCount: 2 + cover: /assets/albums/satoshi-mon-ami/1-k-as-tu-fait-de-nous-.jpeg + date: 2018-1-1 + tracks: + - path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/satoshi-mon-ami/1-k-as-tu-fait-de-nous-.mp3 + audio: /assets/albums/satoshi-mon-ami/1-k-as-tu-fait-de-nous-.mp3 + slug: satoshi-mon-ami/1-k-as-tu-fait-de-nous- + albumSlug: satoshi-mon-ami + trackSlug: 1-k-as-tu-fait-de-nous- + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/satoshi-mon-ami/1-k-as-tu-fait-de-nous-.jpeg + cover: /assets/albums/satoshi-mon-ami/1-k-as-tu-fait-de-nous-.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 13433472 + duration: 304.6138775510204 + native: + ID3v2.3: + - id: TIT2 + value: K'as-tu fait de nous? + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: &ref_2 + language: XXX + description: '' + text: Cover art and music by To Setto Setto + - id: TALB + value: Satoshi mon ami + - id: TRCK + value: '1' + - id: TPE2 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: UNSYNCEDLYRICS + text: "Qu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\nAcid est la tribe\r\nCyberpunk le game\r\nSur des reseau de bribe\r\non fait monter le fame\r\nMeme pas besoin de files\r\nIsole sur l'iles\r\non fait un tour au grotte\r\npour pas que la story capotte\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\n\r\nSi la police nous ajoute\r\nNouvelle vie nouveau compte\r\nOn tourne le dos au toute\r\non delete sans honte\r\nMeme pas besoin d'ecrire\r\ntu peux mäentendre rire\r\nen tour de face a face\r\nQui brise la glace\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\n24 heures pour dechiffre\r\nOn dirait une invitation\r\nLa story que t'as balancer\r\nCryptokids une seul nation\r\ncelle des rave et du reve\r\nHilife a plein poumons\r\nLe flux n'as pas de treve\r\nEt en suede il mange du saumon\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou" + - id: TCON + value: Cyber Soul + - id: TYER + value: '2018' + quality: + warnings: [] + common: + track: + 'no': 1 + of: null + disk: + 'no': null + of: null + title: K'as-tu fait de nous? + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - Cover art and music by To Setto Setto + - "Qu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\nAcid est la tribe\r\nCyberpunk le game\r\nSur des reseau de bribe\r\non fait monter le fame\r\nMeme pas besoin de files\r\nIsole sur l'iles\r\non fait un tour au grotte\r\npour pas que la story capotte\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\n\r\nSi la police nous ajoute\r\nNouvelle vie nouveau compte\r\nOn tourne le dos au toute\r\non delete sans honte\r\nMeme pas besoin d'ecrire\r\ntu peux mäentendre rire\r\nen tour de face a face\r\nQui brise la glace\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\n24 heures pour dechiffre\r\nOn dirait une invitation\r\nLa story que t'as balancer\r\nCryptokids une seul nation\r\ncelle des rave et du reve\r\nHilife a plein poumons\r\nLe flux n'as pas de treve\r\nEt en suede il mange du saumon\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou" + album: Satoshi mon ami + albumartist: 徒 Setto セット + genre: + - Cyber Soul + year: 2018 + transformed: + ID3v2.3: + TIT2: K'as-tu fait de nous? + TPE1: 徒 Setto セット + COMM: *ref_2 + TALB: Satoshi mon ami + TRCK: '1' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Qu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\nAcid est la tribe\r\nCyberpunk le game\r\nSur des reseau de bribe\r\non fait monter le fame\r\nMeme pas besoin de files\r\nIsole sur l'iles\r\non fait un tour au grotte\r\npour pas que la story capotte\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\n\r\nSi la police nous ajoute\r\nNouvelle vie nouveau compte\r\nOn tourne le dos au toute\r\non delete sans honte\r\nMeme pas besoin d'ecrire\r\ntu peux mäentendre rire\r\nen tour de face a face\r\nQui brise la glace\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\n24 heures pour dechiffre\r\nOn dirait une invitation\r\nLa story que t'as balancer\r\nCryptokids une seul nation\r\ncelle des rave et du reve\r\nHilife a plein poumons\r\nLe flux n'as pas de treve\r\nEt en suede il mange du saumon\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou" + TCON: Cyber Soul + TYER: '2018' + all: + TIT2: K'as-tu fait de nous? + TPE1: 徒 Setto セット + COMM: *ref_2 + TALB: Satoshi mon ami + TRCK: '1' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Qu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\nAcid est la tribe\r\nCyberpunk le game\r\nSur des reseau de bribe\r\non fait monter le fame\r\nMeme pas besoin de files\r\nIsole sur l'iles\r\non fait un tour au grotte\r\npour pas que la story capotte\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\n\r\nSi la police nous ajoute\r\nNouvelle vie nouveau compte\r\nOn tourne le dos au toute\r\non delete sans honte\r\nMeme pas besoin d'ecrire\r\ntu peux mäentendre rire\r\nen tour de face a face\r\nQui brise la glace\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\n24 heures pour dechiffre\r\nOn dirait une invitation\r\nLa story que t'as balancer\r\nCryptokids une seul nation\r\ncelle des rave et du reve\r\nHilife a plein poumons\r\nLe flux n'as pas de treve\r\nEt en suede il mange du saumon\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou" + TCON: Cyber Soul + TYER: '2018' + - path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/satoshi-mon-ami/2-r-ve-de-toi.mp3 + audio: /assets/albums/satoshi-mon-ami/2-r-ve-de-toi.mp3 + slug: satoshi-mon-ami/2-r-ve-de-toi + albumSlug: satoshi-mon-ami + trackSlug: 2-r-ve-de-toi + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/satoshi-mon-ami/2-r-ve-de-toi.jpeg + cover: /assets/albums/satoshi-mon-ami/2-r-ve-de-toi.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 8195328 + duration: 185.83510204081634 + native: + ID3v2.3: + - id: TIT2 + value: Rêve de toi + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: &ref_3 + language: XXX + description: '' + text: Cover art and music by To Setto Setto + - id: TALB + value: Satoshi mon ami + - id: TRCK + value: '2' + - id: TPE2 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: UNSYNCEDLYRICS + text: "Je rêve de toi\r\nChaque jour je te vois\r\nJe fais pas de faux pas\r\nToujours des commentaires sympas\r\n\r\nTa vie est belle\r\nÇa se voit sur les cocotiers\r\nMais mon label\r\nNe pourras pas me déployer\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, ce n'est pas toi\r\n\r\nJ'ajoute des cœurs\r\nA tous les poste que tu publies\r\nJ’envoie des merdes\r\nA tous les cons qui t'humilient\r\n\r\nTa vie radieuse\r\nIllumine mes après-midi\r\nQuand je me lève\r\nAprès avoir perdu encore une nuit\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, toujours pas toi" + - id: TCON + value: Cyber Soul + - id: TYER + value: '2018' + quality: + warnings: [] + common: + track: + 'no': 2 + of: null + disk: + 'no': null + of: null + title: Rêve de toi + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - Cover art and music by To Setto Setto + - "Je rêve de toi\r\nChaque jour je te vois\r\nJe fais pas de faux pas\r\nToujours des commentaires sympas\r\n\r\nTa vie est belle\r\nÇa se voit sur les cocotiers\r\nMais mon label\r\nNe pourras pas me déployer\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, ce n'est pas toi\r\n\r\nJ'ajoute des cœurs\r\nA tous les poste que tu publies\r\nJ’envoie des merdes\r\nA tous les cons qui t'humilient\r\n\r\nTa vie radieuse\r\nIllumine mes après-midi\r\nQuand je me lève\r\nAprès avoir perdu encore une nuit\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, toujours pas toi" + album: Satoshi mon ami + albumartist: 徒 Setto セット + genre: + - Cyber Soul + year: 2018 + transformed: + ID3v2.3: + TIT2: Rêve de toi + TPE1: 徒 Setto セット + COMM: *ref_3 + TALB: Satoshi mon ami + TRCK: '2' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Je rêve de toi\r\nChaque jour je te vois\r\nJe fais pas de faux pas\r\nToujours des commentaires sympas\r\n\r\nTa vie est belle\r\nÇa se voit sur les cocotiers\r\nMais mon label\r\nNe pourras pas me déployer\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, ce n'est pas toi\r\n\r\nJ'ajoute des cœurs\r\nA tous les poste que tu publies\r\nJ’envoie des merdes\r\nA tous les cons qui t'humilient\r\n\r\nTa vie radieuse\r\nIllumine mes après-midi\r\nQuand je me lève\r\nAprès avoir perdu encore une nuit\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, toujours pas toi" + TCON: Cyber Soul + TYER: '2018' + all: + TIT2: Rêve de toi + TPE1: 徒 Setto セット + COMM: *ref_3 + TALB: Satoshi mon ami + TRCK: '2' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Je rêve de toi\r\nChaque jour je te vois\r\nJe fais pas de faux pas\r\nToujours des commentaires sympas\r\n\r\nTa vie est belle\r\nÇa se voit sur les cocotiers\r\nMais mon label\r\nNe pourras pas me déployer\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, ce n'est pas toi\r\n\r\nJ'ajoute des cœurs\r\nA tous les poste que tu publies\r\nJ’envoie des merdes\r\nA tous les cons qui t'humilient\r\n\r\nTa vie radieuse\r\nIllumine mes après-midi\r\nQuand je me lève\r\nAprès avoir perdu encore une nuit\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, toujours pas toi" + TCON: Cyber Soul + TYER: '2018' diff --git a/_data/links.yml b/_data/links.yml new file mode 100644 index 0000000..89bbd44 --- /dev/null +++ b/_data/links.yml @@ -0,0 +1,44 @@ +- title: Good Karma Records + url: http://www.goodkarma.ru + banner: + image: /assets/img/linkbanners/goodkarma%20copy.banner.png +- title: Villamagica Records + url: https://villamagica.bandcamp.com/ + banner: + image: /assets/img/linkbanners/VILLAMAGICAREBOOT99XX%20copy.banner.png +- title: Finsta + url: https://www.finstafari.com + banner: + image: /assets/img/linkbanners/finsta.gif +- title: Camera X + url: http://www.camerax.tv/ + banner: + image: /assets/img/linkbanners/graphstyle2011_logo_small6_1.png +- title: Alex Understands + url: https://www.alexunderstands.com/ + banner: + image: /assets/img/linkbanners/alexunderstands.png +- title: Basspistol + url: https://basspistol.com + banner: + image: /assets/img/linkbanners/basspistol_logo3_1mini.png +- title: Alsenet + url: http://www.alsenet.com/ + banner: + image: /assets/img/linkbanners/logo-alsenet.png +- title: Linux Audio + url: https://www.linuxaudio.org/ + banner: + image: /assets/img/linkbanners/linuxaudio.png +- title: Ubuntu Studio + url: http://www.ubuntustudio.org/ + banner: + image: /assets/img/linkbanners/us-logo.png +- title: Rasta Soft + url: https://rastasoft.org/ + banner: + image: /assets/img/linkbanners/rastalion.jpg +- title: Dyne + url: https://www.dyne.org/ + banner: + image: /assets/img/linkbanners/moebius-band.png \ No newline at end of file diff --git a/_data/navigation.yml b/_data/navigation.yml new file mode 100644 index 0000000..5141483 --- /dev/null +++ b/_data/navigation.yml @@ -0,0 +1,17 @@ +- icon: fa-disc + url: /discography/ + name: Discog + external_site: false +- icon: fa-newspaper + url: /log/ + name: Log + external_site: false +- icon: fa-finger-print + url: /about/ + name: About + external_site: false +- icon: fa-link + url: /links/ + name: Links + external_site: false + \ No newline at end of file diff --git a/_data/social.yml b/_data/social.yml new file mode 100644 index 0000000..df05ae5 --- /dev/null +++ b/_data/social.yml @@ -0,0 +1,21 @@ + +- name: Twitter + url: https://twitter.com/ToSettoSetto + icon: fa-twitter + share_link: 'https://twitter.com/share?url={{ site.url }}{{ page.url | xml_escape }}&text={{ page.description | xml_escape }}%20via%20@ToSettoSetto&hashtags=cybersoul' + we_have_account: true +- name: Instagram + url: https://www.instagram.com/tosettosetto/ + icon: fa-instagram + share_link: + we_have_account: true +- name: Telegram + url: https://t.me/basspistol + icon: fa-telegram + share_link: 'https://telegram.me/share/url?url={{ site.url }}{{ page.url }}&text={{ page.description }}%20via%20@basspistol' + we_have_account: true +- name: Reddit + url: https://www.reddit.com/r/basspistol + icon: fa-reddit + share_link: 'https://reddit.com/submit/?url={{ site.url }}{{ page.url }}&title={{ page.title | xml_escape }}' + we_have_account: true \ No newline at end of file diff --git a/_data/stores.yml b/_data/stores.yml new file mode 100644 index 0000000..478dce1 --- /dev/null +++ b/_data/stores.yml @@ -0,0 +1,24 @@ +- name: Bandcamp + url: https://shop.basspistol.com + icon: fa-bandcamp + download: true +- name: Spotify + url: https://open.spotify.com/artist/0gus2IdSkfrvFDBPqeiksM/ + icon: fa-spotify + download: false +- name: Apple Music + url: https://itunes.apple.com/us/artist/%E5%BE%92-setto-%E3%82%BB%E3%83%83%E3%83%88/1447055514 + icon: fa-apple + download: false +- name: Google Play + url: https://play.google.com/store/music/artist/%E5%BE%92_setto_%E3%82%BB%E3%83%83%E3%83%88?id=Ayi4avjpfyinbrepzebpsvpjc5a + icon: fa-google-play + download: false +- name: Deezer + url: https://www.deezer.com/fr/artist/56004012 + icon: fa-creative-commons-sampling + download: false +- name: Napster + url: https://us.napster.com/artist/-setto- + icon: fa-napster + download: false diff --git a/_data/translations.yml b/_data/translations.yml new file mode 100644 index 0000000..7bb719c --- /dev/null +++ b/_data/translations.yml @@ -0,0 +1,52 @@ +en: + navigation: + - + read-post: 'Read post' + name: Name + lastname: Last name + email: E-mail + message: Message + privacy: 'I agree with the privacy policy.' + newsletter: I want the newsletter! + required: Required field + contact-us: Get in touch + contact: Contact + write-msg: Write your message... + send: Send Message + news: News + top: Back to top + cookies: >- +

I only use cookies if you consent to it. They don't contain any identifiable info: they just let me know if you enjoyed this enough to come back. +
Click here if you want this shit to go away without cookies. +
Read more about how me & basspistol use cookies +

+ cookie-agree: I'm in! + back: Take me back! + home: Home + post-nav: Read more posts + +sv: + navigation: + read-post: 'Läs post' + name: Namn + lastname: Efternamn + email: e-post + message: Meddelande + privacy: 'Jag godkänner sekretesspolicyn' + newsletter: Jag vill ha nyhetsutskick + required: Obligatoriskt fält + contact-us: Kontakta oss + contact: Kontakt + write-msg: Skriv ditt meddelande... + send: Skicka Meddelande + news: Nyheter + top: Tillbaka till toppen + cookies: >- +

Vi använder bara cookies om du går med på det. Hjälp oss förbättra våran marknadsföring! +
Klicka här om du inte vill hjälpa till +
Läs mer om hur vi använder cookies +

+ cookie-agree: Jag hjälper gärna! + back: Ta mig tillbaka! + home: Hem + post-nav: Läs fler inlägg \ No newline at end of file diff --git a/_includes/analytics.js b/_includes/analytics.js new file mode 100644 index 0000000..9bfb686 --- /dev/null +++ b/_includes/analytics.js @@ -0,0 +1,33 @@ +{% if page.url == '/404/' %} + +//* Matomo *// + + var _paq = window._paq || []; + /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ + _paq.push(['setDocumentTitle', '404/URL = ' + encodeURIComponent(document.location.pathname+document.location.search) + '/From = ' + encodeURIComponent(document.referrer)]); + _paq.push(['disableCookies']); + _paq.push(['trackPageView']); + _paq.push(['enableLinkTracking']); + (function() { + var u="https://terminalnetwork.matomo.cloud/"; + _paq.push(['setTrackerUrl', u+'matomo.php']); + _paq.push(['setSiteId', '11']); + var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; + g.type='text/javascript'; g.async=true; g.defer=true; g.src='//cdn.matomo.cloud/terminalnetwork.matomo.cloud/matomo.js'; s.parentNode.insertBefore(g,s); + })(); + +//* End Matomo *// + + + +{% else %} +//* Matomo Tag Manager *// + + var _mtm = _mtm || []; + _mtm.push({'mtm.startTime': (new Date().getTime()), 'event': 'mtm.Start'}); + var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; + g.type='text/javascript'; g.async=true; g.defer=true; g.src='https://cdn.matomo.cloud/terminalnetwork.matomo.cloud/container_kJUGWiO2.js'; s.parentNode.insertBefore(g,s); + +//* End Matomo Tag Manager *// +{% endif %} + diff --git a/_includes/author.html b/_includes/author.html new file mode 100644 index 0000000..bc114e1 --- /dev/null +++ b/_includes/author.html @@ -0,0 +1,33 @@ +{% assign author_id = page.author | prepend: "/authors/" | append: "/" %} +{% assign author = site.authors | where: "url", author_id | first %} +
+
+ + {% if page.collection == 'posts' %} +
+
+
+

{{ author.name }}

+

{{ author.position }}{% if author.gpg != nil %} | GPG{% endif %}

+

+ Published the + +{% include dates.html %} +

+ + {% endif %} +
+ + Share this page: +
+ + + +
+
\ No newline at end of file diff --git a/_includes/contact.html b/_includes/contact.html new file mode 100644 index 0000000..1e647a8 --- /dev/null +++ b/_includes/contact.html @@ -0,0 +1,42 @@ + +
+
+

+ +

+
+
+ +
+
+ + +
+
+ + +
+
+ + +
+
+
+ + +

+ + + +
+
+
    +
  • +
+
+ +
+
+ diff --git a/_includes/cookie-consent.html b/_includes/cookie-consent.html new file mode 100644 index 0000000..1a12014 --- /dev/null +++ b/_includes/cookie-consent.html @@ -0,0 +1,65 @@ + + + + \ No newline at end of file diff --git a/_includes/dates.html b/_includes/dates.html new file mode 100644 index 0000000..c34c26c --- /dev/null +++ b/_includes/dates.html @@ -0,0 +1,21 @@ + + {% assign d = page.date | date: "%-d" %} + {% case d %} + {% when '1' or '21' or '31' %}{{ d }}:st + {% when '2' or '22' %}{{ d }}:nd + {% when '3' or '23' %}{{ d }}:rd + {% else %}{{ d }}:th + {% endcase %} of + {% assign m = page.date | date: "%-m" %} + {% case m %} + {% when '1' %}January + {% when '2' %}February + {% when '3' %}March + {% when '4' %}April + {% when '5' %}May + {% when '6' %}June + {% when '7' %}July + {% when '8' %}August + {% when '9' %}September {% when '10' %}October {% when '11' %}November {% when '12' %}December + {% endcase %} + {{ page.date | date: "%Y" }} diff --git a/_includes/footer.html b/_includes/footer.html new file mode 100644 index 0000000..72bd1b6 --- /dev/null +++ b/_includes/footer.html @@ -0,0 +1,32 @@ + + diff --git a/_includes/matomo.html b/_includes/matomo.html new file mode 100644 index 0000000..3f315cc --- /dev/null +++ b/_includes/matomo.html @@ -0,0 +1,17 @@ + + + diff --git a/_includes/matomo.js b/_includes/matomo.js new file mode 100644 index 0000000..c5069f3 --- /dev/null +++ b/_includes/matomo.js @@ -0,0 +1,13 @@ +var _paq = window._paq || []; +/* tracker methods like "setCustomDimension" should be called before "trackPageView" */ +_paq.push(["setDocumentTitle", document.domain + "/" + document.title]); +_paq.push(["disableCookies"]); +_paq.push(['trackPageView']); +_paq.push(['enableLinkTracking']); +(function() { + var u="https://terminalnetwork.matomo.cloud/"; + _paq.push(['setTrackerUrl', u+'matomo.php']); + _paq.push(['setSiteId', '11']); + var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; + g.type='text/javascript'; g.async=true; g.defer=true; g.src='//cdn.matomo.cloud/terminalnetwork.matomo.cloud/matomo.js'; s.parentNode.insertBefore(g,s); +})(); diff --git a/_includes/navigation.html b/_includes/navigation.html new file mode 100644 index 0000000..10d0679 --- /dev/null +++ b/_includes/navigation.html @@ -0,0 +1,28 @@ + + + + + + + \ No newline at end of file diff --git a/_includes/relBase.html b/_includes/relBase.html new file mode 100644 index 0000000..94ba93e --- /dev/null +++ b/_includes/relBase.html @@ -0,0 +1,12 @@ +{% assign relBase = '' %} +{% assign tempDepth = page.url | append: 'hackish-solution' | split: '/' | size | minus: 2 %} +{% for i in (1..tempDepth) %} + {% if forloop.last %} + {% assign relBase = relBase | append: ".." %} + {% else %} + {% assign relBase = relBase | append: "../" %} + {% endif %} +{% endfor %} +{% if relBase == '' %} + {% assign relBase = '.' %} +{% endif %} \ No newline at end of file diff --git a/_includes/scripts.html b/_includes/scripts.html new file mode 100644 index 0000000..d876074 --- /dev/null +++ b/_includes/scripts.html @@ -0,0 +1,10 @@ + +{% include relBase.html %} + + + + + + + + diff --git a/_includes/seo.html b/_includes/seo.html new file mode 100644 index 0000000..3891053 --- /dev/null +++ b/_includes/seo.html @@ -0,0 +1,255 @@ + +{% if page.collection == 'tracks' %} + + +Play {{ page.common.title }} by {{ page.common.artist }} | {{ site.title }} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +{% elsif page.collection == 'albums' %} + + +{% capture namelist %}{% for art in page.artists %}{{ art }}{% unless forloop.last %}, {% endunless %}{% endfor %}{% endcapture %} +{% capture artist %}{{ namelist }}{% endcapture %} + +Play "{{ page.name }}" by {{ artist | uniq }} | {{ site.title }} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +{% for track in page.tracks %} +{% endfor %} + + + + + + + + + + + +{% else %} + + +{{ page.title }} | {{ site.title }} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +{% endif %} + + + + + + +{% if page.url == '/radio/' or page.url == '/' %} + + + {% endif %} + + \ No newline at end of file diff --git a/_includes/streamer.html b/_includes/streamer.html new file mode 100644 index 0000000..a1c7a6d --- /dev/null +++ b/_includes/streamer.html @@ -0,0 +1,176 @@ +
+{% if page.collection == 'posts' %} + {% if page.category == 'releases' %} + {% if page.check_this_if_cannot_be_bought == false %} + +

Buy this release

+
+ {% for shop in page.stores %} + {% if shop.download == true %} + {{ shop.name }} + {% endif %} + {% endfor %} +
+ +

 

+
+ + {% for shop in page.stores %} + {% if shop.download != true %} + + {{ shop.name }} + {% endif %} + {% endfor %} +
+ + {% else %} + +

This release can't be bought

+

But you can find others here:

+
+ {% for shop in site.data.stores %} + {% if shop.download == true %} + {{ shop.name }} + {% endif %} + {% endfor %} +
+

 

+ +
+ {% for shop in site.data.stores %} + {% if shop.download != true %} + {{ shop.name }} + {% endif %} + {% endfor %} +
+ {% endif %} + {% endif %} + + {% elsif page.collection == 'tracks' %} + + + {% for post in site.posts %} + {% if post.album == page.albumSlug %} + {% if post.check_this_if_cannot_be_bought == false %} + +

Buy this track

+
+ {% for shop in post.stores %} + {% if shop.download == true %} + {{ shop.name }} + {% endif %} + {% endfor %} +
+ +

 

+
+ + {% for shop in post.stores %} + {% if shop.download != true %} + + {{ shop.name }} + {% endif %} + {% endfor %} +
+ {% else %} + +

This track can't be bought

+

But you can find others here:

+
+ {% for shop in site.data.stores %} + {% if shop.download == true %} + {{ shop.name }} + {% endif %} + {% endfor %} +
+

 

+ +
+ {% for shop in site.data.stores %} + {% if shop.download != true %} + {{ shop.name }} + {% endif %} + {% endfor %} +
+ {% break %} + + {% endif %} + {% endif %} + {% endfor %} + + +{% elsif page.collection == 'albums' %} + + +{% for post in site.posts %} +{% if post.album == page.slug %} +{% if post.check_this_if_cannot_be_bought == false %} + +

Buy this album

+
+ {% for shop in post.stores %} + {% if shop.download == true %} + {{ shop.name }} + {% endif %} + {% endfor %} +
+ +

 

+
+ + {% for shop in post.stores %} + {% if shop.download != true %} + + {{ shop.name }} + {% endif %} + {% endfor %} +
+{% else %} + +

This album can't be bought

+

But you can find others here:

+
+ {% for shop in site.data.stores %} + {% if shop.download == true %} + {{ shop.name }} + {% endif %} + {% endfor %} +
+

 

+ +
+ {% for shop in site.data.stores %} + {% if shop.download != true %} + {{ shop.name }} + {% endif %} + {% endfor %} +
+{% break %} + +{% endif %} +{% endif %} +{% endfor %} + + + +{% else %} +

Support {{ site.name }}

+

Pay for music here:

+
+ {% for shop in site.data.stores %} + {% if shop.download == true %} + {{ shop.name }} + {% endif %} + {% endfor %} +
+

 

+ +
+ {% for shop in site.data.stores %} + {% if shop.download != true %} + {{ shop.name }} + {% endif %} + {% endfor %} +
+{% endif %} +
\ No newline at end of file diff --git a/_layouts/album.html b/_layouts/album.html new file mode 100644 index 0000000..b16238e --- /dev/null +++ b/_layouts/album.html @@ -0,0 +1,300 @@ +--- +lang: en +--- + + + + + + +{% include seo.html %} +{% include relBase.html %} + + + + + + + + + + + +
+ + + + +
+
+
+ +
+ {% include author.html %} + +
+ + + + + + +
+
+
+

+

Paused...

+
+
+
+ +
{% assign onetracker = page.tracks | size %} + {% if onetracker > 1 %} +
+ + +
+ {% endif %} +
+
+
    + {% for track in page.tracks %} +
  • +
    +
    {{ track.common.track.no }}.
    +
    {{ track.common.title }}
    +
    {% assign round_seconds = track.format.duration | round %}{% assign minutes = round_seconds | divided_by: 60 %}{% assign leftover_seconds = minutes | times: 60 %}{{ minutes }}:{% assign seconds_without_zero = round_seconds | minus: leftover_seconds %}{% if seconds_without_zero < 10 %}0{% endif %}{{ seconds_without_zero }}
    +
    +
  • + {% endfor %} +
+
+
+
+ + {% for track in page.tracks %} + +
+
{{ track.common.track.no }}.
+ +
{% assign round_seconds = track.format.duration | round %}{% assign minutes = round_seconds | divided_by: 60 %}{% assign leftover_seconds = minutes | times: 60 %}{{ minutes }}:{% assign seconds_without_zero = round_seconds | minus: leftover_seconds %}{% if seconds_without_zero < 10 %}0{% endif %}{{ seconds_without_zero }}
+
+ + {% endfor %} + +
+
+
+ {{ content }} +

{{ page.credits }}

+
+
+
+
+
+
+ + + +{% include streamer.html %} +
+ +
+

Track list

+

Use thses pages to share one song in particular

+
+ +
+ +{% for track in page.tracks %} + +
+
+

{{ track.common.title }}

+

+ {% assign round_seconds = track.format.duration | round %}{% assign minutes = round_seconds | divided_by: 60 %}{% assign leftover_seconds = minutes | times: 60 %}{{ minutes }}:{% assign seconds_without_zero = round_seconds | minus: leftover_seconds %}{% if seconds_without_zero < 10 %}0{% endif %}{{ seconds_without_zero }} +
{{ track.common.genre }} +
{{ track.common.year }}

+ + +
+
+ {{ track.common.title }} +
+
+ +{% endfor %} + + + +
+
+
+ + +
+ + +
+ +
+

More releases

+
+
+
+ {% if page.previous.url and page.lang == page.previous.lang %} +

 {{page.previous.title}}

+

{{ page.previous.description }}

+ {% endif %} +
+
+ {% if page.next.url and page.lang == page.next.lang %} +

 {{page.next.title}}

+

{{ page.next.description }}

+ {% endif %} +
+
+ +
+
+ +
+
+
+ + +{% include footer.html %} +
+{% include navigation.html %} +{% include scripts.html %} + + + + +{% include cookie-consent.html %} + + \ No newline at end of file diff --git a/_layouts/blog.html b/_layouts/blog.html new file mode 100644 index 0000000..036c436 --- /dev/null +++ b/_layouts/blog.html @@ -0,0 +1,3 @@ +--- +layout: default +--- \ No newline at end of file diff --git a/_layouts/default.html b/_layouts/default.html new file mode 100644 index 0000000..6a7e7c3 --- /dev/null +++ b/_layouts/default.html @@ -0,0 +1,34 @@ +--- +--- + + + + + +{% include seo.html %} +{% include relBase.html %} + + + + + + + + + + + + + +
+ {{ content }} +
+ {% include navigation.html %} + {% include scripts.html %} + {% include cookie-consent.html %} + + \ No newline at end of file diff --git a/_layouts/nil.html b/_layouts/nil.html new file mode 100644 index 0000000..7f63ffd --- /dev/null +++ b/_layouts/nil.html @@ -0,0 +1,3 @@ +--- +--- +{{ content }} \ No newline at end of file diff --git a/_layouts/page.html b/_layouts/page.html new file mode 100644 index 0000000..8a73884 --- /dev/null +++ b/_layouts/page.html @@ -0,0 +1,43 @@ +--- +layout: default +--- + +{% include relBase.html %} + + + + +
+
+ +
+ +
+ {% if page.url != '/cookies/' %} + {% if page.url != '/webcreds/' %} + {% include author.html %} + {% endif %}{% endif %} + +
+ {{ content }} + +
+
+
+
+
+ + + + +{% include footer.html %} \ No newline at end of file diff --git a/_layouts/post.html b/_layouts/post.html new file mode 100644 index 0000000..33f3545 --- /dev/null +++ b/_layouts/post.html @@ -0,0 +1,402 @@ +--- +--- +{% if page.category == 'releases' %} + + + + + + +{% include seo.html %} +{% include relBase.html %} + + + + + + + + + + + +
+ + + + +
+
+
+ +
+ {% include author.html %} + +
+ + + + {% for album in site.albums %} + {% if page.album == album.slug %} + +
+
+
+

+

Paused...

+
+
+
+ +
{% assign onetracker = album.tracks | size %} + {% if onetracker > 1 %} +
+ + +
+ {% endif %} +
+
+
    + {% for track in album.tracks %} +
  • +
    +
    {{ track.common.track.no }}.
    +
    {{ track.common.title }}
    +
    {% assign round_seconds = track.format.duration | round %}{% assign minutes = round_seconds | divided_by: 60 %}{% assign leftover_seconds = minutes | times: 60 %}{{ minutes }}:{% assign seconds_without_zero = round_seconds | minus: leftover_seconds %}{% if seconds_without_zero < 10 %}0{% endif %}{{ seconds_without_zero }}
    +
    +
  • + {% endfor %} +
+
+
+
+ + {% for track in album.tracks %} + +
+
{{ track.common.track.no }}.
+ +
{% assign round_seconds = track.format.duration | round %}{% assign minutes = round_seconds | divided_by: 60 %}{% assign leftover_seconds = minutes | times: 60 %}{{ minutes }}:{{ round_seconds | minus: leftover_seconds }}
+
+ + {% endfor %} + +
+
+
+ {{ content }} +
+
+
+
+
+
+ +{% include streamer.html %} + +{% for track in album.tracks %} + +
+
+

{{ track.common.title }}

+

+ {% assign round_seconds = track.format.duration | round %}{% assign minutes = round_seconds | divided_by: 60 %}{% assign leftover_seconds = minutes | times: 60 %}{{ minutes }}:{{ round_seconds | minus: leftover_seconds }} +
{{ track.common.genre }} +
{{ track.common.year }}

+ + +
+
+ {{ track.common.title }} +
+
+ +{% endfor %} + + + +{% break %} {% endif %} {% endfor %} + + + +
+
+
+ + +
+ + +
+ +
+

{{ site.data.translations[page.lang].post-nav}}

+
+
+
+ {% if page.previous.url and page.lang == page.previous.lang %} +

 {{page.previous.title}}

+

{{ page.previous.description }}

+ {% endif %} +
+
+ {% if page.next.url and page.lang == page.next.lang %} +

 {{page.next.title}}

+

{{ page.next.description }}

+ {% endif %} +
+
+ +
+
+ +
+
+
+ + +{% include footer.html %} +
+{% include navigation.html %} +{% include scripts.html %} + + + + +{% include cookie-consent.html %} + + +{% else %} + + + + + + + +{% include seo.html %} +{% include relBase.html %} + + + + + + + + + + + + + +
+ + + + +
+
+ +
+ +
+ {% if page.url != '/cookies/' %} + {% if page.url != '/webcreds/' %} + {% include author.html %} + {% endif %}{% endif %} + +
+ {{ content }} + {% if page.link != nil %} + + {% endif %} +
+
+
+
+
+
+
+
+ + +
+ + +
+ +
+

{{ site.data.translations[page.lang].post-nav}}

+
+
+
+ {% if page.previous.url and page.lang == page.previous.lang %} +

 {{page.previous.title}}

+

{{ page.previous.description }}

+ {% endif %} +
+
+ {% if page.next.url and page.lang == page.next.lang %} +

 {{page.next.title}}

+

{{ page.next.description }}

+ {% endif %} +
+
+ +
+
+ +
+
+
+ +{% include footer.html %} + +
+{% include navigation.html %} +{% include scripts.html %} +{% include cookie-consent.html %} + + +{% endif %} \ No newline at end of file diff --git a/_layouts/track.html b/_layouts/track.html new file mode 100644 index 0000000..b90c7c1 --- /dev/null +++ b/_layouts/track.html @@ -0,0 +1,154 @@ +--- +layout: default +--- + +{% include relBase.html %} + + + + +
+
+
+
+ {% include author.html %} + + {% if page.all.UNSYNCEDLYRICS != nil %} +
+ {% unless page.all.UNSYNCEDLYRICS == '' %}

Lyrics

{% endunless %} +

+ {{ page.all.UNSYNCEDLYRICS | newline_to_br }} +

+

credits: + {{ page.all.Comment }} +

+
+ {% endif %} +
+
+
+
+ +{% include streamer.html %} + +
+
+
+ + +
+ +
+ +
+

Play more songs grom this release

+
+
+
+ {% if page.previous.url and page.lang == page.previous.lang %} +

 {{ page.previousTrack.common.title }} +

+ {% endif %} +
+
+ {% if page.next.url and page.lang == page.next.lang %} +

 {{ page.nextTrack.common.title }}

+ {% endif %} +
+
+ +
+
+
+
+
+ + + +{% include footer.html %} + + \ No newline at end of file diff --git a/_posts/2018-12-17-satoshi-mon-ami.md b/_posts/2018-12-17-satoshi-mon-ami.md new file mode 100644 index 0000000..95e7938 --- /dev/null +++ b/_posts/2018-12-17-satoshi-mon-ami.md @@ -0,0 +1,44 @@ +--- +title: Satoshi Mon Ami +author: setto +date: 2018-12-17 19:00:00 +description: >- + The 2 tracks of laid back cloud rap are tales of daily digital life-struggles. + When day-to-day communication blurs the line between the virtual and real. +image: /images/posts/1-k-as-tu-fait-de-nous-.jpeg +category: releases +credits: '' +album: satoshi-mon-ami +stores: + - name: Bandcamp + url: 'https://shop.basspistol.com/album/satoshi-mon-ami' + icon: fa-bandcamp + download: true + - name: Spotify + url: 'https://open.spotify.com/album/116YJCcI5T9Iw9UBQCvJWF' + icon: fa-spotify + download: false + - name: Apple Music + url: >- + https://itunes.apple.com/us/album/satoshi-mon-ami-single/1447055511?uo=4&app=music&at=1001lry3&ct=dashboard + img: + icon: fa-apple + download: false + - name: Google Play + url: >- + https://play.google.com/store/music/album/%E5%BE%92_setto_%E3%82%BB%E3%83%83%E3%83%88_Satoshi_mon_ami?id=Bygwvidl75kflmclmchl6wc5uba + icon: fa-google-play + download: false + - name: Deezer + url: 'https://www.deezer.com/album/82118382' + icon: fa-creative-commons-sampling + download: false + - name: Napster + url: 'https://us.napster.com/artist/-setto-/album/satoshi-mon-ami' + icon: fa-napster + download: false +--- + +The 2 tracks of laid back cloud rap are tales of daily digital life-struggles. When day-to-day communication blurs the line between the virtual and real. + +Being close to someone, without them knowing, anonymously and obsessively through a device. Decrypting interconnected sub-stories from every node in the graph and losing your mind on it.What's the latest story? FOMO to the max, The Fear Of Missing Out! \ No newline at end of file diff --git a/_posts/2019-02-07-darkweb.md b/_posts/2019-02-07-darkweb.md new file mode 100644 index 0000000..e6ad569 --- /dev/null +++ b/_posts/2019-02-07-darkweb.md @@ -0,0 +1,42 @@ +--- +title: Darkweb +author: setto +date: 2019-02-07 19:07:00 +description: >- + As dystopian as the present might seem on-line, there is always room for the + strange in the cypher... +image: /images/posts/2-darkweb-instrumental-.jpeg +category: releases +credits: 'Cover-art by Mattias “Ritarn” Lindström' +album: darkweb +stores: + - name: Bandcamp + url: 'https://shop.basspistol.com/album/darkweb' + icon: fa-bandcamp + download: true + - name: Spotify + url: 'https://open.spotify.com/album/0meSZO7BeGoHJc6BWnRvhN' + icon: fa-spotify + download: false + - name: Apple Music + url: 'https://itunes.apple.com/us/album/darkweb-single/1449847586' + icon: fa-apple + download: false + - name: Google Play + url: >- + https://play.google.com/store/music/album/%E5%BE%92_setto_%E3%82%BB%E3%83%83%E3%83%88_Darkweb?id=Bcrzzrtj7yfcyladynit7hg4age + icon: fa-google-play + download: false + - name: Deezer + url: 'https://www.deezer.com/fr/album/84669482' + icon: fa-creative-commons-sampling + download: false + - name: Napster + url: 'https://us.napster.com/artist/-setto-/album/darkweb-single' + icon: fa-napster + download: false +--- + +As dystopian as the present might seem on-line, there is always room for the strange in the cypher. + +At the end of the tunnel through the flashy but controlled cyberspace we call the "Internet", there is a light of hope for the underground. diff --git a/_posts/2019-12-12-cyber-grany.md b/_posts/2019-12-12-cyber-grany.md new file mode 100644 index 0000000..86c144e --- /dev/null +++ b/_posts/2019-12-12-cyber-grany.md @@ -0,0 +1,20 @@ +--- +title: Granny is a cyborg now +author: setto +date: 2019-12-12 03:03:00 +description: Jazzy Cybersoul with a hint of 303 baselines. +image: /images/posts/1-grandma-got-the-ssh-keys.jpeg +category: releases +layout: post +credits: +album: cyber-grany +stores: + - name: + url: + icon: + download: false +--- + +My grandmother, 93,  added me on social media yesterday. So I called her. Long-chat good talk. TL;DR Damn what a woman\! She told me she had a roll-walker. I said "we're in the future now Grandma, you're a cyborg, half machine\!" + +She laughed and acknowledge it was a marvellous invention\! \ No newline at end of file diff --git a/_posts/2020-04-19-live-with-hardware.md b/_posts/2020-04-19-live-with-hardware.md new file mode 100644 index 0000000..40260dd --- /dev/null +++ b/_posts/2020-04-19-live-with-hardware.md @@ -0,0 +1,27 @@ +--- +title: Live with hardware +author: setto +date: 2020-04-19 07:07:00 +description: >- + There is a weird meta-core to anything social exchange on internet that I + can't get my finger on. Assumptions and projections that I think partially + stem from the lack in body language +image: /images/posts/1-ep-life-of-a-dudelini.jpeg +category: releases +layout: post +credits: +album: live-with-hardware +stores: + - name: + url: + icon: + download: false +--- + +There is a weird meta-core to anything social exchange on internet that I can't get my finger on. Assumptions and projections that I think partially stem from the lack in body language and the fact that we tend to be alone with our devices when we exchange. Even when we do so while our physical self is in a room full of friends. One of it's symptoms is the *endorsement paradox,* for lack of better words. At some point it was common to see Twitter bios with the line *"retweets \!= Endorsement".* It might have a better name, but that "endorsement paradox" is something I feel heavily used as a propaganda strategy. The thing is, there is always someone in anyone's acquaintances that will resonate to shared info and critique in unexpected ways. For example some unspeakable parties triggered everyone to a point where everyone got so obsessed that everyone kept talking about those parties non stop. Basically taking said unspeakable parties out of the void they were in, and promoting them into a mass that had to be accounted for. I'm not saying unspeakable party propaganda should be ignored, but I think some information is better dissected away from public spaces where there is no control over the dimension of time since the discussion can keep on forever, even when everyone involved at first have moved on. Like that which happened to 4chan. + +It takes at least 2 to have a dialogue. And to achieve that plurality in cyberspace seems to require a lot of effort. Probably due to that aforementioned conflict between solitude and time-traversing company. "Company" as in being accompanied and time-traversing because what we record today can be used in the future, and in the future we might use recordings from the past. + +Either way, there is always something that escapes me when I try to thinker about exchange of information that pertain to the power limbo between humans. Hence the idea of a meta core: like a Russian doll. After all information is vehicular to energy. Be it human or robot information exchange: an impulse that turns a turbine on, a poem that make your heart beat faster… + +Audio extracted from the 360 video of [this jam](/hw-jam/) recorded a while back. \ No newline at end of file diff --git a/_posts/_defaults.md b/_posts/_defaults.md new file mode 100644 index 0000000..30223ed --- /dev/null +++ b/_posts/_defaults.md @@ -0,0 +1,16 @@ +--- +title: +author: +date: +description: +image: +category: +layout: +credits: '' +album: +stores: + - name: + url: + icon: + download: false +--- \ No newline at end of file diff --git a/_sass/_set.scss b/_sass/_set.scss new file mode 100644 index 0000000..f06d4c2 --- /dev/null +++ b/_sass/_set.scss @@ -0,0 +1,481 @@ + + +/* Animation */ +@-webkit-keyframes infiniteRotate { + 0% { -webkit-transform: rotate(0deg); } + 100% { -webkit-transform: rotate(360deg); } +} + +@keyframes infinite-rotate { + 0% { -webkit-transform: rotate(0deg); } + 100% { -webkit-transform: rotate(360deg); } +} +@-moz-keyframes infinite-rotate { + 0% { -webkit-transform: rotate(0deg); } + 100% { -webkit-transform: rotate(360deg); } +} + + + +@-webkit-keyframes backgroundBlink { + 0%{background-position:73% 0%} + 50%{background-position:28% 100%} + 100%{background-position:73% 0%} +} +@-moz-keyframes backgroundBlink { + 0%{background-position:73% 0%} + 50%{background-position:28% 100%} + 100%{background-position:73% 0%} +} +@keyframes backgroundBlink { + 0%{background-position:73% 0%} + 50%{background-position:28% 100%} + 100%{background-position:73% 0%} +} + +@-webkit-keyframes BackgroundFlow { + 0%{background-position:0% 50%} + 50%{background-position:100% 50%} + 100%{background-position:0% 50%} +} +@-moz-keyframes BackgroundFlow { + 0%{background-position:0% 50%} + 50%{background-position:100% 50%} + 100%{background-position:0% 50%} +} +@keyframes BackgroundFlow { + 0%{background-position:0% 100%} + 50%{background-position:100% 0%} + 100%{background-position:0% 100%} +} + +.slow-background { + -webkit-animation: BackgroundFlow 200s ease infinite; + -moz-animation: BackgroundFlow 200s ease infinite; + animation: BackgroundFlow 200s ease infinite; +} + +.spinnit { + + -webkit-animation: infiniteRotate 2s linear infinite; /* Safari */ + -moz-animation: infiniteRotate 2s linear infinite; + animation: infiniteRotate 2s linear infinite; + } +.paused { + animation-play-state: paused; +} + + +/* NAVIGATION */ +/* Style the navbar */ +#navbar { + z-index: 100000; +} +#logo { + padding:10px; + z-index: 10000; + -webkit-transition: filter 400ms ease-in; + -moz-transition: filter 400ms ease-in; + transition: filter 400ms ease-in; + +} +.logo:hover { + filter: blur(0px); + -webkit-transition: filter 400ms ease-in; + -moz-transition: filter 400ms ease-in; + transition: filter 400ms ease-in; + +} +.logo { + filter: blur(20px); + text-decoration: none; + position: fixed; + top:20px; + left: 50%; + transform: translateX(-50%); + width: 300px; + height: 95px; + background-color: transparent; + background-repeat: no-repeat; + background-position: center center; + background-size: 95% 95%; + -webkit-transition: all 400ms ease-in; + -moz-transition: all 400ms ease-in; + transition: all 400ms ease-in; + box-shadow: none; + border-radius: 20px; + display: flex; + flex-wrap: wrap; + justify-content: center; + align-items: center; + +} +.sticky { + filter: blur(0px); + -webkit-transition: filter 400ms ease-in; + -moz-transition: filter 400ms ease-in; + transition: filter 400ms ease-in; + + background-repeat: no-repeat; + background-position: center center; + background-size: 95% 95%; + -webkit-transition: all 400ms ease-in; + -moz-transition: all 400ms ease-in; + transition: all 400ms ease-in; + + } + + +nav { + position: absolute; + width: 300px; + + max-height: 90vh; + max-width: 90vw; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + background-color: _palette(bg); + border-radius: 20px; + padding: 20px; + display: flex; + flex-wrap: wrap; + + + ul { + margin: auto; + + width: 100% + + } + li { + list-style-type: none; + margin: 10px; + width: 80%; + padding: 0; + a { + width: 100%; + display: block; + margin: auto !important; + font-size: 14px + } + } + } + .blurredout { + filter: blur(5px); + -webkit-transition: filter 400ms ease-in; + -moz-transition: filter 400ms ease-in; + transition: filter 400ms ease-in; + } + + #wrapper { + -webkit-transition: filter 400ms ease-in; + -moz-transition: filter 400ms ease-in; + transition: filter 400ms ease-in; + } +.modalDialog { + position: fixed; + font-family: Arial, Helvetica, sans-serif; + top: 0; + right: 0; + bottom: 0; + left: 0; + background: _palette(fg-light); + z-index: 11; + opacity:0; + -webkit-transition: opacity 400ms ease-in; + -moz-transition: opacity 400ms ease-in; + transition: opacity 400ms ease-in; + pointer-events: none; + +} + +.modalDialog:target { + opacity:1; + pointer-events: auto; +} + +.modalDialog > div { + width: 80%; + max-width: 1100px; + max-height: 80vh; + display: flex; + align-items: center; + position: relative; + margin: 100px auto; + padding: 20px; + border-radius: 3px; + background: rgb(0, 31, 36); + background: -moz-linear-gradient(#000, rgb(0, 31, 36)); + background: -webkit-linear-gradient(#000, rgb(0, 31, 36)); + background: -o-linear-gradient(#000, rgb(0, 31, 36)); +} + + +.close-button { + background-color: #FFFFFF; + color: _palette(accent-dark); + line-height: 48px; + position: absolute; + right: -12px; + text-align: center; + top: -10px; + width: 48px; + height: 48px; + text-decoration: none; + font-weight: bold; + -webkit-border-radius: 48px; + -moz-border-radius: 48px; + border-radius: 48px; + -moz-box-shadow: 1px 1px 3px #000; + -webkit-box-shadow: 1px 1px 3px #000; + box-shadow: 1px 1px 3px #000; + transition: all 400ms ease-in; +} + +.close-button:hover { + background-color: _palette(accent); + color: #FFFFFF; +} + +#closearea { + position: fixed; + width: 100%; + height: 100%; + +} + +//* POSTS *// + +#post-text { + padding-top: 1rem; +} +//* FOOTER *// + +#footer { + + background-color: _palette(fg); + color: _palette(bg); + box-shadow: inset 0 10px 10px 0 rgba(0, 45, 107, 0.25) !important; + + h1, h2, h3, h4, h5, p, a, strong { + color: _palette(bg); + } + a { + text-decoration: none; + } + + .footflex { + display: flex; + flex-wrap: wrap; + justify-content: space-evenly; + div { + text-align: left; + flex: 0 1 300px; + max-width: 300px; + margin: 80px 80px 0 80px; + + ul { + margin: 0; + padding: 0; + } + li { + list-style: none; + border-bottom: 1px solid _palette(bg); + line-height: 3em; + margin: 0; + padding: 0; + } + } + } + .style2 { + &:before { + box-shadow: inset 0 0 0 _size(border-width) _palette(bg); + } + } + .style2:hover { + &:before { + box-shadow: inset 0 0 0 _size(border-width) _palette(accent); + } + } +} + +/* AUTHOR */ + +#author { + .bio { + padding-right: 20px; + p { + color: _palette(fg); + } + } + +} + +/* Content images */ +div.content { + img { + width: 100%; + height: auto; + max-width: 500px; + } +} + +/* Cloudcannon editor links */ + +.editor-link { + display: none; + margin-top: 0; + padding-top: 30px; + .btn { + border: 0; + border-radius: 2px; + width: 100%; + max-width: 500px; + box-sizing: border-box; + text-decoration: none; + padding: 10px 15px; + margin: 0; + font-size: 18px; + cursor: pointer; + background-color: #f7e064; + color: #333; + box-shadow: 1px 1px 5px 0 rgba(0, 0, 0, 0.2); + + &:hover { + background-color: #f4d525; + color: #333; + } + } +} + +.cms-editor-active .editor-link { + display: block; +} + +/* cookies */ + +#cookie-notice { + padding: 15px; + display: none; + text-align: right; + position: fixed; + bottom: 0; + width: 100%; + background-color: _palette(accent-dark); + flex-wrap: wrap; + justify-content: space-evenly; + align-content: center; + align-items: center; + z-index: 1000; + + p { + flex: 1 0 250px; + margin: 0; + font-size: 12px; + font-family: monospace; + } + @media only screen and (max-width: 569px) { + p { + text-align: center; + } + } +} + +.yes { + flex: 0 0 250px; + + -moz-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out; + -webkit-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out; + -ms-transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out; + transition: background-color 0.2s ease-in-out, color 0.2s ease-in-out; + border-radius: 0.375em; + border: 0; + color: #000 !important; + background-position-x: 0%; + background-position-y: 0%; + background-repeat: repeat; + background-attachment: scroll; + background-image: linear-gradient(228deg, _palette(bg), _palette(fg)); + background-origin: padding-box; + background-clip: border-box; + + background-size: 400% 400%; + -webkit-animation: backgroundBlink 2s ease infinite; + -moz-animation: backgroundBlink 2s ease infinite; + animation: backgroundBlink 2s ease infinite; + margin: 20px; + +} +.yes:hover { + color: #000 !important; +} + +/* Background Video */ +.fullscreen-bg { + position: absolute; + height: 100%; + width: 100%; + overflow: hidden; + z-index: -100; + background: #fff; +} + +.fullscreen-bg__video { + background: #fff; + position: relative; + left: 50%; + top:50%; + transform: translate(-50%, -50%); + width: 100%; +} + +/* Post Navigation */ + +.post-nav { + /* Insert your custom styling here. Example: + + font-size: 14px; + margin-bottom: 1em; + */ + display: flex; + flex-wrap: wrap; + justify-content: space-between; + +} +.post-nav div { + /* flex-grow, flex-shrink, flex-basis */ + flex: 0 1 300px; + +} +.post-nav-next { + text-align: right; +} + + +/* Stream links */ +.streambox { + + display: block; + text-align: center; + + .streamer { + list-style-type:none; + display:flex; + justify-content: center; + flex-wrap: wrap; + + a { + flex: 1 0 150px; + margin:10px; + } + .button { + display: block; + flex: unset; + } + h3 { + flex: unset; + } + } +} + diff --git a/_sass/base/_page.scss b/_sass/base/_page.scss new file mode 100644 index 0000000..3578216 --- /dev/null +++ b/_sass/base/_page.scss @@ -0,0 +1,47 @@ +/// +/// Story by HTML5 UP +/// html5up.net | @ajlkn +/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +/// + +/* Basic */ + + // MSIE: Required for IEMobile. + @-ms-viewport { + width: device-width; + } + + // MSIE: Prevents scrollbar from overlapping content. + body { + -ms-overflow-style: scrollbar; + } + + // Ensures page width is always >=320px. + @include breakpoint('<=xsmall') { + html, body { + min-width: 320px; + } + } + + // Set box model to border-box. + // Based on css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice + html { + box-sizing: border-box; + } + + *, *:before, *:after { + box-sizing: inherit; + } + + body { + background: _palette(bg); + + // Stops initial animations until page loads. + &.is-preload { + *, *:before, *:after { + @include vendor('animation', 'none !important'); + @include vendor('transition', 'none !important'); + } + } + + } \ No newline at end of file diff --git a/_sass/base/_reset.scss b/_sass/base/_reset.scss new file mode 100644 index 0000000..20519fd --- /dev/null +++ b/_sass/base/_reset.scss @@ -0,0 +1,76 @@ +/// +/// Story by HTML5 UP +/// html5up.net | @ajlkn +/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +/// + +// Reset. +// Based on meyerweb.com/eric/tools/css/reset (v2.0 | 20110126 | License: public domain) + + html, body, div, span, applet, object, + iframe, h1, h2, h3, h4, h5, h6, p, blockquote, + pre, a, abbr, acronym, address, big, cite, + code, del, dfn, em, img, ins, kbd, q, s, samp, + small, strike, strong, sub, sup, tt, var, b, + u, i, center, dl, dt, dd, ol, ul, li, fieldset, + form, label, legend, table, caption, tbody, + tfoot, thead, tr, th, td, article, aside, + canvas, details, embed, figure, figcaption, + footer, header, hgroup, menu, nav, output, ruby, + section, summary, time, mark, audio, video { + margin: 0; + padding: 0; + border: 0; + font-size: 100%; + font: inherit; + vertical-align: baseline; + } + + article, aside, details, figcaption, figure, + footer, header, hgroup, menu, nav, section { + display: block; + } + + body { + line-height: 1; + } + + ol, ul { + list-style:none; + } + + blockquote, q { + quotes: none; + + &:before, + &:after { + content: ''; + content: none; + } + } + + table { + border-collapse: collapse; + border-spacing: 0; + } + + body { + -webkit-text-size-adjust: none; + } + + mark { + background-color: transparent; + color: inherit; + } + + input::-moz-focus-inner { + border: 0; + padding: 0; + } + + input, select, textarea { + -moz-appearance: none; + -webkit-appearance: none; + -ms-appearance: none; + appearance: none; + } \ No newline at end of file diff --git a/_sass/base/_typography.scss b/_sass/base/_typography.scss new file mode 100644 index 0000000..eedaf23 --- /dev/null +++ b/_sass/base/_typography.scss @@ -0,0 +1,234 @@ +/// +/// Story by HTML5 UP +/// html5up.net | @ajlkn +/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +/// + +/* Type */ + + html { + font-size: 18pt; + + @include breakpoint('<=xlarge') { + font-size: 20pt; + } + + @include breakpoint('<=large') { + font-size: 18pt; + } + + @include breakpoint('<=small') { + font-size: 17pt; + } + + @include breakpoint('<=xxsmall') { + font-size: 17pt; + } + } + + body { + + background-size: 20%; + background-repeat: repeat; + color: _palette(fg); + } + + body, input, select, textarea { + font-family: _font(family-fixed); + font-size: 0.75rem; + font-weight: _font(weight); + line-height: 1.45; + } + + a { + @include vendor('transition', 'color #{_duration(transition)} ease-in-out'); + text-decoration: underline; + + &:hover { + text-decoration: none; + } + } + + strong, b { + font-weight: _font(weight-bold); + } + + em, i { + font-style: italic; + } + + p { + margin: 0 0 _size(element-margin) 0; + + &.major { + font-size: 1.25rem; + } + } + + h1, h2, h3, h4, h5, h6 { + font-weight: _font(weight-bold); + line-height: 1.375; + letter-spacing: _font(kerning); + margin: 0 0 (_size(element-margin) * 0.5) 0; + font-family: _font(family); + + a { + color: inherit; + text-decoration: none; + } + } + + h1 { + font-size: 3.5rem; + line-height: 1.2; + } + + h2 { + font-size: 2.25rem; + } + + h3 { + font-size: 1.5rem; + } + + h4 { + font-size: 1.1rem; + } + + h5 { + font-size: 0.9rem; + } + + h6 { + font-size: 0.7rem; + } + + sub { + font-size: 0.8rem; + position: relative; + top: 0.5rem; + } + + sup { + font-size: 0.8rem; + position: relative; + top: -0.5rem; + } + + blockquote { + border-left: solid (_size(border-width) * 4); + font-style: italic; + margin: 0 0 _size(element-margin) 0; + padding: (_size(element-margin) / 4) 0 (_size(element-margin) / 4) _size(element-margin); + } + + code { + border-radius: _size(border-radius); + font-family: _font(family-fixed); + font-size: 0.9em; + margin: 0 0.25rem; + padding: 0.25rem 0.325rem; + } + + pre { + -webkit-overflow-scrolling: touch; + font-family: _font(family-fixed); + font-size: 0.9em; + margin: 0 0 _size(element-margin) 0; + + code { + display: block; + line-height: 1.5; + padding: 0.75rem 1rem; + overflow-x: auto; + } + } + + hr { + border: 0; + border-bottom: solid _size(border-width); + margin: (_size(element-margin) * 1.25) 0; + + &.major { + margin: (_size(element-margin) * 1.75) 0; + } + } + + .align-left { + text-align: left; + } + + .align-center { + text-align: center; + } + + .align-right { + text-align: right; + } + + @include breakpoint('<=small') { + p { + &.major { + font-size: 1.1rem; + } + } + + h1 { + font-size: 2.5rem; + } + + h2 { + font-size: 2rem; + } + + h3 { + font-size: 1.25rem; + } + + h4 { + font-size: 1rem; + } + } + + @mixin color-typography($p: null) { + + @if $p != null { + background-color: _palette($p, bg); + color: _palette($p, fg); + } + + input, select, textarea { + color: _palette($p, fg-bold); + } + + a { + color: _palette($p, fg-bold); + + &:hover { + color: _palette($p, accent); + } + } + + strong, b { + color: _palette($p, fg-bold); + } + + h1, h2, h3, h4, h5, h6 { + color: _palette($p, fg-bold); + } + + blockquote { + border-left-color: _palette($p, border); + } + + code { + background: _palette($p, border-bg); + border-color: _palette($p, border); + } + + hr { + border-bottom-color: _palette($p, border); + } + } + + @include color-typography; \ No newline at end of file diff --git a/_sass/components/_actions.scss b/_sass/components/_actions.scss new file mode 100644 index 0000000..3b4bb2f --- /dev/null +++ b/_sass/components/_actions.scss @@ -0,0 +1,101 @@ +/// +/// Story by HTML5 UP +/// html5up.net | @ajlkn +/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +/// + +/* Actions */ + + ul.actions { + @include vendor('display', 'flex'); + cursor: default; + list-style: none; + margin-left: (_size(element-margin) * -0.5); + padding-left: 0; + + li { + padding: 0 0 0 (_size(element-margin) * 0.5); + vertical-align: middle; + } + + &.special { + @include vendor('justify-content', 'center'); + width: 100%; + margin-left: 0; + + li { + &:first-child { + padding-left: 0; + } + } + } + + &.stacked { + @include vendor('flex-direction', 'column'); + margin-left: 0; + + li { + padding: (_size(element-margin) * 0.65) 0 0 0; + + &:first-child { + padding-top: 0; + } + } + } + + &.fit { + width: calc(100% + #{_size(element-margin) * 0.5}); + + li { + @include vendor('flex-grow', '1'); + @include vendor('flex-shrink', '1'); + width: 100%; + + > * { + width: 100%; + } + } + + &.stacked { + width: 100%; + } + } + + @include breakpoint('<=xsmall') { + &:not(.fixed) { + @include vendor('flex-direction', 'column'); + margin-left: 0; + width: 100% !important; + + li { + @include vendor('flex-grow', '1'); + @include vendor('flex-shrink', '1'); + padding: (_size(element-margin) * 0.5) 0 0 0; + text-align: center; + width: 100%; + + > * { + width: 100%; + } + + &:first-child { + padding-top: 0; + } + + input[type="submit"], + input[type="reset"], + input[type="button"], + button, + .button { + width: 100%; + + &.icon { + &:before { + margin-left: -0.5rem; + } + } + } + } + } + } + } \ No newline at end of file diff --git a/_sass/components/_banner.scss b/_sass/components/_banner.scss new file mode 100644 index 0000000..e6251f5 --- /dev/null +++ b/_sass/components/_banner.scss @@ -0,0 +1,990 @@ +/// +/// Story by HTML5 UP +/// html5up.net | @ajlkn +/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +/// + +/* Banner (transitions) */ + + .banner { + + // Mixin. + @mixin transition-banner($event) { + $x: null; + $y: null; + + @if ($event == 'load') { + $x: 'body.is-preload &'; + $y: _duration(on-load); + } + @else if ($event == 'scroll') { + $x: '&.is-inactive'; + $y: _duration(on-scroll); + } + + // Content. + &.on#{$event}-content-fade-up { + .content { + @include vendor('transition', ( + 'opacity #{$y} ease-in-out', + 'transform #{$y} ease-in-out' + )); + } + + #{$x} { + .content { + @include vendor('transform', 'translateY(1rem)'); + opacity: 0; + } + } + } + + &.on#{$event}-content-fade-down { + .content { + @include vendor('transition', ( + 'opacity #{$y} ease-in-out', + 'transform #{$y} ease-in-out' + )); + } + + #{$x} { + .content { + @include vendor('transform', 'translateY(-1rem)'); + opacity: 0; + } + } + } + + &.on#{$event}-content-fade-left { + .content { + @include vendor('transition', ( + 'opacity #{$y} ease-in-out', + 'transform #{$y} ease-in-out' + )); + } + + #{$x} { + .content { + @include vendor('transform', 'translateX(1rem)'); + opacity: 0; + } + } + } + + &.on#{$event}-content-fade-right { + .content { + @include vendor('transition', ( + 'opacity #{$y} ease-in-out', + 'transform #{$y} ease-in-out' + )); + } + + #{$x} { + .content { + @include vendor('transform', 'translateX(-1rem)'); + opacity: 0; + } + } + } + + &.on#{$event}-content-fade-in { + .content { + @include vendor('transition', 'opacity #{$y} ease-in-out'); + } + + #{$x} { + .content { + opacity: 0; + } + } + } + + // Image. + &.on#{$event}-image-fade-up { + .image { + @include vendor('transition', ( + 'opacity #{$y} ease-in-out', + 'transform #{$y} ease-in-out' + )); + + img { + @include vendor('transition', 'opacity #{$y} ease-in-out'); + @include vendor('transition-delay', '#{$y * 0.75}'); + } + } + + #{$x} { + .image { + @include vendor('transform', 'translateY(1rem)'); + opacity: 0; + + img { + opacity: 0; + } + } + } + } + + &.on#{$event}-image-fade-down { + .image { + @include vendor('transition', ( + 'opacity #{$y} ease-in-out', + 'transform #{$y} ease-in-out' + )); + + img { + @include vendor('transition', 'opacity #{$y} ease-in-out'); + @include vendor('transition-delay', '#{$y * 0.75}'); + } + } + + #{$x} { + .image { + @include vendor('transform', 'translateY(-1rem)'); + opacity: 0; + + img { + opacity: 0; + } + } + } + } + + &.on#{$event}-image-fade-left { + .image { + @include vendor('transition', ( + 'opacity #{$y} ease-in-out', + 'transform #{$y} ease-in-out' + )); + + img { + @include vendor('transition', 'opacity #{$y} ease-in-out'); + @include vendor('transition-delay', '#{$y * 0.75}'); + } + } + + #{$x} { + .image { + @include vendor('transform', 'translateX(1rem)'); + opacity: 0; + + img { + opacity: 0; + } + } + } + } + + &.on#{$event}-image-fade-right { + .image { + @include vendor('transition', ( + 'opacity #{$y} ease-in-out', + 'transform #{$y} ease-in-out' + )); + + img { + @include vendor('transition', 'opacity #{$y} ease-in-out'); + @include vendor('transition-delay', '#{$y * 0.75}'); + } + } + + #{$x} { + .image { + @include vendor('transform', 'translateX(-1rem)'); + opacity: 0; + + img { + opacity: 0; + } + } + } + } + + &.on#{$event}-image-fade-in { + .image { + img { + @include vendor('transition', 'opacity #{$y} ease-in-out'); + } + } + + #{$x} { + .image { + img { + opacity: 0; + } + } + } + } + + } + + // On Load. + @include transition-banner('load'); + + // On Scroll. + @include transition-banner('scroll'); + + } + +/* Banner (style1) */ + + .banner.style1 { + @include vendor('align-items', 'stretch'); + @include vendor('display', 'flex'); + @include vendor('flex-direction', 'row'); + @include vendor('justify-content', 'flex-end'); + position: relative; + text-align: left; + overflow-x: hidden; + + .content { + @include padding(_size(padding, default), _size(padding, default)); + @include vendor('align-self', 'center'); + @include vendor('flex-grow', '1'); + @include vendor('flex-shrink', '1'); + width: 50%; + max-width: (_size(inner) * 0.75); + margin: 0 auto; + } + + .image { + @include vendor('flex-grow', '0'); + @include vendor('flex-shrink', '0'); + border-radius: 0; + width: 50%; + + img { + @include vendor('object-fit', 'cover'); + @include vendor('object-position', 'center'); + display: block; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + border-radius: 0; + } + } + + @include breakpoint('<=xlarge') { + .content { + @include padding(_size(padding, xlarge), _size(padding, xlarge)); + } + } + + @include breakpoint('<=large') { + .content { + @include padding(_size(padding, large), _size(padding, large)); + } + } + + @include breakpoint('<=medium') { + .content { + @include padding(_size(padding, medium) * 1.25, _size(padding, medium)); + } + } + + @include breakpoint('<=small') { + .content { + @include padding(_size(padding, small) * 1.25, _size(padding, small)); + } + } + + @include orientation(portrait) { + @include vendor('flex-direction', 'column-reverse'); + text-align: center; + + .content { + @include vendor('display', 'flex'); + @include vendor('flex-direction', 'column'); + @include vendor('justify-content', 'center'); + width: 100%; + max-width: 100%; + } + + .image { + width: 100%; + max-width: 100%; + height: 45vh; + } + } + + // Modifiers. + + // Size. + &.fullscreen { + min-height: 100vh; + + @include orientation(portrait) { + .content { + min-height: 50vh; + } + + .image { + height: 50vh; + } + } + } + + // Orientation. + &.orient-left { + // ... + } + + &.orient-right { + @include vendor('flex-direction', 'row-reverse'); + + @include orientation(portrait) { + @include vendor('flex-direction', 'column-reverse'); + } + } + + // Content Alignment. + &.content-align-left { + // ... + } + + &.content-align-center { + text-align: center; + } + + &.content-align-right { + text-align: right; + + @include orientation(portrait) { + text-align: center; + } + } + + // Image Position. + &.image-position-left { + .image { + img { + @include vendor('object-position', 'left'); + } + } + } + + &.image-position-center { + .image { + img { + // ... + } + } + } + + &.image-position-right { + .image { + img { + @include vendor('object-position', 'right'); + } + } + } + + } + +/* Banner (style2) */ + + .banner.style2 { + @include padding(_size(padding, default) * 0.75, _size(padding, default) * 0.75); + @include vendor('align-items', 'center'); + @include vendor('display', 'flex'); + @include vendor('justify-content', 'center'); + background-color: _palette(border-darken); + position: relative; + text-align: center; + overflow-x: hidden; + + .content { + @include padding(_size(padding, default) * 0.75, _size(padding, default) * 0.75); + position: relative; + width: (_size(inner) * 0.625); + max-width: 100%; + background-color: inherit; + border-radius: _size(border-radius-alt); + margin-bottom: _size(element-margin); + z-index: 1; + } + + .image { + @include vendor('flex-grow', '0'); + @include vendor('flex-shrink', '0'); + position: absolute; + width: 100%; + height: 100%; + top: 0; + left: 0; + border-radius: 0; + + img { + @include vendor('object-fit', 'cover'); + @include vendor('object-position', 'center'); + display: block; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + border-radius: 0; + } + } + + @include breakpoint('<=xlarge') { + @include padding(_size(padding, xlarge) * 0.75, _size(padding, xlarge) * 0.75); + + .content { + @include padding(_size(padding, xlarge) * 0.75, _size(padding, xlarge) * 0.75); + } + } + + @include breakpoint('<=large') { + @include padding(_size(padding, large), _size(padding, large) * 0.75); + + .content { + @include padding(_size(padding, large), _size(padding, large) * 0.75); + } + } + + @include breakpoint('<=medium') { + @include padding(_size(padding, medium), _size(padding, medium)); + + .content { + @include padding(_size(padding, medium) * 1.25, _size(padding, medium) * 0.75); + } + } + + @include breakpoint('<=small') { + @include padding(_size(padding, small), _size(padding, small)); + + .content { + @include padding(_size(padding, small) * 1.25, _size(padding, small) * 0.75); + } + } + + // Modifiers. + + // Size. + &.fullscreen { + min-height: 80vh; + } + + // Orientation. + &.orient-left { + @include vendor('justify-content', 'flex-start'); + padding-left: 0; + + .content { + border-top-left-radius: 0; + border-bottom-left-radius: 0; + } + } + + &.orient-center { + // ... + } + + &.orient-right { + @include vendor('justify-content', 'flex-end'); + padding-right: 0; + + .content { + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } + } + + // Content Alignment. + &.content-align-left { + text-align: left; + } + + &.content-align-center { + // ... + } + + &.content-align-right { + text-align: right; + } + + // Image Position. + &.image-position-left { + .image { + img { + @include vendor('object-position', 'left'); + } + } + } + + &.image-position-center { + .image { + img { + // ... + } + } + } + + &.image-position-right { + .image { + img { + @include vendor('object-position', 'right'); + } + } + } + + } + +/* Banner (style3) */ + + .banner.style3 { + $image-size: 21rem; + $content-size: (_size(inner) * 0.875) - $image-size - (_size(element-margin) * 1.75); + + @include padding(_size(padding, default), _size(padding, default)); + @include vendor('align-items', 'center'); + @include vendor('display', 'flex'); + @include vendor('flex-direction', 'row-reverse'); + @include vendor('justify-content', 'center'); + position: relative; + text-align: left; + overflow-x: hidden; + + .content { + width: $content-size; + max-width: 100%; + } + + .image { + @include vendor('flex-grow', '0'); + @include vendor('flex-shrink', '0'); + width: $image-size; + height: $image-size; + border-radius: 100%; + margin: 0 (_size(element-margin) * 1.75) _size(element-margin) 0; + + img { + @include vendor('object-fit', 'cover'); + @include vendor('object-position', 'center'); + display: block; + width: 100%; + height: 100%; + border-radius: 100%; + } + } + + @include breakpoint('<=xlarge') { + @include padding(_size(padding, xlarge), _size(padding, xlarge)); + } + + @include breakpoint('<=large') { + @include padding(_size(padding, large), _size(padding, large)); + } + + @include breakpoint('<=medium') { + @include padding(_size(padding, medium) * 1.25, _size(padding, medium)); + + .image { + width: ($image-size * 0.875); + height: ($image-size * 0.875); + } + } + + @include breakpoint('<=small') { + @include padding(_size(padding, small) * 1.25, _size(padding, small)); + @include vendor('align-items', 'flex-start'); + + .image { + width: ($image-size * 0.75); + height: ($image-size * 0.75); + margin: 0 (_size(element-margin) * 1) _size(element-margin) 0; + } + } + + @include orientation(portrait) { + @include vendor('align-items', 'center'); + @include vendor('flex-direction', 'column-reverse'); + text-align: center; + + .content { + width: 34rem; + max-width: 100%; + } + + .image { + margin-right: 0; + } + } + + // Modifiers. + + // Size. + &.fullscreen { + min-height: 100vh; + } + + // Orientation. + &.orient-left { + @include vendor('flex-direction', 'row'); + + .image { + margin: 0 0 _size(element-margin) (_size(element-margin) * 1.75); + } + + @include breakpoint('<=small') { + .image { + margin: 0 0 _size(element-margin) (_size(element-margin) * 1); + } + } + + @include orientation(portrait) { + @include vendor('flex-direction', 'column-reverse'); + + .image { + margin-left: 0; + } + } + } + + &.orient-right { + // ... + } + + // Content Alignment. + &.content-align-left { + // ... + } + + &.content-align-center { + text-align: center; + } + + &.content-align-right { + text-align: right; + } + + // Image Position. + &.image-position-left { + .image { + img { + @include vendor('object-position', 'left'); + } + } + } + + &.image-position-center { + // ... + } + + &.image-position-right { + .image { + img { + @include vendor('object-position', 'right'); + } + } + } + + } + +/* Banner (style4) */ + + .banner.style4 { + $image-width: 13rem; + $content-size: (_size(inner) * 0.75) - $image-width - (_size(element-margin) * 1.75); + + @include padding(_size(padding, default), _size(padding, default)); + @include vendor('align-items', 'center'); + @include vendor('display', 'flex'); + @include vendor('flex-direction', 'row-reverse'); + @include vendor('justify-content', 'center'); + position: relative; + text-align: left; + overflow-x: hidden; + + .content { + width: $content-size; + max-width: 100%; + } + + .image { + @include phone($image-width); + margin-right: (_size(element-margin) * 1.75); + } + + @include breakpoint('<=xlarge') { + @include padding(_size(padding, xlarge), _size(padding, xlarge)); + } + + @include breakpoint('<=large') { + @include padding(_size(padding, large), _size(padding, large)); + } + + @include breakpoint('<=medium') { + @include padding(_size(padding, medium) * 1.25, _size(padding, medium)); + + .image { + @include resize-phone($image-width, 0.875); + } + } + + @include breakpoint('<=small') { + @include padding(_size(padding, small) * 1.25, _size(padding, small)); + @include vendor('align-items', 'flex-start'); + + .image { + @include resize-phone($image-width, 0.625); + } + } + + @include orientation(portrait) { + @include vendor('align-items', 'center'); + @include vendor('flex-direction', 'column-reverse'); + text-align: center; + + .content { + width: 34rem; + max-width: 100%; + } + + .image { + margin-right: 0; + margin-left: 0; + } + } + + // Modifiers. + + // Size. + &.fullscreen { + min-height: 100vh; + } + + // Variant. + &.iphone { + // ... + } + + &.android { + // ... + } + + // Orientation. + &.orient-left { + @include vendor('flex-direction', 'row'); + + .image { + margin-right: 0; + margin-left: (_size(element-margin) * 1.75); + } + + @include orientation(portrait) { + @include vendor('flex-direction', 'column-reverse'); + + .image { + margin-right: 0; + margin-left: 0; + } + } + } + + &.orient-right { + // ... + } + + // Content Alignment. + &.content-align-left { + // ... + } + + &.content-align-center { + text-align: center; + } + + &.content-align-right { + text-align: right; + } + + // Image Position. + &.image-position-left { + .image { + img { + @include vendor('object-position', 'left'); + } + } + } + + &.image-position-center { + // ... + } + + &.image-position-right { + .image { + img { + @include vendor('object-position', 'right'); + } + } + } + + } + +/* Banner (style5) */ + + .banner.style5 { + @include padding(_size(padding, default), _size(padding, default)); + @include vendor('align-items', 'center'); + @include vendor('display', 'flex'); + @include vendor('justify-content', 'center'); + background-color: inherit; + position: relative; + text-align: center; + overflow-x: hidden; + + .content { + position: relative; + width: (_size(inner) * 0.625); + max-width: 100%; + margin-bottom: _size(element-margin); + z-index: 1; + } + + .image { + @include vendor('flex-grow', '0'); + @include vendor('flex-shrink', '0'); + position: absolute; + width: 100%; + height: 100%; + top: 0; + left: 0; + border-radius: 0; + opacity: 0.1; + + img { + @include vendor('object-fit', 'cover'); + @include vendor('object-position', 'center'); + display: block; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + border-radius: 0; + } + } + + @include breakpoint('<=xlarge') { + @include padding(_size(padding, xlarge), _size(padding, xlarge)); + } + + @include breakpoint('<=large') { + @include padding(_size(padding, large), _size(padding, large)); + } + + @include breakpoint('<=medium') { + @include padding(_size(padding, medium) * 1.25, _size(padding, medium)); + } + + @include breakpoint('<=small') { + @include padding(_size(padding, small) * 1.25, _size(padding, small)); + } + + // Modifiers. + + // Size. + &.fullscreen { + min-height: 80vh; + } + + // Content Alignment. + &.content-align-left { + text-align: left; + } + + &.content-align-center { + // ... + } + + &.content-align-right { + text-align: right; + } + + // Image Position. + &.image-position-left { + .image { + img { + @include vendor('object-position', 'left'); + } + } + } + + &.image-position-center { + // ... + } + + &.image-position-right { + .image { + img { + @include vendor('object-position', 'right'); + } + } + } + + } + +// Mixin + + @mixin color-banner($p: null) { + .banner { + .image { + background-color: transparentize(_palette($p, fg-bold), 0.875); + } + + @if ($p != 'invert') { + &.invert { + .image { + background-color: transparentize(_palette(invert, fg-bold), 0.875); + } + } + } + } + + .banner.style4 { + .image { + @include color-phone($p); + } + + // Variant. + &.iphone { + .image { + @include color-phone-variant('iphone', $p); + } + } + + &.android { + .image { + @include color-phone-variant('android', $p); + } + } + + @if ($p != 'invert') { + &.invert { + .image { + @include color-phone(invert); + } + + // Variant. + &.iphone { + .image { + @include color-phone-variant('iphone', invert); + } + } + + &.android { + .image { + @include color-phone-variant('android', invert); + } + } + + } + } + } + } + + @include color-banner; \ No newline at end of file diff --git a/_sass/components/_box.scss b/_sass/components/_box.scss new file mode 100644 index 0000000..66178ca --- /dev/null +++ b/_sass/components/_box.scss @@ -0,0 +1,34 @@ +/// +/// Story by HTML5 UP +/// html5up.net | @ajlkn +/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +/// + +/* Box */ + + .box { + border-radius: _size(border-radius); + border: solid _size(border-width); + margin-bottom: _size(element-margin); + padding: 1.5rem; + + > :last-child, + > :last-child > :last-child, + > :last-child > :last-child > :last-child { + margin-bottom: 0; + } + + &.alt { + border: 0; + border-radius: 0; + padding: 0; + } + } + + @mixin color-box($p: null) { + .box { + border-color: _palette($p, border); + } + } + + @include color-box; \ No newline at end of file diff --git a/_sass/components/_button.scss b/_sass/components/_button.scss new file mode 100644 index 0000000..8bcf5e7 --- /dev/null +++ b/_sass/components/_button.scss @@ -0,0 +1,121 @@ +/// +/// Story by HTML5 UP +/// html5up.net | @ajlkn +/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +/// + +/* Button */ + + input[type="submit"], + input[type="reset"], + input[type="button"], + button, + .button { + @include vendor('appearance', 'none'); + @include vendor('transition', ( + 'background-color #{_duration(transition)} ease-in-out', + 'box-shadow #{_duration(transition)} ease-in-out', + 'color #{_duration(transition)} ease-in-out' + )); + border: 0; + cursor: pointer; + display: inline-block; + font-weight: _font(weight-bold); + font-family: monospace; + letter-spacing: _font(kerning-alt); + text-align: center; + text-decoration: none; + text-transform: uppercase; + white-space: nowrap; + font-size: 0.75rem; + max-width: 20rem; + height: 3.75em; + line-height: 3.75em; + border-radius: 7px; + padding: 0 2.5em; + text-overflow: ellipsis; + overflow: hidden; + + &.icon { + &:before { + margin-right: 0.5rem; + } + } + + &.fit { + width: 100%; + } + + &.small { + font-size: 0.7rem; + height: 3.325em; + line-height: 3.325em; + border-radius: 7px; + padding: 0 2em; + } + &.smaller { + font-size: 0.5rem; + height: 2.75em; + line-height: 2.75em; + border-radius: 7px; + padding: 0 2em; + } + + &.large { + font-size: 0.8rem; + height: 4em; + line-height: 4em; + border-radius: 7px; + padding: 0 3em; + } + + &.wide { + min-width: 14em; + } + + &.disabled, + &:disabled { + @include vendor('pointer-events', 'none'); + opacity: 0.25; + } + } + + @mixin color-button($p: null) { + input[type="submit"], + input[type="reset"], + input[type="button"], + button, + .button { + background-color: _palette(fg); + box-shadow: inset 0 0 5px _size(border-width) _palette($p, border-darken); + color: _palette($p, bg) !important; + + &:hover { + box-shadow: inset 0 0 5px _size(border-width) _palette($p, border); + color: _palette($p, fg) !important; + background-color: _palette(border-darken); + } + + &:active { + background-color: transparentize(_palette($p, accent), 0.8); + box-shadow: inset 0 0 0 _size(border-width) _palette($p, accent); + color: _palette($p, accent) !important; + } + + &.primary { + background-color: _palette($p, fg-bold); + box-shadow: none; + color: _palette($p, bg) !important; + + &:hover { + background-color: _palette($p, accent); + } + + &:active { + background-color: darken(_palette($p, accent), 12); + } + } + } + } + + @include color-button; \ No newline at end of file diff --git a/_sass/components/_form.scss b/_sass/components/_form.scss new file mode 100644 index 0000000..7a2786d --- /dev/null +++ b/_sass/components/_form.scss @@ -0,0 +1,287 @@ +/// +/// Story by HTML5 UP +/// html5up.net | @ajlkn +/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +/// + +/* Form */ + + form { + margin: 0 0 _size(element-margin) 0; + + > :last-child { + margin-bottom: 0; + } + + > .fields { + $gutter: (_size(element-margin) * 0.75); + + @include vendor('display', 'flex'); + @include vendor('flex-wrap', 'wrap'); + width: calc(100% + #{$gutter * 2}); + margin: ($gutter * -1) 0 _size(element-margin) ($gutter * -1); + + > .field { + @include vendor('flex-grow', '0'); + @include vendor('flex-shrink', '0'); + padding: $gutter 0 0 $gutter; + width: calc(100% - #{$gutter * 1}); + + &.half { + width: calc(50% - #{$gutter * 0.5}); + } + + &.third { + width: calc(#{100% / 3} - #{$gutter * (1 / 3)}); + } + + &.quarter { + width: calc(25% - #{$gutter * 0.25}); + } + } + } + + @include breakpoint('<=xsmall') { + > .fields { + $gutter: (_size(element-margin) * 0.75); + + width: calc(100% + #{$gutter * 2}); + margin: ($gutter * -1) 0 _size(element-margin) ($gutter * -1); + + > .field { + padding: $gutter 0 0 $gutter; + width: calc(100% - #{$gutter * 1}); + + &.half { + width: calc(100% - #{$gutter * 1}); + } + + &.third { + width: calc(100% - #{$gutter * 1}); + } + + &.quarter { + width: calc(100% - #{$gutter * 1}); + } + } + } + } + } + + label { + display: block; + font-size: 0.9rem; + font-weight: _font(weight-bold); + margin: 0 0 (_size(element-margin) * 0.5) 0; + } + + input[type="text"], + input[type="password"], + input[type="email"], + input[type="tel"], + input[type="search"], + input[type="url"], + select, + textarea { + @include vendor('appearance', 'none'); + background-color: _palette(bg-transparent); + border-radius: _size(border-radius); + border: none; + border: solid _size(border-width); + color: inherit; + display: block; + outline: 0; + padding: 0 0.825rem; + text-decoration: none; + width: 100%; + box-shadow: inset 0 0 5px 1px _palette(border); + + &:invalid { + box-shadow: none; + } + } + + select { + background-size: 1.25rem; + background-repeat: no-repeat; + background-position: calc(100% - 1rem) center; + height: _size(element-height); + padding-right: _size(element-height); + text-overflow: ellipsis; + + &:focus { + &::-ms-value { + background-color: transparent; + } + } + + &::-ms-expand { + display: none; + } + } + + input[type="text"], + input[type="password"], + input[type="email"], + input[type="tel"], + input[type="search"], + input[type="url"], + select { + height: _size(element-height); + } + + textarea { + padding: 0.75rem 1rem; + } + + input[type="checkbox"], + input[type="radio"], { + @include vendor('appearance', 'none'); + display: block; + float: left; + margin-right: -2rem; + opacity: 0; + width: 1rem; + z-index: -1; + + & + label { + @include icon(false, solid); + @include vendor('user-select', 'none'); + cursor: pointer; + display: inline-block; + font-size: 1rem; + font-weight: _font(weight); + padding-left: (_size(element-height) * 0.6) + 0.75rem; + padding-right: 0.75rem; + position: relative; + margin-bottom: 0; + + &:before { + border-radius: _size(border-radius); + border: solid _size(border-width); + content: ''; + display: inline-block; + font-size: 0.8rem; + height: (_size(element-height) * 0.6); + left: 0; + line-height: (_size(element-height) * 0.6); + position: absolute; + text-align: center; + top: 0; + width: (_size(element-height) * 0.6); + } + } + + &:checked + label { + &:before { + content: '\f00c'; + } + } + } + + input[type="checkbox"] { + & + label { + &:before { + border-radius: _size(border-radius); + } + } + } + + input[type="radio"] { + & + label { + &:before { + border-radius: 100%; + } + } + } + + ::-webkit-input-placeholder { + opacity: 1.0; + } + + :-moz-placeholder { + opacity: 1.0; + } + + ::-moz-placeholder { + opacity: 1.0; + } + + :-ms-input-placeholder { + opacity: 1.0; + } + + @mixin color-form($p: null) { + label { + color: _palette($p, fg-bold); + } + + input[type="text"], + input[type="password"], + input[type="email"], + input[type="tel"], + input[type="search"], + input[type="url"], + select, + textarea { + border-color: _palette($p, border); + + &:focus { + border-color: _palette($p, accent); + box-shadow: 0 0 0 _size(border-width) _palette($p, accent); + } + } + + select { + background-image: svg-url(""); + + option { + color: _palette(fg-bold); + background: _palette(bg); + } + } + + input[type="checkbox"], + input[type="radio"], { + & + label { + color: _palette($p, fg); + + &:before { + border-color: _palette($p, fg-light); + } + } + + &:checked + label { + &:before { + background-color: _palette($p, fg-bold); + border-color: _palette($p, fg-bold); + color: _palette($p, bg); + } + } + + &:focus + label { + &:before { + border-color: _palette($p, accent); + box-shadow: 0 0 0 _size(border-width) _palette($p, accent); + } + } + } + + ::-webkit-input-placeholder { + color: _palette($p, fg-light) !important; + } + + :-moz-placeholder { + color: _palette($p, fg-light) !important; + } + + ::-moz-placeholder { + color: _palette($p, fg-light) !important; + } + + :-ms-input-placeholder { + color: _palette($p, fg-light) !important; + } + } + + @include color-form; \ No newline at end of file diff --git a/_sass/components/_gallery.scss b/_sass/components/_gallery.scss new file mode 100644 index 0000000..75d216c --- /dev/null +++ b/_sass/components/_gallery.scss @@ -0,0 +1,616 @@ +/// +/// Story by HTML5 UP +/// html5up.net | @ajlkn +/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +/// + +/* Gallery (transitions) */ + + .gallery { + + // Mixin. + @mixin transition-gallery($event) { + $x: null; + $y: null; + + @if ($event == 'load') { + $x: 'body.is-preload &'; + $y: _duration(on-load); + } + @else if ($event == 'scroll') { + $x: '&.is-inactive'; + $y: _duration(on-scroll); + } + + &.on#{$event}-fade-in { + article { + .image { + img { + @include vendor('transition', 'opacity #{$y} ease-in-out'); + @include vendor('transition-delay', '#{_misc(gallery-limit) * _duration(gallery-delay)}'); + } + } + + @for $i from 0 through _misc(gallery-limit) { + &:nth-child(#{$i + 1}) { + .image { + img { + @include vendor('transition-delay', '#{$i * _duration(gallery-delay)}'); + } + } + } + } + } + + #{$x} { + article { + .image { + img { + opacity: 0; + } + } + } + } + } + } + + // On Load. + @include transition-gallery('load'); + + // On Scroll. + @include transition-gallery('scroll'); + + } + +/* Gallery (style1) */ + + .gallery.style1 { + @include color-typography(invert); + @include color-button(invert); + @include vendor('align-items', 'center'); + @include vendor('display', 'flex'); + @include vendor('flex-wrap', 'wrap'); + @include vendor('justify-content', 'center'); + position: relative; + width: 100%; + background-color: transparent; + + > .forward, >.backward { + display: none; + } + + > .inner { + @include vendor('align-items', 'inherit'); + @include vendor('display', 'inherit'); + @include vendor('flex-wrap', 'inherit'); + @include vendor('justify-content', 'inherit'); + } + + article { + overflow: hidden; + position: relative; + width: 25%; + + .image { + @include vendor('transition', 'opacity #{_duration(transition)} ease-in-out'); + display: block; + width: 100%; + border-radius: 0; + + img { + display: block; + width: 100%; + border-radius: 0; + } + } + + .caption { + @include vendor('align-items', 'center'); + @include vendor('display', 'flex'); + @include vendor('flex-direction', 'column'); + @include vendor('justify-content', 'center'); + @include vendor('pointer-events', 'none'); + @include vendor('transition', 'opacity #{_duration(transition)} ease-in-out'); + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + background-color: transparentize(_palette(invert, bg), 1 - _misc(overlay-opacity)); + opacity: 0; + padding: 2rem; + z-index: 1; + font-size: 0.8rem; + + a { + @include vendor('pointer-events', 'auto'); + } + + h2, h3, h4, h5, h6 { + font-size: 1.25rem; + margin-bottom: 0.25rem; + } + + > * { + max-width: 100%; + margin-bottom: 1rem; + } + + > :last-child { + margin-bottom: 0; + } + } + + &:hover { + .caption { + opacity: 1; + } + } + } + + @include breakpoint('<=large') { + article { + width: (100% / 3); + + .caption { + padding: 1rem; + } + } + } + + @include breakpoint('<=medium') { + article { + width: 50%; + + .caption { + padding: 1rem; + } + } + } + + @include breakpoint('<=xsmall') { + article { + width: 100%; + + .caption { + padding: 1rem; + } + } + } + + // Modifiers. + + // size + &.small { + article { + width: 20%; + + .caption { + padding: 1rem; + } + } + + @include breakpoint('<=large') { + article { + width: 25%; + + .caption { + padding: 1rem; + } + } + } + + @include breakpoint('<=medium') { + article { + width: (100% / 3); + + .caption { + padding: 1rem; + } + } + } + + @include breakpoint('<=xsmall') { + article { + width: 50%; + + .caption { + padding: 1rem; + } + } + } + } + + &.medium { + // ... + } + + &.big { + article { + width: (100% / 3); + + .caption { + padding: 3rem; + } + } + + @include breakpoint('<=large') { + article { + width: 50%; + + .caption { + padding: 2rem; + } + } + } + + @include breakpoint('<=medium') { + article { + width: 50%; + + .caption { + padding: 2rem; + } + } + } + + @include breakpoint('<=xsmall') { + article { + width: 100%; + + .caption { + padding: 1rem; + } + } + } + } + + } + +/* Gallery (style2) */ + + .gallery.style2 { + @include color-typography(invert); + @include color-button(invert); + @include vendor('display', 'flex'); + -webkit-overflow-scrolling: touch; + position: relative; + background-color: transparent; + + > .forward, >.backward { + @include icon(false, solid); + @include vendor('transition', 'opacity #{_duration(transition)} ease-in-out'); + position: absolute; + top: 0; + width: 5rem; + height: 100%; + cursor: pointer; + opacity: 0; + z-index: 2; + + &:before { + display: block; + top: calc(50% - 1.5rem); + width: 4rem; + height: 3rem; + line-height: 1em; + font-size: 3rem; + position: absolute; + text-align: center; + } + } + + &:hover { + > .forward, > .backward { + opacity: 1; + } + } + + > .forward { + right: 0; + background-image: linear-gradient(to left, rgba(0,0,0,0.25) 15%, rgba(0,0,0,0)); + + &:before { + content: '\f105'; + right: 0; + } + } + + > .backward { + left: 0; + background-image: linear-gradient(to right, rgba(0,0,0,0.25) 15%, rgba(0,0,0,0)); + + &:before { + content: '\f104'; + left: 0; + } + } + + > .inner { + @include vendor('display', 'inherit'); + overflow-x: auto; + overflow-y: hidden; + position: relative; + width: 100%; + } + + article { + @include vendor('flex-grow', '0'); + @include vendor('flex-shrink', '0'); + display: block; + position: relative; + overflow: hidden; + width: 22.5rem; + max-width: 75vw; + + .image { + display: block; + width: 100%; + border-radius: 0; + + img { + display: block; + width: 100%; + border-radius: 0; + } + } + + .caption { + @include vendor('align-items', 'center'); + @include vendor('display', 'flex'); + @include vendor('flex-direction', 'column'); + @include vendor('justify-content', 'center'); + @include vendor('pointer-events', 'none'); + @include vendor('transition', 'opacity #{_duration(transition)} ease-in-out'); + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + background-color: transparentize(_palette(invert, bg), 1 - _misc(lightbox-opacity)); + opacity: 0; + padding: 3rem; + z-index: 1; + font-size: 1rem; + + a { + @include vendor('pointer-events', 'auto'); + } + + h2, h3, h4, h5, h6 { + font-size: 1.25rem; + margin-bottom: 0.25rem; + } + + > * { + max-width: 100%; + margin-bottom: 1rem; + } + + > :last-child { + margin-bottom: 0; + } + } + + &:hover { + .caption { + opacity: 1; + } + } + } + + @include breakpoint('<=medium') { + article { + .caption { + padding: 2rem; + } + } + } + + @include breakpoint('<=small') { + article { + .caption { + padding: 2rem; + } + } + } + + // Modifiers. + + // size + &.small { + article { + width: 17.5rem; + + .caption { + padding: 2rem; + } + } + + @include breakpoint('<=medium') { + article { + .caption { + padding: 2rem; + } + } + } + + @include breakpoint('<=small') { + article { + .caption { + padding: 2rem; + } + } + } + } + + &.medium { + // ... + } + + &.big { + article { + width: 30rem; + + .caption { + padding: 4rem; + } + } + + @include breakpoint('<=medium') { + article { + .caption { + padding: 3rem; + } + } + } + + @include breakpoint('<=small') { + article { + .caption { + padding: 2rem; + } + } + } + } + + } + +/* Gallery (lightbox) */ + + @include keyframes('gallery-modal-spinner') { + 0% { + @include vendor('transform', 'rotate(0deg)'); + } + + 100% { + @include vendor('transform', 'rotate(360deg)'); + } + } + + .gallery.lightbox { + .modal { + @include vendor('display', 'flex'); + @include vendor('align-items', 'center'); + @include vendor('justify-content', 'center'); + @include vendor('pointer-events', 'none'); + @include vendor('user-select', 'none'); + @include vendor('transition', ( + 'opacity #{_duration(gallery-lightbox)} ease', + 'visibility #{_duration(gallery-lightbox)}', + 'z-index #{_duration(gallery-lightbox)}' + )); + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + outline: 0; + background-color: transparentize(_palette(invert, bg), 1 - _misc(lightbox-opacity)); + visibility: none; + opacity: 0; + z-index: 0; + + &:before { + @include vendor('animation', 'gallery-modal-spinner 1s infinite linear'); + @include vendor('transition', 'opacity #{_duration(gallery-lightbox) * 0.5} ease'); + @include vendor('transition-delay', '#{_duration(gallery-lightbox)}'); + content: ''; + display: block; + position: absolute; + top: 50%; + left: 50%; + width: 4rem; + height: 4rem; + margin: -2rem 0 0 -2rem; + background-image: svg-url(''); + background-position: center; + background-repeat: no-repeat; + background-size: 4rem; + opacity: 0; + } + + &:after { + content: ''; + display: block; + position: absolute; + top: 0.5rem; + right: 0.5rem; + width: 4rem; + height: 4rem; + cursor: pointer; + background-image: svg-url(''); + background-position: center; + background-repeat: no-repeat; + background-size: 3rem; + } + + .inner { + @include vendor('transform', 'translateY(0.75rem)'); + @include vendor('transition', ( + 'opacity #{_duration(gallery-lightbox) * 0.5} ease', + 'transform #{_duration(gallery-lightbox) * 0.5} ease' + )); + opacity: 0; + + img { + display: block; + max-width: 90vw; + max-height: 85vh; + box-shadow: 0 1rem 3rem 0 rgba(0, 0, 0, 0.35); + } + } + + &.visible { + @include vendor('pointer-events', 'auto'); + visibility: visible; + opacity: 1; + z-index: _misc(z-index-base) + 1; + + &:before { + opacity: 1; + } + } + + &.loaded { + .inner { + @include vendor('transform', 'translateY(0)'); + @include vendor('transition', ( + 'opacity #{_duration(gallery-lightbox)} ease', + 'transform #{_duration(gallery-lightbox)} ease' + )); + opacity: 1; + } + + &:before { + @include vendor('transition-delay', '0s'); + opacity: 0; + } + } + } + + @include breakpoint('<=medium') { + .modal { + .inner { + img { + max-width: 100vw; + } + } + } + } + } + +// Mixin + + @mixin color-gallery($p: null) { + .gallery { + article { + .image { + background-color: transparentize(_palette($p, fg-bold), 0.875); + } + } + } + } + + @include color-gallery; \ No newline at end of file diff --git a/_sass/components/_icon.scss b/_sass/components/_icon.scss new file mode 100644 index 0000000..5486954 --- /dev/null +++ b/_sass/components/_icon.scss @@ -0,0 +1,103 @@ +/// +/// Story by HTML5 UP +/// html5up.net | @ajlkn +/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +/// + +/* Icon */ + + .icon { + @include icon; + border-bottom: none; + position: relative; + text-align: center; + + > .label { + display: none; + } + + &:before { + line-height: inherit; + } + + &.solid { + &:before { + font-weight: 900; + } + } + + &.brands { + &:before { + font-family: 'Font Awesome 5 Brands'; + } + } + + &.style2 { + &:before { + border-radius: 2.75em; + display: inline-block; + height: 2.75em; + line-height: 2.75em; + width: 2.75em; + } + } + + &.major { + display: block; + margin: 0 0 (_size(element-margin) * 0.5) 0; + + &:before { + font-size: 1.25rem; + } + } + } + + a.icon { + &.style2 { + &:before { + @include vendor('transition', ( + 'background-color #{_duration(transition)} ease-in-out', + 'box-shadow #{_duration(transition)} ease-in-out', + 'color #{_duration(transition)} ease-in-out' + )); + } + } + } + + @mixin color-icon($p: null) { + .icon { + &.style2 { + &:before { + box-shadow: inset 0 0 0 _size(border-width) _palette($p, border); + } + } + } + .player { + &.style2 { + &:before { + box-shadow: inset 0 0 0 _size(border-width) _palette($p, fg-light); + } + } + } + + a.icon { + &.style2 { + &:hover { + &:before { + box-shadow: inset 0 0 0 _size(border-width) _palette($p, accent); + color: _palette($p, accent); + } + } + + &:active { + &:before { + background-color: transparentize(_palette($p, accent), 0.9); + box-shadow: inset 0 0 0 _size(border-width) _palette($p, accent); + color: _palette($p, accent); + } + } + } + } + } + + @include color-icon; \ No newline at end of file diff --git a/_sass/components/_icons.scss b/_sass/components/_icons.scss new file mode 100644 index 0000000..44d9df0 --- /dev/null +++ b/_sass/components/_icons.scss @@ -0,0 +1,22 @@ +/// +/// Story by HTML5 UP +/// html5up.net | @ajlkn +/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +/// + +/* Icons */ + + ul.icons { + cursor: default; + list-style: none; + padding-left: 0; + + li { + display: inline-block; + padding: 0 0.75rem 0 0; + + &:last-child { + padding-right: 0; + } + } + } \ No newline at end of file diff --git a/_sass/components/_image.scss b/_sass/components/_image.scss new file mode 100644 index 0000000..68284ec --- /dev/null +++ b/_sass/components/_image.scss @@ -0,0 +1,61 @@ +/// +/// Story by HTML5 UP +/// html5up.net | @ajlkn +/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +/// + +/* Image */ + + .image { + border: 0; + border-radius: _size(border-radius); + display: inline-block; + position: relative; + + img { + display: block; + border-radius: _size(border-radius); + } + + &.left, + &.right { + width: 40%; + max-width: 10rem; + + img { + width: 100%; + } + } + + &.left { + float: left; + margin: 0 1.5rem 1rem 0; + top: 0.25rem; + } + + &.right { + float: right; + margin: 0 0 1rem 1.5rem; + top: 0.25rem; + } + + &.fit { + display: block; + margin: 0 0 _size(element-margin) 0; + width: 100%; + + img { + width: 100%; + } + } + + &.main { + display: block; + margin: 0 0 (_size(element-margin) * 1.5) 0; + width: 100%; + + img { + width: 100%; + } + } + } \ No newline at end of file diff --git a/_sass/components/_index.scss b/_sass/components/_index.scss new file mode 100644 index 0000000..0c91d51 --- /dev/null +++ b/_sass/components/_index.scss @@ -0,0 +1,66 @@ +/// +/// Story by HTML5 UP +/// html5up.net | @ajlkn +/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +/// + +/* Index */ + + .index { + > * { + @include padding(3rem, 0); + @include vendor('display', 'flex'); + border-top: solid 1px; + + > header { + @include vendor('flex-grow', '0'); + @include vendor('flex-shrink', '0'); + width: 15rem; + } + + > .content { + @include vendor('flex-grow', '1'); + @include vendor('flex-shrink', '1'); + } + } + + > :first-child { + border-top: 0; + } + + @include breakpoint('<=medium') { + > * { + > header { + width: 11rem; + } + } + } + + @include breakpoint('<=small') { + > * { + > header { + width: 10rem; + } + } + } + + @include breakpoint('<=xsmall') { + > * { + @include vendor('flex-direction', 'column'); + + > header { + width: 100%; + } + } + } + } + + @mixin color-index($p: null) { + .index { + > * { + border-top-color: _palette($p, border); + } + } + } + + @include color-index; \ No newline at end of file diff --git a/_sass/components/_items.scss b/_sass/components/_items.scss new file mode 100644 index 0000000..3ca35c5 --- /dev/null +++ b/_sass/components/_items.scss @@ -0,0 +1,338 @@ +/// +/// Story by HTML5 UP +/// html5up.net | @ajlkn +/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +/// + +/* Items (transitions) */ + + .items { + + // Mixin. + @mixin transition-items($event) { + $x: null; + $y: null; + + @if ($event == 'load') { + $x: 'body.is-preload &'; + $y: _duration(on-load); + } + @else if ($event == 'scroll') { + $x: '&.is-inactive'; + $y: _duration(on-scroll); + } + + &.on#{$event}-fade-in { + > * { + > .inner { + @include vendor('transition', 'opacity #{$y} ease-in-out'); + @include vendor('transition-delay', '#{_misc(items-limit) * _duration(items-delay)}'); + } + + @for $i from 0 through _misc(items-limit) { + &:nth-child(#{$i + 1}) { + > .inner { + @include vendor('transition-delay', '#{$i * _duration(items-delay)}'); + } + } + } + } + + #{$x} { + > * { + > .inner { + opacity: 0; + } + } + } + } + } + + // On Load. + @include transition-items('load'); + + // On Scroll. + @include transition-items('scroll'); + + } + +/* Items (style1) */ + + @mixin items-style1-size($name, $size, $padding) { + &.#{$name} { + > * { + @include padding($padding, $padding); + width: #{100% / $size}; + + &:nth-child(-n + #{$size}) { + border-top-width: 0; + } + + &:nth-child(#{$size}n + 1) { + border-left-width: 0; + } + } + } + } + + @mixin items-style1-size-reset($name, $size) { + &.#{$name} { + > * { + &:nth-child(-n + #{$size}) { + border-top-width: _size(border-width); + } + + &:nth-child(#{$size}n + 1) { + border-left-width: _size(border-width); + } + } + } + } + + .items.style1 { + @include vendor('display', 'flex'); + @include vendor('flex-wrap', 'wrap'); + @include vendor('justify-content', 'center'); + margin: (_size(element-margin) * 1.5) 0; + position: relative; + + > * { + @include vendor('flex-grow', '0'); + @include vendor('flex-shrink', '0'); + border-style: solid; + border-left-width: _size(border-width); + border-top-width: _size(border-width); + } + + // Modifiers. + + // Size. + @include items-style1-size(big, 2, _size(gutter)); + @include items-style1-size(medium, 3, _size(gutter) * 0.625); + @include items-style1-size(small, 4, _size(gutter) * 0.375); + + @include breakpoint('<=large') { + @include items-style1-size-reset(small, 4); + @include items-style1-size(small, 3, _size(gutter) * 0.625); + } + + @include breakpoint('<=medium') { + @include items-style1-size-reset(medium, 3); + @include items-style1-size(medium, 2, _size(gutter)); + + @include items-style1-size-reset(small, 3); + @include items-style1-size(small, 2, _size(gutter)); + } + + @include breakpoint('<=xsmall') { + @include items-style1-size-reset(big, 2); + @include items-style1-size(big, 1, _size(gutter) * 0.75); + + @include items-style1-size-reset(medium, 2); + @include items-style1-size(medium, 1, _size(gutter) * 0.75); + + @include items-style1-size-reset(small, 2); + @include items-style1-size(small, 1, _size(gutter) * 0.75); + + &.big, + &.medium, + &.small { + > * { + padding-left: 0; + padding-right: 0; + } + + > :first-child { + padding-top: 0; + } + + > :last-child { + padding-bottom: 0; + + > .inner { + > :last-child { + margin-bottom: 0; + } + } + } + } + } + + } + +/* Items (style2) */ + + @mixin items-style2-size($name, $size, $padding) { + &.#{$name} { + > * { + @include padding($padding, $padding); + width: #{100% / $size}; + + &:nth-child(-n + #{$size}) { + border-top-width: 0; + } + + &:nth-child(#{$size}n + 1) { + border-left-width: 0; + } + } + } + } + + @mixin items-style2-size-reset($name, $size) { + &.#{$name} { + > * { + &:nth-child(-n + #{$size}) { + border-top-width: _size(border-width); + } + + &:nth-child(#{$size}n + 1) { + border-left-width: _size(border-width); + } + } + } + } + + .items.style2 { + @include vendor('display', 'flex'); + @include vendor('flex-wrap', 'wrap'); + @include vendor('justify-content', 'center'); + margin: (_size(element-margin) * 1.5) 0; + position: relative; + border: solid _size(border-width); + border-radius: _size(border-radius); + + > * { + @include vendor('flex-grow', '0'); + @include vendor('flex-shrink', '0'); + border-style: solid; + border-left-width: _size(border-width); + border-top-width: _size(border-width); + } + + // Modifiers. + + // Size. + @include items-style2-size(big, 2, _size(gutter)); + @include items-style2-size(medium, 3, _size(gutter) * 0.625); + @include items-style2-size(small, 4, _size(gutter) * 0.375); + + @include breakpoint('<=large') { + @include items-style2-size-reset(small, 4); + @include items-style2-size(small, 3, _size(gutter) * 0.625); + } + + @include breakpoint('<=medium') { + @include items-style2-size-reset(medium, 3); + @include items-style2-size(medium, 2, _size(gutter)); + + @include items-style2-size-reset(small, 3); + @include items-style2-size(small, 2, _size(gutter)); + } + + @include breakpoint('<=xsmall') { + @include items-style2-size-reset(big, 2); + @include items-style2-size(big, 1, _size(gutter) * 0.75); + + @include items-style2-size-reset(medium, 2); + @include items-style2-size(medium, 1, _size(gutter) * 0.75); + + @include items-style2-size-reset(small, 2); + @include items-style2-size(small, 1, _size(gutter) * 0.75); + } + + } + +/* Items (style3) */ + + @mixin items-style3-size($name, $size, $padding) { + &.#{$name} { + > * { + @include padding($padding, $padding); + width: #{100% / $size}; + } + } + } + + .items.style3 { + @include vendor('display', 'flex'); + @include vendor('flex-wrap', 'wrap'); + @include vendor('justify-content', 'center'); + margin: (_size(element-margin) * 1.5) 0; + position: relative; + + > * { + @include vendor('flex-grow', '0'); + @include vendor('flex-shrink', '0'); + } + + // Modifiers. + + // Size. + @include items-style3-size(big, 2, _size(gutter) * 0.5); + @include items-style3-size(medium, 3, _size(gutter) * 0.5 * 0.625); + @include items-style3-size(small, 4, _size(gutter) * 0.5 * 0.375); + + @include breakpoint('<=large') { + @include items-style3-size(small, 3, _size(gutter) * 0.5 * 0.625); + } + + @include breakpoint('<=medium') { + @include items-style3-size(medium, 2, _size(gutter) * 0.5); + @include items-style3-size(small, 2, _size(gutter) * 0.5); + } + + @include breakpoint('<=small') { + margin: _size(element-margin) 0; + } + + @include breakpoint('<=xsmall') { + @include items-style3-size(big, 1, _size(gutter) * 0.5 * 0.75); + @include items-style3-size(medium, 1, _size(gutter) * 0.5 * 0.75); + @include items-style3-size(small, 1, _size(gutter) * 0.5 * 0.75); + + &.big, + &.medium, + &.small { + > * { + padding-left: 0; + padding-right: 0; + } + + > :first-child { + padding-top: 0; + } + + > :last-child { + padding-bottom: 0; + + > .inner { + > :last-child { + margin-bottom: 0; + } + } + } + } + } + + } + +// Mixin + + @mixin color-items($p: null) { + .items.style1 { + > * { + border-color: _palette($p, #fff); + } + } + + .items.style2 { + border-color: _palette($p, border); + + > * { + border-color: _palette($p, border); + } + } + } + + @include color-items; \ No newline at end of file diff --git a/_sass/components/_list.scss b/_sass/components/_list.scss new file mode 100644 index 0000000..1c527af --- /dev/null +++ b/_sass/components/_list.scss @@ -0,0 +1,86 @@ +/// +/// Story by HTML5 UP +/// html5up.net | @ajlkn +/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +/// + +/* List */ + + ol { + list-style: decimal; + margin: 0 0 _size(element-margin) 0; + padding-left: 1.25rem; + + li { + padding-left: 0.25rem; + } + } + + ul { + list-style: disc; + margin: 0 0 _size(element-margin) 0; + padding-left: 1rem; + + li { + padding-left: 0.5rem; + } + + &.alt { + list-style: none; + padding-left: 0; + + li { + border-top: solid _size(border-width); + padding: 0.5rem 0; + + &:first-child { + border-top: 0; + padding-top: 0; + } + } + } + } + + dl { + margin: 0 0 _size(element-margin) 0; + + dt { + display: block; + font-weight: _font(weight-bold); + margin: 0 0 (_size(element-margin) * 0.5) 0; + } + + dd { + margin-left: _size(element-margin); + } + + &.style2 { + dt { + width: 25%; + float: left; + } + + dd { + width: 70%; + float: left; + } + + &:after { + content: ''; + display: block; + clear: both; + } + } + } + + @mixin color-list($p: null) { + ul { + &.alt { + li { + border-top-color: _palette($p, border); + } + } + } + } + + @include color-list; \ No newline at end of file diff --git a/_sass/components/_row.scss b/_sass/components/_row.scss new file mode 100644 index 0000000..11ed3d2 --- /dev/null +++ b/_sass/components/_row.scss @@ -0,0 +1,35 @@ +/// +/// Story by HTML5 UP +/// html5up.net | @ajlkn +/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +/// + +/* Row */ + + .row { + @include html-grid(2rem); + + @include breakpoint('<=xlarge') { + @include html-grid(2rem, 'xlarge'); + } + + @include breakpoint('<=large') { + @include html-grid(2rem, 'large'); + } + + @include breakpoint('<=medium') { + @include html-grid(2rem, 'medium'); + } + + @include breakpoint('<=small') { + @include html-grid(2rem, 'small'); + } + + @include breakpoint('<=xsmall') { + @include html-grid(2rem, 'xsmall'); + } + + @include breakpoint('<=xxsmall') { + @include html-grid(2rem, 'xxsmall'); + } + } \ No newline at end of file diff --git a/_sass/components/_section.scss b/_sass/components/_section.scss new file mode 100644 index 0000000..6467123 --- /dev/null +++ b/_sass/components/_section.scss @@ -0,0 +1,49 @@ +/// +/// Story by HTML5 UP +/// html5up.net | @ajlkn +/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +/// + +/* Section/Article */ + + section, article { + &.special { + text-align: center; + } + } + + header { + p { + position: relative; + margin: (_size(element-margin) * -0.325) 0 (_size(element-margin) * 0.75) 0; + font-style: italic; + } + + h1 + p { + font-size: 1.375rem; + } + + h2 + p { + font-size: 1.25rem; + } + + h3 + p { + font-size: 1.1rem; + } + + h4 + p, + h5 + p, + h6 + p { + font-size: 0.9rem; + } + } + + @mixin color-section($p: null) { + header { + p { + color: _palette($p, fg-light); + } + } + } + + @include color-section; \ No newline at end of file diff --git a/_sass/components/_spotlight.scss b/_sass/components/_spotlight.scss new file mode 100644 index 0000000..9113958 --- /dev/null +++ b/_sass/components/_spotlight.scss @@ -0,0 +1,1012 @@ +/// +/// Story by HTML5 UP +/// html5up.net | @ajlkn +/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +/// + +/* Spotlight (transitions) */ + + .spotlight { + + // Mixin. + @mixin transition-spotlight($event) { + $x: null; + $y: null; + + @if ($event == 'load') { + $x: 'body.is-preload &'; + $y: _duration(on-load); + } + @else if ($event == 'scroll') { + $x: '&.is-inactive'; + $y: _duration(on-scroll); + } + + // Content. + &.on#{$event}-content-fade-up { + .content { + @include vendor('transition', ( + 'opacity #{$y} ease-in-out', + 'transform #{$y} ease-in-out' + )); + } + + #{$x} { + .content { + @include vendor('transform', 'translateY(1rem)'); + opacity: 0; + } + } + } + + &.on#{$event}-content-fade-down { + .content { + @include vendor('transition', ( + 'opacity #{$y} ease-in-out', + 'transform #{$y} ease-in-out' + )); + } + + #{$x} { + .content { + @include vendor('transform', 'translateY(-1rem)'); + opacity: 0; + } + } + } + + &.on#{$event}-content-fade-left { + .content { + @include vendor('transition', ( + 'opacity #{$y} ease-in-out', + 'transform #{$y} ease-in-out' + )); + } + + #{$x} { + .content { + @include vendor('transform', 'translateX(1rem)'); + opacity: 0; + } + } + } + + &.on#{$event}-content-fade-right { + .content { + @include vendor('transition', ( + 'opacity #{$y} ease-in-out', + 'transform #{$y} ease-in-out' + )); + } + + #{$x} { + .content { + @include vendor('transform', 'translateX(-1rem)'); + opacity: 0; + } + } + } + + &.on#{$event}-content-fade-in { + .content { + @include vendor('transition', 'opacity #{$y} ease-in-out'); + } + + #{$x} { + .content { + opacity: 0; + } + } + } + + // Image. + &.on#{$event}-image-fade-up { + .image { + @include vendor('transition', ( + 'opacity #{$y} ease-in-out', + 'transform #{$y} ease-in-out' + )); + + img { + @include vendor('transition', 'opacity #{$y} ease-in-out'); + @include vendor('transition-delay', '#{$y * 0.75}'); + } + } + + #{$x} { + .image { + @include vendor('transform', 'translateY(1rem)'); + opacity: 0; + + img { + opacity: 0; + } + } + } + } + + &.on#{$event}-image-fade-down { + .image { + @include vendor('transition', ( + 'opacity #{$y} ease-in-out', + 'transform #{$y} ease-in-out' + )); + + img { + @include vendor('transition', 'opacity #{$y} ease-in-out'); + @include vendor('transition-delay', '#{$y * 0.75}'); + } + } + + #{$x} { + .image { + @include vendor('transform', 'translateY(-1rem)'); + opacity: 0; + + img { + opacity: 0; + } + } + } + } + + &.on#{$event}-image-fade-left { + .image { + @include vendor('transition', ( + 'opacity #{$y} ease-in-out', + 'transform #{$y} ease-in-out' + )); + + img { + @include vendor('transition', 'opacity #{$y} ease-in-out'); + @include vendor('transition-delay', '#{$y * 0.75}'); + } + } + + #{$x} { + .image { + @include vendor('transform', 'translateX(1rem)'); + opacity: 0; + + img { + opacity: 0; + } + } + } + } + + &.on#{$event}-image-fade-right { + .image { + @include vendor('transition', ( + 'opacity #{$y} ease-in-out', + 'transform #{$y} ease-in-out' + )); + + img { + @include vendor('transition', 'opacity #{$y} ease-in-out'); + @include vendor('transition-delay', '#{$y * 0.75}'); + } + } + + #{$x} { + .image { + @include vendor('transform', 'translateX(-1rem)'); + opacity: 0; + + img { + opacity: 0; + } + } + } + } + + &.on#{$event}-image-fade-in { + .image { + img { + @include vendor('transition', 'opacity #{$y} ease-in-out'); + } + } + + #{$x} { + .image { + img { + opacity: 0; + } + } + } + } + + } + + // On Load. + @include transition-spotlight('load'); + + // On Scroll. + @include transition-spotlight('scroll'); + + } + +/* Spotlight (style1) */ + + .spotlight.style1 { + @include vendor('align-items', 'stretch'); + @include vendor('display', 'flex'); + @include vendor('flex-direction', 'row'); + @include vendor('justify-content', 'flex-end'); + position: relative; + overflow-x: hidden; + text-align: left; + + .content { + @include padding(_size(padding, default), _size(padding, default)); + @include vendor('align-self', 'center'); + @include vendor('flex-grow', '1'); + @include vendor('flex-shrink', '1'); + width: 65%; + max-width: _size(inner); + margin: 0 auto; + } + + .image { + @include vendor('flex-grow', '0'); + @include vendor('flex-shrink', '0'); + width: 35%; + min-width: 25rem; + border-radius: 0; + + img { + @include vendor('object-fit', 'cover'); + @include vendor('object-position', 'center'); + display: block; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + border-radius: 0; + } + } + + @include breakpoint('<=xlarge') { + .content { + @include padding(_size(padding, xlarge), _size(padding, xlarge)); + } + } + + @include breakpoint('<=large') { + .content { + @include padding(_size(padding, large), _size(padding, large)); + } + } + + @include breakpoint('<=medium') { + .content { + @include padding(_size(padding, medium) * 1.25, _size(padding, medium)); + width: 50%; + min-width: 0; + } + + .image { + width: 50%; + min-width: 0; + } + } + + @include breakpoint('<=small') { + .content { + @include padding(_size(padding, small) * 1.25, _size(padding, small)); + } + + @include orientation(portrait) { + @include vendor('flex-direction', 'column-reverse'); + text-align: center !important; + + .content { + width: 100%; + } + + .image { + width: 100%; + + img { + position: relative; + } + } + } + } + + // Modifiers. + + // Orientation. + &.orient-left { + // ... + } + + &.orient-right { + @include vendor('flex-direction', 'row-reverse'); + + @include breakpoint('<=small') { + @include orientation(portrait) { + @include vendor('flex-direction', 'column-reverse'); + } + } + } + + // Content Alignment. + &.content-align-left { + // ... + } + + &.content-align-center { + text-align: center; + } + + &.content-align-right { + text-align: right; + } + + // Image Position. + &.image-position-left { + .image { + img { + @include vendor('object-position', 'left'); + } + } + } + + &.image-position-center { + // ... + } + + &.image-position-right { + .image { + img { + @include vendor('object-position', 'right'); + } + } + } + + } + +/* Spotlight (style2) */ + + .spotlight.style2 { + $image-size: 21rem; + $content-size: (_size(inner) * 0.75) - (_size(element-margin) * 1.75); + + @include padding(_size(padding, default), _size(padding, default)); + @include vendor('align-items', 'center'); + @include vendor('display', 'flex'); + @include vendor('flex-direction', 'row-reverse'); + @include vendor('justify-content', 'center'); + position: relative; + overflow-x: hidden; + text-align: left; + + .content { + width: $content-size; + max-width: 100%; + } + + .image { + @include vendor('flex-grow', '0'); + @include vendor('flex-shrink', '0'); + width: $image-size; + height: $image-size; + border-radius: 100%; + margin: 0 (_size(element-margin) * 1.75) _size(element-margin) 0; + + img { + @include vendor('object-fit', 'cover'); + @include vendor('object-position', 'center'); + display: block; + width: 100%; + height: 100%; + border-radius: 100%; + } + } + + @include breakpoint('<=xlarge') { + @include padding(_size(padding, xlarge), _size(padding, xlarge)); + } + + @include breakpoint('<=large') { + @include padding(_size(padding, large), _size(padding, large)); + } + + @include breakpoint('<=medium') { + @include padding(_size(padding, medium) * 1.25, _size(padding, medium)); + + .image { + width: ($image-size * 0.875); + height: ($image-size * 0.875); + } + } + + @include breakpoint('<=small') { + @include padding(_size(padding, small) * 1.25, _size(padding, small)); + @include vendor('align-items', 'flex-start'); + + .image { + width: ($image-size * 0.75); + height: ($image-size * 0.75); + margin: 0 (_size(element-margin) * 1) _size(element-margin) 0; + } + } + + @include orientation(portrait) { + @include vendor('align-items', 'center'); + @include vendor('flex-direction', 'column-reverse'); + text-align: center !important; + + .content { + width: 34rem; + max-width: 100%; + } + + .image { + margin-right: 0; + } + } + + // Modifiers. + + // Orientation. + &.orient-left { + @include vendor('flex-direction', 'row'); + + .image { + margin: 0 0 _size(element-margin) (_size(element-margin) * 1.75); + } + + @include breakpoint('<=small') { + .image { + margin: 0 0 _size(element-margin) (_size(element-margin) * 1); + } + } + + @include orientation(portrait) { + @include vendor('flex-direction', 'column-reverse'); + + .image { + margin-left: 0; + } + } + } + + &.orient-right { + // ... + } + + // Content Alignment. + &.content-align-left { + // ... + } + + &.content-align-center { + text-align: center; + } + + &.content-align-right { + text-align: right; + } + + // Image Position. + &.image-position-left { + .image { + img { + @include vendor('object-position', 'left'); + } + } + } + + &.image-position-center { + // ... + } + + &.image-position-right { + .image { + img { + @include vendor('object-position', 'right'); + } + } + } + + } + +/* Spotlight (style3) */ + + .spotlight.style3 { + $image-width: 13rem; + $content-size: (_size(inner) * 0.75) - (_size(element-margin) * 1.75); + + @include padding(_size(padding, default), _size(padding, default)); + @include vendor('align-items', 'center'); + @include vendor('display', 'flex'); + @include vendor('flex-direction', 'row-reverse'); + @include vendor('justify-content', 'center'); + position: relative; + overflow-x: hidden; + text-align: left; + + .content { + width: $content-size; + max-width: 100%; + } + + .image { + @include phone($image-width); + margin-right: (_size(element-margin) * 1.75); + } + + @include breakpoint('<=xlarge') { + @include padding(_size(padding, xlarge), _size(padding, xlarge)); + } + + @include breakpoint('<=large') { + @include padding(_size(padding, large), _size(padding, large)); + } + + @include breakpoint('<=medium') { + @include padding(_size(padding, medium) * 1.25, _size(padding, medium)); + + .image { + @include resize-phone($image-width, 0.875); + } + } + + @include breakpoint('<=small') { + @include padding(_size(padding, small) * 1.25, _size(padding, small)); + @include vendor('align-items', 'flex-start'); + + .image { + @include resize-phone($image-width, 0.625); + } + } + + @include orientation(portrait) { + @include vendor('align-items', 'center'); + @include vendor('flex-direction', 'column-reverse'); + text-align: center !important; + + .content { + width: 34rem; + max-width: 100%; + } + + .image { + margin-right: 0; + margin-left: 0; + } + } + + // Modifiers. + + // Variant. + &.iphone { + // ... + } + + &.android { + // ... + } + + // Orientation. + &.orient-left { + @include vendor('flex-direction', 'row'); + + .image { + margin-right: 0; + margin-left: (_size(element-margin) * 1.75); + } + + @include orientation(portrait) { + @include vendor('flex-direction', 'column-reverse'); + + .image { + margin-right: 0; + margin-left: 0; + } + } + } + + &.orient-right { + // ... + } + + // Content Alignment. + &.content-align-left { + // ... + } + + &.content-align-center { + text-align: center; + } + + &.content-align-right { + text-align: right; + } + + // Image Position. + &.image-position-left { + .image { + img { + @include vendor('object-position', 'left'); + } + } + } + + &.image-position-center { + // ... + } + + &.image-position-right { + .image { + img { + @include vendor('object-position', 'right'); + } + } + } + + } + +/* Spotlight (style4) */ + + .spotlight.style4 { + @include padding(_size(padding, default), _size(padding, default) * 0.75); + @include vendor('align-items', 'center'); + @include vendor('display', 'flex'); + @include vendor('justify-content', 'center'); + background-color: inherit; + position: relative; + overflow-x: hidden; + text-align: center; + + .content { + @include padding(_size(padding, default) * 0.5, _size(padding, default) * 0.5); + position: relative; + width: (_size(inner) * 0.625); + max-width: 50%; + background-color: inherit; + border-radius: _size(border-radius-alt); + margin-bottom: _size(element-margin); + z-index: 1; + } + + .image { + @include vendor('flex-grow', '0'); + @include vendor('flex-shrink', '0'); + position: absolute; + width: 100%; + height: 100%; + top: 0; + left: 0; + border-radius: 0; + + img { + @include vendor('object-fit', 'cover'); + @include vendor('object-position', 'center'); + display: block; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + border-radius: 0; + } + } + + @include breakpoint('<=xlarge') { + @include padding(_size(padding, xlarge), _size(padding, xlarge) * 0.75); + + .content { + @include padding(_size(padding, xlarge) * 0.5, _size(padding, xlarge) * 0.5); + } + } + + @include breakpoint('<=large') { + @include padding(_size(padding, large), _size(padding, large) * 0.75); + + .content { + @include padding(_size(padding, large) * 0.75, _size(padding, large) * 0.75); + } + } + + @include breakpoint('<=medium') { + @include padding(_size(padding, medium), _size(padding, medium) * 0.75); + + .content { + @include padding(_size(padding, medium) * 0.75, _size(padding, medium) * 0.75); + } + } + + @include breakpoint('<=small') { + @include padding(_size(padding, small), _size(padding, small) * 0.75); + + .content { + @include padding(_size(padding, small) * 0.75, _size(padding, small) * 0.75); + } + } + + @include breakpoint('<=xsmall') { + .content { + max-width: 80%; + } + } + + // Modifiers. + + // Size. + &.fullscreen { + min-height: 100vh; + } + + &.halfscreen { + min-height: 50vh; + } + + // Orientation. + &.orient-left { + @include vendor('justify-content', 'flex-start'); + padding-left: 0; + + .content { + border-top-left-radius: 0; + border-bottom-left-radius: 0; + } + } + + &.orient-center { + // ... + } + + &.orient-right { + @include vendor('justify-content', 'flex-end'); + padding-right: 0; + + .content { + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } + } + + // Content Alignment. + &.content-align-left { + text-align: left; + } + + &.content-align-center { + // ... + } + + &.content-align-right { + text-align: right; + } + + // Image Position. + &.image-position-left { + .image { + img { + @include vendor('object-position', 'left'); + } + } + } + + &.image-position-center { + // ... + } + + &.image-position-right { + .image { + img { + @include vendor('object-position', 'right'); + } + } + } + + } + +/* Spotlight (style5) */ + + .spotlight.style5 { + @include padding(_size(padding, default), _size(padding, default) * 0.75); + @include vendor('align-items', 'center'); + @include vendor('display', 'flex'); + @include vendor('justify-content', 'center'); + background-color: inherit; + position: relative; + overflow-x: hidden; + text-align: center; + + .content { + @include padding(_size(padding, default) * 0.5, _size(padding, default) * 0.5); + position: relative; + width: (_size(inner) * 0.625); + max-width: 52.5%; + background-color: inherit; + border-radius: _size(border-radius-alt); + margin-bottom: _size(element-margin); + z-index: 1; + } + + .image { + @include vendor('flex-grow', '0'); + @include vendor('flex-shrink', '0'); + position: absolute; + width: 100%; + height: 100%; + top: 0; + left: 0; + border-radius: 0; + + img { + @include vendor('object-fit', 'cover'); + @include vendor('object-position', 'center'); + display: block; + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + border-radius: 0; + } + } + + @include breakpoint('<=xlarge') { + @include padding(_size(padding, xlarge), _size(padding, xlarge) * 0.75); + + .content { + @include padding(_size(padding, xlarge) * 0.5, _size(padding, xlarge) * 0.5); + } + } + + @include breakpoint('<=large') { + @include padding(_size(padding, large), _size(padding, large) * 0.75); + + .content { + @include padding(_size(padding, large) * 0.75, _size(padding, large) * 0.75); + } + } + + @include breakpoint('<=medium') { + @include padding(_size(padding, medium), _size(padding, medium) * 0.75); + + .content { + @include padding(_size(padding, medium) * 0.75, _size(padding, medium) * 0.75); + } + } + + @include breakpoint('<=small') { + @include padding(_size(padding, small), _size(padding, small) * 0.75); + + .content { + @include padding(_size(padding, small) * 0.75, _size(padding, small) * 0.75); + } + } + + @include breakpoint('<=xsmall') { + .content { + max-width: 80%; + } + } + + // Modifiers. + + // Size. + &.fullscreen { + min-height: 100vh; + } + + &.halfscreen { + min-height: 50vh; + } + + // Orientation. + &.orient-left { + @include vendor('justify-content', 'flex-start'); + } + + &.orient-center { + // ... + } + + &.orient-right { + @include vendor('justify-content', 'flex-end'); + } + + // Content Alignment. + &.content-align-left { + text-align: left; + } + + &.content-align-center { + // ... + } + + &.content-align-right { + text-align: right; + } + + // Image Position. + &.image-position-left { + .image { + img { + @include vendor('object-position', 'left'); + } + } + } + + &.image-position-center { + // ... + } + + &.image-position-right { + .image { + img { + @include vendor('object-position', 'right'); + } + } + } + + } + +// Mixin + + @mixin color-spotlight($p: null) { + .spotlight { + .image { + background-color: transparentize(_palette($p, fg-bold), 0.875); + } + + @if ($p != 'invert') { + &.invert { + .image { + background-color: transparentize(_palette(invert, fg-bold), 0.875); + } + } + } + } + + .spotlight.style3 { + .image { + @include color-phone($p); + } + + // Variant. + &.iphone { + .image { + @include color-phone-variant('iphone', $p); + } + } + + &.android { + .image { + @include color-phone-variant('android', $p); + } + } + + @if ($p != 'invert') { + &.invert { + .image { + @include color-phone(invert); + } + + // Variant. + &.iphone { + .image { + @include color-phone-variant('iphone', invert); + } + } + + &.android { + .image { + @include color-phone-variant('android', invert); + } + } + + } + } + } + } + + @include color-spotlight; \ No newline at end of file diff --git a/_sass/components/_table.scss b/_sass/components/_table.scss new file mode 100644 index 0000000..d09c0ce --- /dev/null +++ b/_sass/components/_table.scss @@ -0,0 +1,137 @@ +/// +/// Story by HTML5 UP +/// html5up.net | @ajlkn +/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +/// + +/* Table */ + + .table-wrapper { + -webkit-overflow-scrolling: touch; + margin: 0 0 _size(element-margin) 0; + overflow-x: auto; + + > table { + margin-bottom: 0; + } + } + + table { + margin: 0 0 _size(element-margin) 0; + width: 100%; + + tbody { + tr { + border: solid _size(border-width); + border-left: 0; + border-right: 0; + } + } + + td { + padding: 0.75rem 0.75rem; + } + + th { + font-size: 0.9rem; + font-weight: _font(weight-bold); + padding: 0 0.75rem 0.75rem 0.75rem; + text-align: left; + } + + thead { + border-bottom: solid (_size(border-width) * 2); + } + + tfoot { + border-top: solid (_size(border-width) * 2); + } + + &.alt { + border-collapse: separate; + + tbody { + tr { + td { + border: solid _size(border-width); + border-left-width: 0; + border-top-width: 0; + + &:first-child { + border-left-width: _size(border-width); + } + } + + &:first-child { + td { + border-top-width: _size(border-width); + } + } + } + } + + thead { + border-bottom: 0; + } + + tfoot { + border-top: 0; + } + } + + &.fixed { + table-layout: fixed; + } + } + + @mixin color-table($p: null) { + table { + tbody { + tr { + border-color: _palette($p, border); + + &:nth-child(2n + 1) { + background-color: _palette($p, border-bg); + } + + &.alt { + background-color: _palette($p, border-bg) !important; + } + } + } + + th { + color: _palette($p, fg-bold); + } + + thead { + border-bottom-color: _palette($p, border); + } + + tfoot { + border-top-color: _palette($p, border); + } + + &.alt { + tbody { + tr { + td { + border-color: _palette($p, border); + } + } + } + } + + &.uniform { + tbody { + tr { + &:nth-child(2n + 1) { + background-color: transparent; + } + } + } + } + } + } + + @include color-table; \ No newline at end of file diff --git a/_sass/components/_wrapper.scss b/_sass/components/_wrapper.scss new file mode 100644 index 0000000..83bc871 --- /dev/null +++ b/_sass/components/_wrapper.scss @@ -0,0 +1,120 @@ +/// +/// Story by HTML5 UP +/// html5up.net | @ajlkn +/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +/// + +/* Wrapper (style1) */ + + .wrapper.style1 { + > .inner { + @include padding(_size(padding, default), _size(padding, default) * 0.5); + margin: 0 auto; + max-width: 100%; + width: _size(inner); + + &.medium { + width: _size(inner) * 0.75; + } + + &.small { + width: _size(inner) * 0.5; + } + } + + @include breakpoint('<=xlarge') { + > .inner { + @include padding(_size(padding, xlarge), _size(padding, xlarge) * 0.5); + } + } + + @include breakpoint('<=large') { + > .inner { + @include padding(_size(padding, large), _size(padding, large)); + } + } + + @include breakpoint('<=medium') { + > .inner { + @include padding(_size(padding, medium) * 1.5, _size(padding, medium)); + } + } + + @include breakpoint('<=small') { + > .inner { + @include padding(_size(padding, small) * 1.5, _size(padding, small)); + } + } + } + +/* Wrapper (style2) */ + + .wrapper.style2 { + padding: _size(padding, default); + background-color: _palette(bg-alt); + + > .inner { + @include padding(_size(padding, default) * 0.75, _size(padding, default) * 0.5); + background-color: _palette(bg); + border-radius: _size(border-radius-alt); + margin: 0 auto; + max-width: 100%; + position: relative; + width: _size(inner); + z-index: 1; + + &.medium { + width: _size(inner) * 0.75; + } + + &.small { + width: _size(inner) * 0.5; + } + } + + @include breakpoint('<=xlarge') { + padding: _size(padding, xlarge); + + > .inner { + @include padding(_size(padding, xlarge) * 0.75, _size(padding, xlarge) * 0.5); + } + } + + @include breakpoint('<=large') { + padding: _size(padding, large); + + > .inner { + @include padding(_size(padding, large) * 0.75, _size(padding, large) * 0.5); + } + } + + @include breakpoint('<=medium') { + padding: _size(padding, medium) * 0.75; + + > .inner { + @include padding(_size(padding, medium), _size(padding, medium) * 0.75); + } + } + + @include breakpoint('<=small') { + padding: _size(padding, small) * 0.75; + + > .inner { + @include padding(_size(padding, small), _size(padding, small) * 0.75); + } + } + } + + #wrapper { + > .wrapper.style2 { + &.invert { + &:not(.color1):not(.color2):not(.color3):not(.color4):not(.color5):not(.color6):not(.color7) { + background-color: _palette(invert, bg-alt); + } + + > .inner { + background-color: _palette(invert, bg); + } + } + } + } \ No newline at end of file diff --git a/_sass/layout/_wrapper.scss b/_sass/layout/_wrapper.scss new file mode 100644 index 0000000..babcb83 --- /dev/null +++ b/_sass/layout/_wrapper.scss @@ -0,0 +1,49 @@ +/// +/// Story by HTML5 UP +/// html5up.net | @ajlkn +/// Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +/// + +/* Wrapper */ + + @mixin wrapper-color($n) { + > .color#{$n} { + background-color: _palette(color#{$n}); + } + } + + #wrapper { + background-color: inherit; + width: 100%; + overflow-x: hidden; + + > .invert { + @include color(invert); + } + + @include wrapper-color(1); + @include wrapper-color(2); + @include wrapper-color(3); + @include wrapper-color(4); + @include wrapper-color(5); + @include wrapper-color(6); + @include wrapper-color(7); + + &.divided { + > * { + box-shadow: inset 0 10px 10px 0 _palette(border-alt); + + &:first-child { + box-shadow: none !important; + } + } + + > .invert { + box-shadow: inset 0 1px 0 0 _palette(invert, border-alt); + + &:first-child { + box-shadow: none !important; + } + } + } + } \ No newline at end of file diff --git a/_sass/libs/_breakpoints.scss b/_sass/libs/_breakpoints.scss new file mode 100644 index 0000000..c5301d8 --- /dev/null +++ b/_sass/libs/_breakpoints.scss @@ -0,0 +1,223 @@ +// breakpoints.scss v1.0 | @ajlkn | MIT licensed */ + +// Vars. + + /// Breakpoints. + /// @var {list} + $breakpoints: () !global; + +// Mixins. + + /// Sets breakpoints. + /// @param {map} $x Breakpoints. + @mixin breakpoints($x: ()) { + $breakpoints: $x !global; + } + + /// Wraps @content in a @media block targeting a specific orientation. + /// @param {string} $orientation Orientation. + @mixin orientation($orientation) { + @media screen and (orientation: #{$orientation}) { + @content; + } + } + + /// Wraps @content in a @media block using a given query. + /// @param {string} $query Query. + @mixin breakpoint($query: null) { + + $breakpoint: null; + $op: null; + $media: null; + + // Determine operator, breakpoint. + + // Greater than or equal. + @if (str-slice($query, 0, 2) == '>=') { + + $op: 'gte'; + $breakpoint: str-slice($query, 3); + + } + + // Less than or equal. + @elseif (str-slice($query, 0, 2) == '<=') { + + $op: 'lte'; + $breakpoint: str-slice($query, 3); + + } + + // Greater than. + @elseif (str-slice($query, 0, 1) == '>') { + + $op: 'gt'; + $breakpoint: str-slice($query, 2); + + } + + // Less than. + @elseif (str-slice($query, 0, 1) == '<') { + + $op: 'lt'; + $breakpoint: str-slice($query, 2); + + } + + // Not. + @elseif (str-slice($query, 0, 1) == '!') { + + $op: 'not'; + $breakpoint: str-slice($query, 2); + + } + + // Equal. + @else { + + $op: 'eq'; + $breakpoint: $query; + + } + + // Build media. + @if ($breakpoint and map-has-key($breakpoints, $breakpoint)) { + + $a: map-get($breakpoints, $breakpoint); + + // Range. + @if (type-of($a) == 'list') { + + $x: nth($a, 1); + $y: nth($a, 2); + + // Max only. + @if ($x == null) { + + // Greater than or equal (>= 0 / anything) + @if ($op == 'gte') { + $media: 'screen'; + } + + // Less than or equal (<= y) + @elseif ($op == 'lte') { + $media: 'screen and (max-width: ' + $y + ')'; + } + + // Greater than (> y) + @elseif ($op == 'gt') { + $media: 'screen and (min-width: ' + ($y + 1) + ')'; + } + + // Less than (< 0 / invalid) + @elseif ($op == 'lt') { + $media: 'screen and (max-width: -1px)'; + } + + // Not (> y) + @elseif ($op == 'not') { + $media: 'screen and (min-width: ' + ($y + 1) + ')'; + } + + // Equal (<= y) + @else { + $media: 'screen and (max-width: ' + $y + ')'; + } + + } + + // Min only. + @else if ($y == null) { + + // Greater than or equal (>= x) + @if ($op == 'gte') { + $media: 'screen and (min-width: ' + $x + ')'; + } + + // Less than or equal (<= inf / anything) + @elseif ($op == 'lte') { + $media: 'screen'; + } + + // Greater than (> inf / invalid) + @elseif ($op == 'gt') { + $media: 'screen and (max-width: -1px)'; + } + + // Less than (< x) + @elseif ($op == 'lt') { + $media: 'screen and (max-width: ' + ($x - 1) + ')'; + } + + // Not (< x) + @elseif ($op == 'not') { + $media: 'screen and (max-width: ' + ($x - 1) + ')'; + } + + // Equal (>= x) + @else { + $media: 'screen and (min-width: ' + $x + ')'; + } + + } + + // Min and max. + @else { + + // Greater than or equal (>= x) + @if ($op == 'gte') { + $media: 'screen and (min-width: ' + $x + ')'; + } + + // Less than or equal (<= y) + @elseif ($op == 'lte') { + $media: 'screen and (max-width: ' + $y + ')'; + } + + // Greater than (> y) + @elseif ($op == 'gt') { + $media: 'screen and (min-width: ' + ($y + 1) + ')'; + } + + // Less than (< x) + @elseif ($op == 'lt') { + $media: 'screen and (max-width: ' + ($x - 1) + ')'; + } + + // Not (< x and > y) + @elseif ($op == 'not') { + $media: 'screen and (max-width: ' + ($x - 1) + '), screen and (min-width: ' + ($y + 1) + ')'; + } + + // Equal (>= x and <= y) + @else { + $media: 'screen and (min-width: ' + $x + ') and (max-width: ' + $y + ')'; + } + + } + + } + + // String. + @else { + + // Missing a media type? Prefix with "screen". + @if (str-slice($a, 0, 1) == '(') { + $media: 'screen and ' + $a; + } + + // Otherwise, use as-is. + @else { + $media: $a; + } + + } + + } + + // Output. + @media #{$media} { + @content; + } + + } \ No newline at end of file diff --git a/_sass/libs/_fonts.scss b/_sass/libs/_fonts.scss new file mode 100644 index 0000000..3a12e6e --- /dev/null +++ b/_sass/libs/_fonts.scss @@ -0,0 +1,8 @@ +/* latin */ +@font-face { + font-family: 'Astloch'; + font-style: normal; + font-weight: 700; + src: local('Astloch Bold'), local('Astloch-Bold'), url(/assets/fonts/Astloch-Bold.ttf) format('truetype'); + unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD; +} diff --git a/_sass/libs/_functions.scss b/_sass/libs/_functions.scss new file mode 100644 index 0000000..f563aab --- /dev/null +++ b/_sass/libs/_functions.scss @@ -0,0 +1,90 @@ +/// Removes a specific item from a list. +/// @author Hugo Giraudel +/// @param {list} $list List. +/// @param {integer} $index Index. +/// @return {list} Updated list. +@function remove-nth($list, $index) { + + $result: null; + + @if type-of($index) != number { + @warn "$index: #{quote($index)} is not a number for `remove-nth`."; + } + @else if $index == 0 { + @warn "List index 0 must be a non-zero integer for `remove-nth`."; + } + @else if abs($index) > length($list) { + @warn "List index is #{$index} but list is only #{length($list)} item long for `remove-nth`."; + } + @else { + + $result: (); + $index: if($index < 0, length($list) + $index + 1, $index); + + @for $i from 1 through length($list) { + + @if $i != $index { + $result: append($result, nth($list, $i)); + } + + } + + } + + @return $result; + +} + +/// Gets a value from a map. +/// @author Hugo Giraudel +/// @param {map} $map Map. +/// @param {string} $keys Key(s). +/// @return {string} Value. +@function val($map, $keys...) { + + @if nth($keys, 1) == null { + $keys: remove-nth($keys, 1); + } + + @each $key in $keys { + $map: map-get($map, $key); + } + + @return $map; + +} + +/// Gets a duration value. +/// @param {string} $keys Key(s). +/// @return {string} Value. +@function _duration($keys...) { + @return val($duration, $keys...); +} + +/// Gets a font value. +/// @param {string} $keys Key(s). +/// @return {string} Value. +@function _font($keys...) { + @return val($font, $keys...); +} + +/// Gets a misc value. +/// @param {string} $keys Key(s). +/// @return {string} Value. +@function _misc($keys...) { + @return val($misc, $keys...); +} + +/// Gets a palette value. +/// @param {string} $keys Key(s). +/// @return {string} Value. +@function _palette($keys...) { + @return val($palette, $keys...); +} + +/// Gets a size value. +/// @param {string} $keys Key(s). +/// @return {string} Value. +@function _size($keys...) { + @return val($size, $keys...); +} \ No newline at end of file diff --git a/_sass/libs/_html-grid.scss b/_sass/libs/_html-grid.scss new file mode 100644 index 0000000..7438a8c --- /dev/null +++ b/_sass/libs/_html-grid.scss @@ -0,0 +1,149 @@ +// html-grid.scss v1.0 | @ajlkn | MIT licensed */ + +// Mixins. + + /// Initializes the current element as an HTML grid. + /// @param {mixed} $gutters Gutters (either a single number to set both column/row gutters, or a list to set them individually). + /// @param {mixed} $suffix Column class suffix (optional; either a single suffix or a list). + @mixin html-grid($gutters: 1.5em, $suffix: '') { + + // Initialize. + $cols: 12; + $multipliers: 0, 0.25, 0.5, 1, 1.50, 2.00; + $unit: 100% / $cols; + + // Suffixes. + $suffixes: null; + + @if (type-of($suffix) == 'list') { + $suffixes: $suffix; + } + @else { + $suffixes: ($suffix); + } + + // Gutters. + $guttersCols: null; + $guttersRows: null; + + @if (type-of($gutters) == 'list') { + + $guttersCols: nth($gutters, 1); + $guttersRows: nth($gutters, 2); + + } + @else { + + $guttersCols: $gutters; + $guttersRows: 0; + + } + + // Row. + display: flex; + flex-wrap: wrap; + box-sizing: border-box; + align-items: stretch; + + // Columns. + > * { + box-sizing: border-box; + } + + // Gutters. + &.gtr-uniform { + > * { + > :last-child { + margin-bottom: 0; + } + } + } + + // Alignment. + &.aln-left { + justify-content: flex-start; + } + + &.aln-center { + justify-content: center; + } + + &.aln-right { + justify-content: flex-end; + } + + &.aln-top { + align-items: flex-start; + } + + &.aln-middle { + align-items: center; + } + + &.aln-bottom { + align-items: flex-end; + } + + // Step through suffixes. + @each $suffix in $suffixes { + + // Suffix. + @if ($suffix != '') { + $suffix: '-' + $suffix; + } + @else { + $suffix: ''; + } + + // Row. + + // Important. + > .imp#{$suffix} { + order: -1; + } + + // Columns, offsets. + @for $i from 1 through $cols { + > .col-#{$i}#{$suffix} { + width: $unit * $i; + } + + > .off-#{$i}#{$suffix} { + margin-left: $unit * $i; + } + } + + // Step through multipliers. + @each $multiplier in $multipliers { + + // Gutters. + $class: null; + + @if ($multiplier != 1) { + $class: '.gtr-' + ($multiplier * 100); + } + + &#{$class} { + margin-top: ($guttersRows * $multiplier * -1); + margin-left: ($guttersCols * $multiplier * -1); + + > * { + padding: ($guttersRows * $multiplier) 0 0 ($guttersCols * $multiplier); + } + + // Uniform. + &.gtr-uniform { + margin-top: $guttersCols * $multiplier * -1; + + > * { + padding-top: $guttersCols * $multiplier; + } + } + + } + + } + + } + + } \ No newline at end of file diff --git a/_sass/libs/_mixins.scss b/_sass/libs/_mixins.scss new file mode 100644 index 0000000..a331483 --- /dev/null +++ b/_sass/libs/_mixins.scss @@ -0,0 +1,78 @@ +/// Makes an element's :before pseudoelement a FontAwesome icon. +/// @param {string} $content Optional content value to use. +/// @param {string} $category Optional category to use. +/// @param {string} $where Optional pseudoelement to target (before or after). +@mixin icon($content: false, $category: regular, $where: before) { + + text-decoration: none; + + &:#{$where} { + + @if $content { + content: $content; + } + + -moz-osx-font-smoothing: grayscale; + -webkit-font-smoothing: antialiased; + display: inline-block; + font-style: normal; + font-variant: normal; + text-rendering: auto; + line-height: 1; + text-transform: none !important; + + @if ($category == brands) { + font-family: 'Font Awesome 5 Brands'; + } + @elseif ($category == solid) { + font-family: 'Font Awesome 5 Free'; + font-weight: 900; + } + @else { + font-family: 'Font Awesome 5 Free'; + font-weight: 400; + } + + } + +} + +/// Applies padding to an element, taking the current element-margin value into account. +/// @param {mixed} $tb Top/bottom padding. +/// @param {mixed} $lr Left/right padding. +/// @param {list} $pad Optional extra padding (in the following order top, right, bottom, left) +/// @param {bool} $important If true, adds !important. +@mixin padding($tb, $lr, $pad: (0,0,0,0), $important: null) { + + @if $important { + $important: '!important'; + } + + $x: 0.1em; + + @if unit(_size(element-margin)) == 'rem' { + $x: 0.1rem; + } + + padding: ($tb + nth($pad,1)) ($lr + nth($pad,2)) max($x, $tb - _size(element-margin) + nth($pad,3)) ($lr + nth($pad,4)) #{$important}; + +} + +/// Encodes a SVG data URL so IE doesn't choke (via codepen.io/jakob-e/pen/YXXBrp). +/// @param {string} $svg SVG data URL. +/// @return {string} Encoded SVG data URL. +@function svg-url($svg) { + + $svg: str-replace($svg, '"', '\''); + $svg: str-replace($svg, '%', '%25'); + $svg: str-replace($svg, '<', '%3C'); + $svg: str-replace($svg, '>', '%3E'); + $svg: str-replace($svg, '&', '%26'); + $svg: str-replace($svg, '#', '%23'); + $svg: str-replace($svg, '{', '%7B'); + $svg: str-replace($svg, '}', '%7D'); + $svg: str-replace($svg, ';', '%3B'); + + @return url("data:image/svg+xml;charset=utf8,#{$svg}"); + +} \ No newline at end of file diff --git a/_sass/libs/_vars.scss b/_sass/libs/_vars.scss new file mode 100644 index 0000000..eb6c8a1 --- /dev/null +++ b/_sass/libs/_vars.scss @@ -0,0 +1,85 @@ +// Misc. + $misc: ( + z-index-base: 10000, + overlay-opacity: 0.75, + lightbox-opacity: 0.75, + gallery-limit: 32, + items-limit: 16 + ); + +// Duration. + $duration: ( + menu: 0.5s, + transition: 0.2s, + gallery-lightbox: 0.5s, + gallery-delay: 0.15s, + items-delay: 0.15s, + on-load: 0.75s, + on-scroll: 0.75s + ); + +// Size. + $size: ( + border-radius: 4px, + border-radius-alt: 0.5rem, + border-width: 1px, + element-height: 2.75rem, + element-margin: 2rem, + gutter: 3.5rem, + inner: 64rem, + padding: ( + default: 7rem, + xlarge: 5rem, + large: 4rem, + medium: 3rem, + small: 2rem + ) + ); + +// Font. + $font: ( + family: ('Astloch', Helvetica, sans-serif), + family-fixed: ('Courier New', monospace), + weight: 400, + weight-bold: 700, + kerning: -0.025em, + kerning-alt: 0.125em + ); + +// Palette. + $palette: ( + color1: #30363d, + color2: #db8992, + color3: #ab7aad, + color4: #897cad, + color5: #7794ce, + color6: #64abb4, + color7: #6ba78c, + + + bg: #111111, + bg-alt: rgb(238, 238, 238), + bg-transparent: rgba(238, 238, 238, 0.5), + fg: rgb(238, 238, 238), + fg-bold: rgb(238, 238, 238), + fg-light: rgba(238, 238, 238, 0.75), + border: rgba(0, 0, 0, 0.2), + border-alt: rgba(0, 0, 0, 0.075), + border-bg: rgba(0, 0, 0, 0.05), + border-darken: rgba(0, 0, 0, 0.25), + border-dark: rgba(0, 0, 0, 0.85), + accent: rgba(233, 77, 29, 1), + accent-dark: rgb(0, 0, 0), + + invert: ( + bg: #000000, + bg-alt: #222222, + fg: #ffffff, + fg-bold: #ffffff, + fg-light: #ffffff, + border: rgb(0, 0, 0), + border-alt: rgba(238, 238, 238, 0.25), + border-bg: rgba(0, 0, 0, 0.125), + accent: #47D3E5 + ), + ); \ No newline at end of file diff --git a/_sass/libs/_vendor.scss b/_sass/libs/_vendor.scss new file mode 100644 index 0000000..6599a3f --- /dev/null +++ b/_sass/libs/_vendor.scss @@ -0,0 +1,376 @@ +// vendor.scss v1.0 | @ajlkn | MIT licensed */ + +// Vars. + + /// Vendor prefixes. + /// @var {list} + $vendor-prefixes: ( + '-moz-', + '-webkit-', + '-ms-', + '' + ); + + /// Properties that should be vendorized. + /// Data via caniuse.com, github.com/postcss/autoprefixer, and developer.mozilla.org + /// @var {list} + $vendor-properties: ( + + // Animation. + 'animation', + 'animation-delay', + 'animation-direction', + 'animation-duration', + 'animation-fill-mode', + 'animation-iteration-count', + 'animation-name', + 'animation-play-state', + 'animation-timing-function', + + // Appearance. + 'appearance', + + // Backdrop filter. + 'backdrop-filter', + + // Background image options. + 'background-clip', + 'background-origin', + 'background-size', + + // Box sizing. + 'box-sizing', + + // Clip path. + 'clip-path', + + // Filter effects. + 'filter', + + // Flexbox. + 'align-content', + 'align-items', + 'align-self', + 'flex', + 'flex-basis', + 'flex-direction', + 'flex-flow', + 'flex-grow', + 'flex-shrink', + 'flex-wrap', + 'justify-content', + 'order', + + // Font feature. + 'font-feature-settings', + 'font-language-override', + 'font-variant-ligatures', + + // Font kerning. + 'font-kerning', + + // Fragmented borders and backgrounds. + 'box-decoration-break', + + // Grid layout. + 'grid-column', + 'grid-column-align', + 'grid-column-end', + 'grid-column-start', + 'grid-row', + 'grid-row-align', + 'grid-row-end', + 'grid-row-start', + 'grid-template-columns', + 'grid-template-rows', + + // Hyphens. + 'hyphens', + 'word-break', + + // Masks. + 'mask', + 'mask-border', + 'mask-border-outset', + 'mask-border-repeat', + 'mask-border-slice', + 'mask-border-source', + 'mask-border-width', + 'mask-clip', + 'mask-composite', + 'mask-image', + 'mask-origin', + 'mask-position', + 'mask-repeat', + 'mask-size', + + // Multicolumn. + 'break-after', + 'break-before', + 'break-inside', + 'column-count', + 'column-fill', + 'column-gap', + 'column-rule', + 'column-rule-color', + 'column-rule-style', + 'column-rule-width', + 'column-span', + 'column-width', + 'columns', + + // Object fit. + 'object-fit', + 'object-position', + + // Regions. + 'flow-from', + 'flow-into', + 'region-fragment', + + // Scroll snap points. + 'scroll-snap-coordinate', + 'scroll-snap-destination', + 'scroll-snap-points-x', + 'scroll-snap-points-y', + 'scroll-snap-type', + + // Shapes. + 'shape-image-threshold', + 'shape-margin', + 'shape-outside', + + // Tab size. + 'tab-size', + + // Text align last. + 'text-align-last', + + // Text decoration. + 'text-decoration-color', + 'text-decoration-line', + 'text-decoration-skip', + 'text-decoration-style', + + // Text emphasis. + 'text-emphasis', + 'text-emphasis-color', + 'text-emphasis-position', + 'text-emphasis-style', + + // Text size adjust. + 'text-size-adjust', + + // Text spacing. + 'text-spacing', + + // Transform. + 'transform', + 'transform-origin', + + // Transform 3D. + 'backface-visibility', + 'perspective', + 'perspective-origin', + 'transform-style', + + // Transition. + 'transition', + 'transition-delay', + 'transition-duration', + 'transition-property', + 'transition-timing-function', + + // Unicode bidi. + 'unicode-bidi', + + // User select. + 'user-select', + + // Writing mode. + 'writing-mode', + + ); + + /// Values that should be vendorized. + /// Data via caniuse.com, github.com/postcss/autoprefixer, and developer.mozilla.org + /// @var {list} + $vendor-values: ( + + // Cross fade. + 'cross-fade', + + // Element function. + 'element', + + // Filter function. + 'filter', + + // Flexbox. + 'flex', + 'inline-flex', + + // Grab cursors. + 'grab', + 'grabbing', + + // Gradients. + 'linear-gradient', + 'repeating-linear-gradient', + 'radial-gradient', + 'repeating-radial-gradient', + + // Grid layout. + 'grid', + 'inline-grid', + + // Image set. + 'image-set', + + // Intrinsic width. + 'max-content', + 'min-content', + 'fit-content', + 'fill', + 'fill-available', + 'stretch', + + // Sticky position. + 'sticky', + + // Transform. + 'transform', + + // Zoom cursors. + 'zoom-in', + 'zoom-out', + + ); + +// Functions. + + /// Removes a specific item from a list. + /// @author Hugo Giraudel + /// @param {list} $list List. + /// @param {integer} $index Index. + /// @return {list} Updated list. + @function remove-nth($list, $index) { + + $result: null; + + @if type-of($index) != number { + @warn "$index: #{quote($index)} is not a number for `remove-nth`."; + } + @else if $index == 0 { + @warn "List index 0 must be a non-zero integer for `remove-nth`."; + } + @else if abs($index) > length($list) { + @warn "List index is #{$index} but list is only #{length($list)} item long for `remove-nth`."; + } + @else { + + $result: (); + $index: if($index < 0, length($list) + $index + 1, $index); + + @for $i from 1 through length($list) { + + @if $i != $index { + $result: append($result, nth($list, $i)); + } + + } + + } + + @return $result; + + } + + /// Replaces a substring within another string. + /// @author Hugo Giraudel + /// @param {string} $string String. + /// @param {string} $search Substring. + /// @param {string} $replace Replacement. + /// @return {string} Updated string. + @function str-replace($string, $search, $replace: '') { + + $index: str-index($string, $search); + + @if $index { + @return str-slice($string, 1, $index - 1) + $replace + str-replace(str-slice($string, $index + str-length($search)), $search, $replace); + } + + @return $string; + + } + + /// Replaces a substring within each string in a list. + /// @param {list} $strings List of strings. + /// @param {string} $search Substring. + /// @param {string} $replace Replacement. + /// @return {list} Updated list of strings. + @function str-replace-all($strings, $search, $replace: '') { + + @each $string in $strings { + $strings: set-nth($strings, index($strings, $string), str-replace($string, $search, $replace)); + } + + @return $strings; + + } + +// Mixins. + + /// Wraps @content in vendorized keyframe blocks. + /// @param {string} $name Name. + @mixin keyframes($name) { + + @-moz-keyframes #{$name} { @content; } + @-webkit-keyframes #{$name} { @content; } + @-ms-keyframes #{$name} { @content; } + @keyframes #{$name} { @content; } + + } + + /// Vendorizes a declaration's property and/or value(s). + /// @param {string} $property Property. + /// @param {mixed} $value String/list of value(s). + @mixin vendor($property, $value) { + + // Determine if property should expand. + $expandProperty: index($vendor-properties, $property); + + // Determine if value should expand (and if so, add '-prefix-' placeholder). + $expandValue: false; + + @each $x in $value { + @each $y in $vendor-values { + @if $y == str-slice($x, 1, str-length($y)) { + + $value: set-nth($value, index($value, $x), '-prefix-' + $x); + $expandValue: true; + + } + } + } + + // Expand property? + @if $expandProperty { + @each $vendor in $vendor-prefixes { + #{$vendor}#{$property}: #{str-replace-all($value, '-prefix-', $vendor)}; + } + } + + // Expand just the value? + @elseif $expandValue { + @each $vendor in $vendor-prefixes { + #{$property}: #{str-replace-all($value, '-prefix-', $vendor)}; + } + } + + // Neither? Treat them as a normal declaration. + @else { + #{$property}: #{$value}; + } + + } \ No newline at end of file diff --git a/_sass/player.scss b/_sass/player.scss new file mode 100644 index 0000000..a963607 --- /dev/null +++ b/_sass/player.scss @@ -0,0 +1,136 @@ +/* Audio Player Styles +================================================== */ + +/* Default / Desktop / Firefox */ + +audio { + margin: 0; + width: 100%; +} + +#mainwrap { + border-radius: 5px; + width: 100%; + ul { + list-style: none; + padding: 0; + li:last-child { + border-radius: 0 0 5px 5px; + } + } +} + +#audiowrap { + background-color: _palette(accent-dark); + margin: 0 auto 0 auto; +} + +#plwrap { + margin: 0 auto; +} + +#tracks { + min-height: 65px; + position: relative; + text-align: center; + text-decoration: none; + +} + + +#nowPlay { + display: flex; + width: 100%; + height: 60px; + flex-wrap: unset; + justify-content: center; + align-items: center; + background-color: _palette(accent-dark); + border-radius: 5px 5px 0 0; +} + +#npTitle { + margin: 0; + padding: 21px; + +} + +#npAction { + display: none; + margin: 0; + padding: 21px; + font-size: 12px; +} + +#plList { + margin: 0; +} + +#plList li { + background-color: _palette(border-darken); + cursor: pointer; + margin: 0; + padding: 21px 0; + border: 1px solid _palette(accent-dark); + border-top: 0; + transition: all 400ms ease-in-out; +} + +#plList li:hover { + background-color: _palette(border-alt); + transition: all 400ms ease-in-out; +} + +.plItem { + position: relative; +} + +.plTitle { + left: 75px; + overflow: hidden; + position: absolute; + right: 65px; + text-overflow: ellipsis; + top: 0; + white-space: nowrap; + font-weight: bold; + padding-right: 10px; +} + +.plNum { + padding-left: 21px; + width: 65px; +} + +.plLength { + padding-left: 21px; + position: absolute; + right: 21px; + top: 0; +} + +.plSel, .plSel:hover { + background-color: _palette(border-alt)!important; + cursor: default!important; + border-radius: 5px; + +} + +a[id^="btn"] { + background-color: _palette(border-darken); + color: _palette(fg); + cursor: pointer; + margin: 0; + padding: 0 27px 0 21px; + text-decoration: none; +} + + +a[id^="btn"]::-moz-focus-inner { + border: 0; + padding: 0; +} + +#noJSalbum { + display: none; +} \ No newline at end of file diff --git a/_tracks/cyber-grany/1-grandma-got-the-ssh-keys.md b/_tracks/cyber-grany/1-grandma-got-the-ssh-keys.md new file mode 100644 index 0000000..7335a9c --- /dev/null +++ b/_tracks/cyber-grany/1-grandma-got-the-ssh-keys.md @@ -0,0 +1,126 @@ +--- +layout: track +path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/cyber-grany/1-grandma-got-the-ssh-keys.mp3 +audio: /assets/albums/cyber-grany/1-grandma-got-the-ssh-keys.mp3 +slug: cyber-grany/1-grandma-got-the-ssh-keys +albumSlug: cyber-grany +trackSlug: 1-grandma-got-the-ssh-keys +coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/cyber-grany/1-grandma-got-the-ssh-keys.jpeg +cover: /assets/albums/cyber-grany/1-grandma-got-the-ssh-keys.jpeg +format: &ref_0 + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 320000 + codecProfile: CBR + numberOfSamples: 8909568 + duration: 202.03102040816327 +native: &ref_1 + ID3v2.3: + - id: TIT2 + value: Grandma got the SSH keys + - id: TPE1 + value: 徒 Setto セット + - id: TRCK + value: 1/1 + - id: TALB + value: Cyber Grany + - id: TPE2 + value: To Setto Setto + - id: TCON + value: Acid Trap + - id: 'TXXX:CDDB DiscID' + value: 0200ca01 + - id: 'TXXX:discid' + value: 0200ca01 + - id: 'TXXX:MusicBrainz DiscID' + value: bhKd3SFqkr6x1L9X2JkIZ6UIaRA- + - id: 'TXXX:musicbrainz_discid' + value: bhKd3SFqkr6x1L9X2JkIZ6UIaRA- + - id: COMM + value: + language: XXX + description: WEBSITE + text: 'https://setto.basspistol.com' + - id: COMM + value: + language: XXX + description: Comment + text: Special track for Acid December 2019 + - id: TYER + value: '2019' +quality: &ref_2 + warnings: [] +common: &ref_3 + track: + 'no': 1 + of: 1 + disk: + 'no': null + of: null + title: Grandma got the SSH keys + artists: + - 徒 Setto セット + artist: 徒 Setto セット + album: Cyber Grany + albumartist: To Setto Setto + genre: + - Acid Trap + comment: + - 'https://setto.basspistol.com' + - Special track for Acid December 2019 + year: 2019 +transformed: &ref_4 + ID3v2.3: + TIT2: Grandma got the SSH keys + TPE1: 徒 Setto セット + TRCK: 1/1 + TALB: Cyber Grany + TPE2: To Setto Setto + TCON: Acid Trap + 'TXXX:CDDB DiscID': 0200ca01 + 'TXXX:discid': 0200ca01 + 'TXXX:MusicBrainz DiscID': bhKd3SFqkr6x1L9X2JkIZ6UIaRA- + 'TXXX:musicbrainz_discid': bhKd3SFqkr6x1L9X2JkIZ6UIaRA- + WEBSITE: 'https://setto.basspistol.com' + Comment: Special track for Acid December 2019 + TYER: '2019' +all: &ref_5 + TIT2: Grandma got the SSH keys + TPE1: 徒 Setto セット + TRCK: 1/1 + TALB: Cyber Grany + TPE2: To Setto Setto + TCON: Acid Trap + 'TXXX:CDDB DiscID': 0200ca01 + 'TXXX:discid': 0200ca01 + 'TXXX:MusicBrainz DiscID': bhKd3SFqkr6x1L9X2JkIZ6UIaRA- + 'TXXX:musicbrainz_discid': bhKd3SFqkr6x1L9X2JkIZ6UIaRA- + WEBSITE: 'https://setto.basspistol.com' + Comment: Special track for Acid December 2019 + TYER: '2019' +nextTrack: &ref_6 + path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/cyber-grany/1-grandma-got-the-ssh-keys.mp3 + audio: /assets/albums/cyber-grany/1-grandma-got-the-ssh-keys.mp3 + slug: cyber-grany/1-grandma-got-the-ssh-keys + albumSlug: cyber-grany + trackSlug: 1-grandma-got-the-ssh-keys + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/cyber-grany/1-grandma-got-the-ssh-keys.jpeg + cover: /assets/albums/cyber-grany/1-grandma-got-the-ssh-keys.jpeg + format: *ref_0 + native: *ref_1 + quality: *ref_2 + common: *ref_3 + transformed: *ref_4 + all: *ref_5 +previousTrack: *ref_6 +--- diff --git a/_tracks/darkweb/1-swipe.md b/_tracks/darkweb/1-swipe.md new file mode 100644 index 0000000..9295ad4 --- /dev/null +++ b/_tracks/darkweb/1-swipe.md @@ -0,0 +1,451 @@ +--- +layout: track +path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/1-swipe.mp3 +audio: /assets/albums/darkweb/1-swipe.mp3 +slug: darkweb/1-swipe +albumSlug: darkweb +trackSlug: 1-swipe +coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/1-swipe.jpeg +cover: /assets/albums/darkweb/1-swipe.jpeg +format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 12388608 + duration: 280.9208163265306 +native: + ID3v2.3: + - id: TIT2 + value: Swipe + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: Comment + text: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + - id: TALB + value: Darkweb + - id: TRCK + value: '1' + - id: TPE2 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: UNSYNCEDLYRICS + text: >- + Comme tous les après-midis, Assis dans le tram en face d'une jolie + vie, + + Sur mon écran elles sont encore plus sexy. + + Swipe à gauche swipe à droite, + + Celle-ci a l'aire plutôt maladroite, + + Ça m'irait bien ça. + + Mais la personne en face de moi, + + Elle me matte, elle me mire. + + Je ne sais pas quoi faire, + + Qu'est-ce que je vais lui dire? + + Elle a de belles dents! + + Je vais retourner a mon écran. + + je n'ai simplement, + + Pas assez de cran. + + + Je swipe à droite, + + Je swipe à gauche, + + Je yeuxt vers l'avant de temps en temps. + + + Si seulement elle voyait mon flux, + + Je suis sur qu'elle n'en pourrait plus! + + Comment je fais pour l'ajouter? + + Est-ce que Google pourrait la trouver? + + Hashtag jolitram, + + Faudrait que ça devienne viral sur Instagram. + + Ensemble on aurait peut-être un avenir! + + Mais comment coño vais-je lui dire? + + Merde elle appuie sur arrêt! + + Je lui tend mon casque ça le fait! + + Elle donne le siens truc de ouf?! + + Hésitations je m'immisce. + + Cette personne écoute de la bonne musique de glisse. + + + Je swipe à droite, + + Je swipe à gauche, + + Je yeuxt vers l'avant de temps en temps. + - id: TCON + value: Cyber Soul + - id: TYER + value: '2019' +quality: + warnings: [] +common: + track: + 'no': 1 + of: null + disk: + 'no': null + of: null + title: Swipe + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + - |- + Comme tous les après-midis, Assis dans le tram en face d'une jolie vie, + Sur mon écran elles sont encore plus sexy. + Swipe à gauche swipe à droite, + Celle-ci a l'aire plutôt maladroite, + Ça m'irait bien ça. + Mais la personne en face de moi, + Elle me matte, elle me mire. + Je ne sais pas quoi faire, + Qu'est-ce que je vais lui dire? + Elle a de belles dents! + Je vais retourner a mon écran. + je n'ai simplement, + Pas assez de cran. + + Je swipe à droite, + Je swipe à gauche, + Je yeuxt vers l'avant de temps en temps. + + Si seulement elle voyait mon flux, + Je suis sur qu'elle n'en pourrait plus! + Comment je fais pour l'ajouter? + Est-ce que Google pourrait la trouver? + Hashtag jolitram, + Faudrait que ça devienne viral sur Instagram. + Ensemble on aurait peut-être un avenir! + Mais comment coño vais-je lui dire? + Merde elle appuie sur arrêt! + Je lui tend mon casque ça le fait! + Elle donne le siens truc de ouf?! + Hésitations je m'immisce. + Cette personne écoute de la bonne musique de glisse. + + Je swipe à droite, + Je swipe à gauche, + Je yeuxt vers l'avant de temps en temps. + album: Darkweb + albumartist: 徒 Setto セット + genre: + - Cyber Soul + year: 2019 +transformed: + ID3v2.3: + TIT2: Swipe + TPE1: 徒 Setto セット + Comment: 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + TALB: Darkweb + TRCK: '1' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: |- + Comme tous les après-midis, Assis dans le tram en face d'une jolie vie, + Sur mon écran elles sont encore plus sexy. + Swipe à gauche swipe à droite, + Celle-ci a l'aire plutôt maladroite, + Ça m'irait bien ça. + Mais la personne en face de moi, + Elle me matte, elle me mire. + Je ne sais pas quoi faire, + Qu'est-ce que je vais lui dire? + Elle a de belles dents! + Je vais retourner a mon écran. + je n'ai simplement, + Pas assez de cran. + + Je swipe à droite, + Je swipe à gauche, + Je yeuxt vers l'avant de temps en temps. + + Si seulement elle voyait mon flux, + Je suis sur qu'elle n'en pourrait plus! + Comment je fais pour l'ajouter? + Est-ce que Google pourrait la trouver? + Hashtag jolitram, + Faudrait que ça devienne viral sur Instagram. + Ensemble on aurait peut-être un avenir! + Mais comment coño vais-je lui dire? + Merde elle appuie sur arrêt! + Je lui tend mon casque ça le fait! + Elle donne le siens truc de ouf?! + Hésitations je m'immisce. + Cette personne écoute de la bonne musique de glisse. + + Je swipe à droite, + Je swipe à gauche, + Je yeuxt vers l'avant de temps en temps. + TCON: Cyber Soul + TYER: '2019' +all: + TIT2: Swipe + TPE1: 徒 Setto セット + Comment: 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + TALB: Darkweb + TRCK: '1' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: |- + Comme tous les après-midis, Assis dans le tram en face d'une jolie vie, + Sur mon écran elles sont encore plus sexy. + Swipe à gauche swipe à droite, + Celle-ci a l'aire plutôt maladroite, + Ça m'irait bien ça. + Mais la personne en face de moi, + Elle me matte, elle me mire. + Je ne sais pas quoi faire, + Qu'est-ce que je vais lui dire? + Elle a de belles dents! + Je vais retourner a mon écran. + je n'ai simplement, + Pas assez de cran. + + Je swipe à droite, + Je swipe à gauche, + Je yeuxt vers l'avant de temps en temps. + + Si seulement elle voyait mon flux, + Je suis sur qu'elle n'en pourrait plus! + Comment je fais pour l'ajouter? + Est-ce que Google pourrait la trouver? + Hashtag jolitram, + Faudrait que ça devienne viral sur Instagram. + Ensemble on aurait peut-être un avenir! + Mais comment coño vais-je lui dire? + Merde elle appuie sur arrêt! + Je lui tend mon casque ça le fait! + Elle donne le siens truc de ouf?! + Hésitations je m'immisce. + Cette personne écoute de la bonne musique de glisse. + + Je swipe à droite, + Je swipe à gauche, + Je yeuxt vers l'avant de temps en temps. + TCON: Cyber Soul + TYER: '2019' +nextTrack: + path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/2-darkweb.mp3 + audio: /assets/albums/darkweb/2-darkweb.mp3 + slug: darkweb/2-darkweb + albumSlug: darkweb + trackSlug: 2-darkweb + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/2-darkweb.jpeg + cover: /assets/albums/darkweb/2-darkweb.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 12566016 + duration: 284.94367346938776 + native: + ID3v2.3: + - id: TIT2 + value: Darkweb + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: Comment + text: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + - id: TALB + value: Darkweb + - id: TRCK + value: '2' + - id: TPE2 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: UNSYNCEDLYRICS + text: "Y'en a mare de ce web\r\nIl est tout pourri\r\nOn peu plus rien y faire\r\nSeulement pousser des cris\r\nQue personne va entendre\r\nSi t'as pas mille amis\r\nTa home-page va se pendre\r\nPerdu le goût de la vie\r\nEnvois ton Paypal\r\nJ'vais lui faire un refus\r\nAjoute-moi en ami\r\nTu vas kiffer mon flux\r\nViens pas faire ton vieux troll\r\nRien a foutre de toi\r\nT’écris de belles paroles\r\nRien à foutre de toi\r\nPuis au fond de ce noire\r\nJe vois un rayon\r\nUn programme provisoire\r\nPour poser mes sillons\r\nY a une communauté\r\nDe gens mal intégrés\r\nIl sont tous comme moi\r\nMais encore plus tarés\r\nProtocole anonyme\r\nConnexion en chiffré\r\nP2P solidaire\r\nConnexion certifiée\r\nLittéraire digital\r\nTu vas aussi kiffer\r\nÇa s'appelle le Darkweb\r\nTu vas aussi kiffer\r\n\r\nFacegoogle aux gogues\r\nY a plus que des conneries\r\nPropagande démagogue\r\nPetits chats tous mimis\r\nMais c'est quoi cette shit\r\nÇa veut plus rien dire\r\nLes keums envoient leurs bites\r\nComme si elles allaient applaudir\r\nNon! C'est trop con\r\nJe veux pas participer\r\nMais si je joue pas le jeux\r\nJe vais être abandonné\r\nPlus personne entendra\r\nTout ce que j'ai à crier\r\nPlus personne ne lira\r\nTout ce que j'ai à crier\r\nPuis au bout du tunnel\r\nJe vois une lueur étrange\r\nCelle d'un réseau fermé\r\nQui reste ouvert au strange\r\nUn lieu virtuel\r\nUne cité idéelle\r\nUne banque de données\r\nPour les mal intégrés\r\nJe peux y être qui je veux\r\nUn antichrist bien pleb\r\nAvoir beaucoup de cheveux\r\nUn intello du Zagreb\r\nT'as besoin d'faire entendre\r\nTu vas aussi kiffer\r\nLa clef tu peux la prendre\r\nTu vas aussi kiffer" + - id: TCON + value: Cypher Rap + - id: TYER + value: '2019' + quality: + warnings: [] + common: + track: + 'no': 2 + of: null + disk: + 'no': null + of: null + title: Darkweb + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + - "Y'en a mare de ce web\r\nIl est tout pourri\r\nOn peu plus rien y faire\r\nSeulement pousser des cris\r\nQue personne va entendre\r\nSi t'as pas mille amis\r\nTa home-page va se pendre\r\nPerdu le goût de la vie\r\nEnvois ton Paypal\r\nJ'vais lui faire un refus\r\nAjoute-moi en ami\r\nTu vas kiffer mon flux\r\nViens pas faire ton vieux troll\r\nRien a foutre de toi\r\nT’écris de belles paroles\r\nRien à foutre de toi\r\nPuis au fond de ce noire\r\nJe vois un rayon\r\nUn programme provisoire\r\nPour poser mes sillons\r\nY a une communauté\r\nDe gens mal intégrés\r\nIl sont tous comme moi\r\nMais encore plus tarés\r\nProtocole anonyme\r\nConnexion en chiffré\r\nP2P solidaire\r\nConnexion certifiée\r\nLittéraire digital\r\nTu vas aussi kiffer\r\nÇa s'appelle le Darkweb\r\nTu vas aussi kiffer\r\n\r\nFacegoogle aux gogues\r\nY a plus que des conneries\r\nPropagande démagogue\r\nPetits chats tous mimis\r\nMais c'est quoi cette shit\r\nÇa veut plus rien dire\r\nLes keums envoient leurs bites\r\nComme si elles allaient applaudir\r\nNon! C'est trop con\r\nJe veux pas participer\r\nMais si je joue pas le jeux\r\nJe vais être abandonné\r\nPlus personne entendra\r\nTout ce que j'ai à crier\r\nPlus personne ne lira\r\nTout ce que j'ai à crier\r\nPuis au bout du tunnel\r\nJe vois une lueur étrange\r\nCelle d'un réseau fermé\r\nQui reste ouvert au strange\r\nUn lieu virtuel\r\nUne cité idéelle\r\nUne banque de données\r\nPour les mal intégrés\r\nJe peux y être qui je veux\r\nUn antichrist bien pleb\r\nAvoir beaucoup de cheveux\r\nUn intello du Zagreb\r\nT'as besoin d'faire entendre\r\nTu vas aussi kiffer\r\nLa clef tu peux la prendre\r\nTu vas aussi kiffer" + album: Darkweb + albumartist: 徒 Setto セット + genre: + - Cypher Rap + year: 2019 + transformed: + ID3v2.3: + TIT2: Darkweb + TPE1: 徒 Setto セット + Comment: 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + TALB: Darkweb + TRCK: '2' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Y'en a mare de ce web\r\nIl est tout pourri\r\nOn peu plus rien y faire\r\nSeulement pousser des cris\r\nQue personne va entendre\r\nSi t'as pas mille amis\r\nTa home-page va se pendre\r\nPerdu le goût de la vie\r\nEnvois ton Paypal\r\nJ'vais lui faire un refus\r\nAjoute-moi en ami\r\nTu vas kiffer mon flux\r\nViens pas faire ton vieux troll\r\nRien a foutre de toi\r\nT’écris de belles paroles\r\nRien à foutre de toi\r\nPuis au fond de ce noire\r\nJe vois un rayon\r\nUn programme provisoire\r\nPour poser mes sillons\r\nY a une communauté\r\nDe gens mal intégrés\r\nIl sont tous comme moi\r\nMais encore plus tarés\r\nProtocole anonyme\r\nConnexion en chiffré\r\nP2P solidaire\r\nConnexion certifiée\r\nLittéraire digital\r\nTu vas aussi kiffer\r\nÇa s'appelle le Darkweb\r\nTu vas aussi kiffer\r\n\r\nFacegoogle aux gogues\r\nY a plus que des conneries\r\nPropagande démagogue\r\nPetits chats tous mimis\r\nMais c'est quoi cette shit\r\nÇa veut plus rien dire\r\nLes keums envoient leurs bites\r\nComme si elles allaient applaudir\r\nNon! C'est trop con\r\nJe veux pas participer\r\nMais si je joue pas le jeux\r\nJe vais être abandonné\r\nPlus personne entendra\r\nTout ce que j'ai à crier\r\nPlus personne ne lira\r\nTout ce que j'ai à crier\r\nPuis au bout du tunnel\r\nJe vois une lueur étrange\r\nCelle d'un réseau fermé\r\nQui reste ouvert au strange\r\nUn lieu virtuel\r\nUne cité idéelle\r\nUne banque de données\r\nPour les mal intégrés\r\nJe peux y être qui je veux\r\nUn antichrist bien pleb\r\nAvoir beaucoup de cheveux\r\nUn intello du Zagreb\r\nT'as besoin d'faire entendre\r\nTu vas aussi kiffer\r\nLa clef tu peux la prendre\r\nTu vas aussi kiffer" + TCON: Cypher Rap + TYER: '2019' + all: + TIT2: Darkweb + TPE1: 徒 Setto セット + Comment: 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + TALB: Darkweb + TRCK: '2' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Y'en a mare de ce web\r\nIl est tout pourri\r\nOn peu plus rien y faire\r\nSeulement pousser des cris\r\nQue personne va entendre\r\nSi t'as pas mille amis\r\nTa home-page va se pendre\r\nPerdu le goût de la vie\r\nEnvois ton Paypal\r\nJ'vais lui faire un refus\r\nAjoute-moi en ami\r\nTu vas kiffer mon flux\r\nViens pas faire ton vieux troll\r\nRien a foutre de toi\r\nT’écris de belles paroles\r\nRien à foutre de toi\r\nPuis au fond de ce noire\r\nJe vois un rayon\r\nUn programme provisoire\r\nPour poser mes sillons\r\nY a une communauté\r\nDe gens mal intégrés\r\nIl sont tous comme moi\r\nMais encore plus tarés\r\nProtocole anonyme\r\nConnexion en chiffré\r\nP2P solidaire\r\nConnexion certifiée\r\nLittéraire digital\r\nTu vas aussi kiffer\r\nÇa s'appelle le Darkweb\r\nTu vas aussi kiffer\r\n\r\nFacegoogle aux gogues\r\nY a plus que des conneries\r\nPropagande démagogue\r\nPetits chats tous mimis\r\nMais c'est quoi cette shit\r\nÇa veut plus rien dire\r\nLes keums envoient leurs bites\r\nComme si elles allaient applaudir\r\nNon! C'est trop con\r\nJe veux pas participer\r\nMais si je joue pas le jeux\r\nJe vais être abandonné\r\nPlus personne entendra\r\nTout ce que j'ai à crier\r\nPlus personne ne lira\r\nTout ce que j'ai à crier\r\nPuis au bout du tunnel\r\nJe vois une lueur étrange\r\nCelle d'un réseau fermé\r\nQui reste ouvert au strange\r\nUn lieu virtuel\r\nUne cité idéelle\r\nUne banque de données\r\nPour les mal intégrés\r\nJe peux y être qui je veux\r\nUn antichrist bien pleb\r\nAvoir beaucoup de cheveux\r\nUn intello du Zagreb\r\nT'as besoin d'faire entendre\r\nTu vas aussi kiffer\r\nLa clef tu peux la prendre\r\nTu vas aussi kiffer" + TCON: Cypher Rap + TYER: '2019' +previousTrack: + path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/4-darkweb-instrumental-.mp3 + audio: /assets/albums/darkweb/4-darkweb-instrumental-.mp3 + slug: darkweb/4-darkweb-instrumental- + albumSlug: darkweb + trackSlug: 4-darkweb-instrumental- + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/4-darkweb-instrumental-.jpeg + cover: /assets/albums/darkweb/4-darkweb-instrumental-.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 12526848 + duration: 284.05551020408166 + native: + ID3v2.3: + - id: TIT2 + value: Darkweb (Instrumental) + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: &ref_0 + language: XXX + description: '' + text: '' + - id: TALB + value: Darkweb + - id: TPE2 + value: 徒 Setto セット + - id: TCON + value: Cypher Rap + - id: TRCK + value: '4' + - id: COMM + value: + language: XXX + description: Comment + text: Cover art and music by To Setto Setto + - id: TYER + value: '2019' + quality: + warnings: [] + common: + track: + 'no': 4 + of: null + disk: + 'no': null + of: null + title: Darkweb (Instrumental) + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - '' + - Cover art and music by To Setto Setto + album: Darkweb + albumartist: 徒 Setto セット + genre: + - Cypher Rap + year: 2019 + transformed: + ID3v2.3: + TIT2: Darkweb (Instrumental) + TPE1: 徒 Setto セット + COMM: *ref_0 + TALB: Darkweb + TPE2: 徒 Setto セット + TCON: Cypher Rap + TRCK: '4' + Comment: Cover art and music by To Setto Setto + TYER: '2019' + all: + TIT2: Darkweb (Instrumental) + TPE1: 徒 Setto セット + COMM: *ref_0 + TALB: Darkweb + TPE2: 徒 Setto セット + TCON: Cypher Rap + TRCK: '4' + Comment: Cover art and music by To Setto Setto + TYER: '2019' +--- diff --git a/_tracks/darkweb/2-darkweb.md b/_tracks/darkweb/2-darkweb.md new file mode 100644 index 0000000..16ac6c1 --- /dev/null +++ b/_tracks/darkweb/2-darkweb.md @@ -0,0 +1,446 @@ +--- +layout: track +path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/2-darkweb.mp3 +audio: /assets/albums/darkweb/2-darkweb.mp3 +slug: darkweb/2-darkweb +albumSlug: darkweb +trackSlug: 2-darkweb +coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/2-darkweb.jpeg +cover: /assets/albums/darkweb/2-darkweb.jpeg +format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 12566016 + duration: 284.94367346938776 +native: + ID3v2.3: + - id: TIT2 + value: Darkweb + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: Comment + text: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + - id: TALB + value: Darkweb + - id: TRCK + value: '2' + - id: TPE2 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: UNSYNCEDLYRICS + text: "Y'en a mare de ce web\r\nIl est tout pourri\r\nOn peu plus rien y faire\r\nSeulement pousser des cris\r\nQue personne va entendre\r\nSi t'as pas mille amis\r\nTa home-page va se pendre\r\nPerdu le goût de la vie\r\nEnvois ton Paypal\r\nJ'vais lui faire un refus\r\nAjoute-moi en ami\r\nTu vas kiffer mon flux\r\nViens pas faire ton vieux troll\r\nRien a foutre de toi\r\nT’écris de belles paroles\r\nRien à foutre de toi\r\nPuis au fond de ce noire\r\nJe vois un rayon\r\nUn programme provisoire\r\nPour poser mes sillons\r\nY a une communauté\r\nDe gens mal intégrés\r\nIl sont tous comme moi\r\nMais encore plus tarés\r\nProtocole anonyme\r\nConnexion en chiffré\r\nP2P solidaire\r\nConnexion certifiée\r\nLittéraire digital\r\nTu vas aussi kiffer\r\nÇa s'appelle le Darkweb\r\nTu vas aussi kiffer\r\n\r\nFacegoogle aux gogues\r\nY a plus que des conneries\r\nPropagande démagogue\r\nPetits chats tous mimis\r\nMais c'est quoi cette shit\r\nÇa veut plus rien dire\r\nLes keums envoient leurs bites\r\nComme si elles allaient applaudir\r\nNon! C'est trop con\r\nJe veux pas participer\r\nMais si je joue pas le jeux\r\nJe vais être abandonné\r\nPlus personne entendra\r\nTout ce que j'ai à crier\r\nPlus personne ne lira\r\nTout ce que j'ai à crier\r\nPuis au bout du tunnel\r\nJe vois une lueur étrange\r\nCelle d'un réseau fermé\r\nQui reste ouvert au strange\r\nUn lieu virtuel\r\nUne cité idéelle\r\nUne banque de données\r\nPour les mal intégrés\r\nJe peux y être qui je veux\r\nUn antichrist bien pleb\r\nAvoir beaucoup de cheveux\r\nUn intello du Zagreb\r\nT'as besoin d'faire entendre\r\nTu vas aussi kiffer\r\nLa clef tu peux la prendre\r\nTu vas aussi kiffer" + - id: TCON + value: Cypher Rap + - id: TYER + value: '2019' +quality: + warnings: [] +common: + track: + 'no': 2 + of: null + disk: + 'no': null + of: null + title: Darkweb + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + - "Y'en a mare de ce web\r\nIl est tout pourri\r\nOn peu plus rien y faire\r\nSeulement pousser des cris\r\nQue personne va entendre\r\nSi t'as pas mille amis\r\nTa home-page va se pendre\r\nPerdu le goût de la vie\r\nEnvois ton Paypal\r\nJ'vais lui faire un refus\r\nAjoute-moi en ami\r\nTu vas kiffer mon flux\r\nViens pas faire ton vieux troll\r\nRien a foutre de toi\r\nT’écris de belles paroles\r\nRien à foutre de toi\r\nPuis au fond de ce noire\r\nJe vois un rayon\r\nUn programme provisoire\r\nPour poser mes sillons\r\nY a une communauté\r\nDe gens mal intégrés\r\nIl sont tous comme moi\r\nMais encore plus tarés\r\nProtocole anonyme\r\nConnexion en chiffré\r\nP2P solidaire\r\nConnexion certifiée\r\nLittéraire digital\r\nTu vas aussi kiffer\r\nÇa s'appelle le Darkweb\r\nTu vas aussi kiffer\r\n\r\nFacegoogle aux gogues\r\nY a plus que des conneries\r\nPropagande démagogue\r\nPetits chats tous mimis\r\nMais c'est quoi cette shit\r\nÇa veut plus rien dire\r\nLes keums envoient leurs bites\r\nComme si elles allaient applaudir\r\nNon! C'est trop con\r\nJe veux pas participer\r\nMais si je joue pas le jeux\r\nJe vais être abandonné\r\nPlus personne entendra\r\nTout ce que j'ai à crier\r\nPlus personne ne lira\r\nTout ce que j'ai à crier\r\nPuis au bout du tunnel\r\nJe vois une lueur étrange\r\nCelle d'un réseau fermé\r\nQui reste ouvert au strange\r\nUn lieu virtuel\r\nUne cité idéelle\r\nUne banque de données\r\nPour les mal intégrés\r\nJe peux y être qui je veux\r\nUn antichrist bien pleb\r\nAvoir beaucoup de cheveux\r\nUn intello du Zagreb\r\nT'as besoin d'faire entendre\r\nTu vas aussi kiffer\r\nLa clef tu peux la prendre\r\nTu vas aussi kiffer" + album: Darkweb + albumartist: 徒 Setto セット + genre: + - Cypher Rap + year: 2019 +transformed: + ID3v2.3: + TIT2: Darkweb + TPE1: 徒 Setto セット + Comment: 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + TALB: Darkweb + TRCK: '2' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Y'en a mare de ce web\r\nIl est tout pourri\r\nOn peu plus rien y faire\r\nSeulement pousser des cris\r\nQue personne va entendre\r\nSi t'as pas mille amis\r\nTa home-page va se pendre\r\nPerdu le goût de la vie\r\nEnvois ton Paypal\r\nJ'vais lui faire un refus\r\nAjoute-moi en ami\r\nTu vas kiffer mon flux\r\nViens pas faire ton vieux troll\r\nRien a foutre de toi\r\nT’écris de belles paroles\r\nRien à foutre de toi\r\nPuis au fond de ce noire\r\nJe vois un rayon\r\nUn programme provisoire\r\nPour poser mes sillons\r\nY a une communauté\r\nDe gens mal intégrés\r\nIl sont tous comme moi\r\nMais encore plus tarés\r\nProtocole anonyme\r\nConnexion en chiffré\r\nP2P solidaire\r\nConnexion certifiée\r\nLittéraire digital\r\nTu vas aussi kiffer\r\nÇa s'appelle le Darkweb\r\nTu vas aussi kiffer\r\n\r\nFacegoogle aux gogues\r\nY a plus que des conneries\r\nPropagande démagogue\r\nPetits chats tous mimis\r\nMais c'est quoi cette shit\r\nÇa veut plus rien dire\r\nLes keums envoient leurs bites\r\nComme si elles allaient applaudir\r\nNon! C'est trop con\r\nJe veux pas participer\r\nMais si je joue pas le jeux\r\nJe vais être abandonné\r\nPlus personne entendra\r\nTout ce que j'ai à crier\r\nPlus personne ne lira\r\nTout ce que j'ai à crier\r\nPuis au bout du tunnel\r\nJe vois une lueur étrange\r\nCelle d'un réseau fermé\r\nQui reste ouvert au strange\r\nUn lieu virtuel\r\nUne cité idéelle\r\nUne banque de données\r\nPour les mal intégrés\r\nJe peux y être qui je veux\r\nUn antichrist bien pleb\r\nAvoir beaucoup de cheveux\r\nUn intello du Zagreb\r\nT'as besoin d'faire entendre\r\nTu vas aussi kiffer\r\nLa clef tu peux la prendre\r\nTu vas aussi kiffer" + TCON: Cypher Rap + TYER: '2019' +all: + TIT2: Darkweb + TPE1: 徒 Setto セット + Comment: 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + TALB: Darkweb + TRCK: '2' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Y'en a mare de ce web\r\nIl est tout pourri\r\nOn peu plus rien y faire\r\nSeulement pousser des cris\r\nQue personne va entendre\r\nSi t'as pas mille amis\r\nTa home-page va se pendre\r\nPerdu le goût de la vie\r\nEnvois ton Paypal\r\nJ'vais lui faire un refus\r\nAjoute-moi en ami\r\nTu vas kiffer mon flux\r\nViens pas faire ton vieux troll\r\nRien a foutre de toi\r\nT’écris de belles paroles\r\nRien à foutre de toi\r\nPuis au fond de ce noire\r\nJe vois un rayon\r\nUn programme provisoire\r\nPour poser mes sillons\r\nY a une communauté\r\nDe gens mal intégrés\r\nIl sont tous comme moi\r\nMais encore plus tarés\r\nProtocole anonyme\r\nConnexion en chiffré\r\nP2P solidaire\r\nConnexion certifiée\r\nLittéraire digital\r\nTu vas aussi kiffer\r\nÇa s'appelle le Darkweb\r\nTu vas aussi kiffer\r\n\r\nFacegoogle aux gogues\r\nY a plus que des conneries\r\nPropagande démagogue\r\nPetits chats tous mimis\r\nMais c'est quoi cette shit\r\nÇa veut plus rien dire\r\nLes keums envoient leurs bites\r\nComme si elles allaient applaudir\r\nNon! C'est trop con\r\nJe veux pas participer\r\nMais si je joue pas le jeux\r\nJe vais être abandonné\r\nPlus personne entendra\r\nTout ce que j'ai à crier\r\nPlus personne ne lira\r\nTout ce que j'ai à crier\r\nPuis au bout du tunnel\r\nJe vois une lueur étrange\r\nCelle d'un réseau fermé\r\nQui reste ouvert au strange\r\nUn lieu virtuel\r\nUne cité idéelle\r\nUne banque de données\r\nPour les mal intégrés\r\nJe peux y être qui je veux\r\nUn antichrist bien pleb\r\nAvoir beaucoup de cheveux\r\nUn intello du Zagreb\r\nT'as besoin d'faire entendre\r\nTu vas aussi kiffer\r\nLa clef tu peux la prendre\r\nTu vas aussi kiffer" + TCON: Cypher Rap + TYER: '2019' +nextTrack: + path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/3-swipe-instrumental-.mp3 + audio: /assets/albums/darkweb/3-swipe-instrumental-.mp3 + slug: darkweb/3-swipe-instrumental- + albumSlug: darkweb + trackSlug: 3-swipe-instrumental- + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/3-swipe-instrumental-.jpeg + cover: /assets/albums/darkweb/3-swipe-instrumental-.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 12436992 + duration: 282.0179591836735 + native: + ID3v2.3: + - id: TIT2 + value: Swipe (Instrumental) + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: Comment + text: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + - id: TALB + value: Darkweb + - id: TRCK + value: '3' + - id: TPE2 + value: 徒 Setto セット + - id: TCON + value: Cyber Soul + - id: TYER + value: '2019' + quality: + warnings: + - message: Illegal ID3v2 tag length + common: + track: + 'no': 3 + of: null + disk: + 'no': null + of: null + title: Swipe (Instrumental) + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + album: Darkweb + albumartist: 徒 Setto セット + genre: + - Cyber Soul + year: 2019 + transformed: + ID3v2.3: + TIT2: Swipe (Instrumental) + TPE1: 徒 Setto セット + Comment: 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + TALB: Darkweb + TRCK: '3' + TPE2: 徒 Setto セット + TCON: Cyber Soul + TYER: '2019' + all: + TIT2: Swipe (Instrumental) + TPE1: 徒 Setto セット + Comment: 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + TALB: Darkweb + TRCK: '3' + TPE2: 徒 Setto セット + TCON: Cyber Soul + TYER: '2019' +previousTrack: + path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/1-swipe.mp3 + audio: /assets/albums/darkweb/1-swipe.mp3 + slug: darkweb/1-swipe + albumSlug: darkweb + trackSlug: 1-swipe + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/1-swipe.jpeg + cover: /assets/albums/darkweb/1-swipe.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 12388608 + duration: 280.9208163265306 + native: + ID3v2.3: + - id: TIT2 + value: Swipe + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: Comment + text: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + - id: TALB + value: Darkweb + - id: TRCK + value: '1' + - id: TPE2 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: UNSYNCEDLYRICS + text: >- + Comme tous les après-midis, Assis dans le tram en face d'une jolie + vie, + + Sur mon écran elles sont encore plus sexy. + + Swipe à gauche swipe à droite, + + Celle-ci a l'aire plutôt maladroite, + + Ça m'irait bien ça. + + Mais la personne en face de moi, + + Elle me matte, elle me mire. + + Je ne sais pas quoi faire, + + Qu'est-ce que je vais lui dire? + + Elle a de belles dents! + + Je vais retourner a mon écran. + + je n'ai simplement, + + Pas assez de cran. + + + Je swipe à droite, + + Je swipe à gauche, + + Je yeuxt vers l'avant de temps en temps. + + + Si seulement elle voyait mon flux, + + Je suis sur qu'elle n'en pourrait plus! + + Comment je fais pour l'ajouter? + + Est-ce que Google pourrait la trouver? + + Hashtag jolitram, + + Faudrait que ça devienne viral sur Instagram. + + Ensemble on aurait peut-être un avenir! + + Mais comment coño vais-je lui dire? + + Merde elle appuie sur arrêt! + + Je lui tend mon casque ça le fait! + + Elle donne le siens truc de ouf?! + + Hésitations je m'immisce. + + Cette personne écoute de la bonne musique de glisse. + + + Je swipe à droite, + + Je swipe à gauche, + + Je yeuxt vers l'avant de temps en temps. + - id: TCON + value: Cyber Soul + - id: TYER + value: '2019' + quality: + warnings: [] + common: + track: + 'no': 1 + of: null + disk: + 'no': null + of: null + title: Swipe + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + - |- + Comme tous les après-midis, Assis dans le tram en face d'une jolie vie, + Sur mon écran elles sont encore plus sexy. + Swipe à gauche swipe à droite, + Celle-ci a l'aire plutôt maladroite, + Ça m'irait bien ça. + Mais la personne en face de moi, + Elle me matte, elle me mire. + Je ne sais pas quoi faire, + Qu'est-ce que je vais lui dire? + Elle a de belles dents! + Je vais retourner a mon écran. + je n'ai simplement, + Pas assez de cran. + + Je swipe à droite, + Je swipe à gauche, + Je yeuxt vers l'avant de temps en temps. + + Si seulement elle voyait mon flux, + Je suis sur qu'elle n'en pourrait plus! + Comment je fais pour l'ajouter? + Est-ce que Google pourrait la trouver? + Hashtag jolitram, + Faudrait que ça devienne viral sur Instagram. + Ensemble on aurait peut-être un avenir! + Mais comment coño vais-je lui dire? + Merde elle appuie sur arrêt! + Je lui tend mon casque ça le fait! + Elle donne le siens truc de ouf?! + Hésitations je m'immisce. + Cette personne écoute de la bonne musique de glisse. + + Je swipe à droite, + Je swipe à gauche, + Je yeuxt vers l'avant de temps en temps. + album: Darkweb + albumartist: 徒 Setto セット + genre: + - Cyber Soul + year: 2019 + transformed: + ID3v2.3: + TIT2: Swipe + TPE1: 徒 Setto セット + Comment: 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + TALB: Darkweb + TRCK: '1' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: |- + Comme tous les après-midis, Assis dans le tram en face d'une jolie vie, + Sur mon écran elles sont encore plus sexy. + Swipe à gauche swipe à droite, + Celle-ci a l'aire plutôt maladroite, + Ça m'irait bien ça. + Mais la personne en face de moi, + Elle me matte, elle me mire. + Je ne sais pas quoi faire, + Qu'est-ce que je vais lui dire? + Elle a de belles dents! + Je vais retourner a mon écran. + je n'ai simplement, + Pas assez de cran. + + Je swipe à droite, + Je swipe à gauche, + Je yeuxt vers l'avant de temps en temps. + + Si seulement elle voyait mon flux, + Je suis sur qu'elle n'en pourrait plus! + Comment je fais pour l'ajouter? + Est-ce que Google pourrait la trouver? + Hashtag jolitram, + Faudrait que ça devienne viral sur Instagram. + Ensemble on aurait peut-être un avenir! + Mais comment coño vais-je lui dire? + Merde elle appuie sur arrêt! + Je lui tend mon casque ça le fait! + Elle donne le siens truc de ouf?! + Hésitations je m'immisce. + Cette personne écoute de la bonne musique de glisse. + + Je swipe à droite, + Je swipe à gauche, + Je yeuxt vers l'avant de temps en temps. + TCON: Cyber Soul + TYER: '2019' + all: + TIT2: Swipe + TPE1: 徒 Setto セット + Comment: 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + TALB: Darkweb + TRCK: '1' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: |- + Comme tous les après-midis, Assis dans le tram en face d'une jolie vie, + Sur mon écran elles sont encore plus sexy. + Swipe à gauche swipe à droite, + Celle-ci a l'aire plutôt maladroite, + Ça m'irait bien ça. + Mais la personne en face de moi, + Elle me matte, elle me mire. + Je ne sais pas quoi faire, + Qu'est-ce que je vais lui dire? + Elle a de belles dents! + Je vais retourner a mon écran. + je n'ai simplement, + Pas assez de cran. + + Je swipe à droite, + Je swipe à gauche, + Je yeuxt vers l'avant de temps en temps. + + Si seulement elle voyait mon flux, + Je suis sur qu'elle n'en pourrait plus! + Comment je fais pour l'ajouter? + Est-ce que Google pourrait la trouver? + Hashtag jolitram, + Faudrait que ça devienne viral sur Instagram. + Ensemble on aurait peut-être un avenir! + Mais comment coño vais-je lui dire? + Merde elle appuie sur arrêt! + Je lui tend mon casque ça le fait! + Elle donne le siens truc de ouf?! + Hésitations je m'immisce. + Cette personne écoute de la bonne musique de glisse. + + Je swipe à droite, + Je swipe à gauche, + Je yeuxt vers l'avant de temps en temps. + TCON: Cyber Soul + TYER: '2019' +--- diff --git a/_tracks/darkweb/3-swipe-instrumental-.md b/_tracks/darkweb/3-swipe-instrumental-.md new file mode 100644 index 0000000..1df75be --- /dev/null +++ b/_tracks/darkweb/3-swipe-instrumental-.md @@ -0,0 +1,272 @@ +--- +layout: track +path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/3-swipe-instrumental-.mp3 +audio: /assets/albums/darkweb/3-swipe-instrumental-.mp3 +slug: darkweb/3-swipe-instrumental- +albumSlug: darkweb +trackSlug: 3-swipe-instrumental- +coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/3-swipe-instrumental-.jpeg +cover: /assets/albums/darkweb/3-swipe-instrumental-.jpeg +format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 12436992 + duration: 282.0179591836735 +native: + ID3v2.3: + - id: TIT2 + value: Swipe (Instrumental) + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: Comment + text: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + - id: TALB + value: Darkweb + - id: TRCK + value: '3' + - id: TPE2 + value: 徒 Setto セット + - id: TCON + value: Cyber Soul + - id: TYER + value: '2019' +quality: + warnings: + - message: Illegal ID3v2 tag length +common: + track: + 'no': 3 + of: null + disk: + 'no': null + of: null + title: Swipe (Instrumental) + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + album: Darkweb + albumartist: 徒 Setto セット + genre: + - Cyber Soul + year: 2019 +transformed: + ID3v2.3: + TIT2: Swipe (Instrumental) + TPE1: 徒 Setto セット + Comment: 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + TALB: Darkweb + TRCK: '3' + TPE2: 徒 Setto セット + TCON: Cyber Soul + TYER: '2019' +all: + TIT2: Swipe (Instrumental) + TPE1: 徒 Setto セット + Comment: 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + TALB: Darkweb + TRCK: '3' + TPE2: 徒 Setto セット + TCON: Cyber Soul + TYER: '2019' +nextTrack: + path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/4-darkweb-instrumental-.mp3 + audio: /assets/albums/darkweb/4-darkweb-instrumental-.mp3 + slug: darkweb/4-darkweb-instrumental- + albumSlug: darkweb + trackSlug: 4-darkweb-instrumental- + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/4-darkweb-instrumental-.jpeg + cover: /assets/albums/darkweb/4-darkweb-instrumental-.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 12526848 + duration: 284.05551020408166 + native: + ID3v2.3: + - id: TIT2 + value: Darkweb (Instrumental) + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: &ref_0 + language: XXX + description: '' + text: '' + - id: TALB + value: Darkweb + - id: TPE2 + value: 徒 Setto セット + - id: TCON + value: Cypher Rap + - id: TRCK + value: '4' + - id: COMM + value: + language: XXX + description: Comment + text: Cover art and music by To Setto Setto + - id: TYER + value: '2019' + quality: + warnings: [] + common: + track: + 'no': 4 + of: null + disk: + 'no': null + of: null + title: Darkweb (Instrumental) + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - '' + - Cover art and music by To Setto Setto + album: Darkweb + albumartist: 徒 Setto セット + genre: + - Cypher Rap + year: 2019 + transformed: + ID3v2.3: + TIT2: Darkweb (Instrumental) + TPE1: 徒 Setto セット + COMM: *ref_0 + TALB: Darkweb + TPE2: 徒 Setto セット + TCON: Cypher Rap + TRCK: '4' + Comment: Cover art and music by To Setto Setto + TYER: '2019' + all: + TIT2: Darkweb (Instrumental) + TPE1: 徒 Setto セット + COMM: *ref_0 + TALB: Darkweb + TPE2: 徒 Setto セット + TCON: Cypher Rap + TRCK: '4' + Comment: Cover art and music by To Setto Setto + TYER: '2019' +previousTrack: + path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/2-darkweb.mp3 + audio: /assets/albums/darkweb/2-darkweb.mp3 + slug: darkweb/2-darkweb + albumSlug: darkweb + trackSlug: 2-darkweb + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/2-darkweb.jpeg + cover: /assets/albums/darkweb/2-darkweb.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 12566016 + duration: 284.94367346938776 + native: + ID3v2.3: + - id: TIT2 + value: Darkweb + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: Comment + text: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + - id: TALB + value: Darkweb + - id: TRCK + value: '2' + - id: TPE2 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: UNSYNCEDLYRICS + text: "Y'en a mare de ce web\r\nIl est tout pourri\r\nOn peu plus rien y faire\r\nSeulement pousser des cris\r\nQue personne va entendre\r\nSi t'as pas mille amis\r\nTa home-page va se pendre\r\nPerdu le goût de la vie\r\nEnvois ton Paypal\r\nJ'vais lui faire un refus\r\nAjoute-moi en ami\r\nTu vas kiffer mon flux\r\nViens pas faire ton vieux troll\r\nRien a foutre de toi\r\nT’écris de belles paroles\r\nRien à foutre de toi\r\nPuis au fond de ce noire\r\nJe vois un rayon\r\nUn programme provisoire\r\nPour poser mes sillons\r\nY a une communauté\r\nDe gens mal intégrés\r\nIl sont tous comme moi\r\nMais encore plus tarés\r\nProtocole anonyme\r\nConnexion en chiffré\r\nP2P solidaire\r\nConnexion certifiée\r\nLittéraire digital\r\nTu vas aussi kiffer\r\nÇa s'appelle le Darkweb\r\nTu vas aussi kiffer\r\n\r\nFacegoogle aux gogues\r\nY a plus que des conneries\r\nPropagande démagogue\r\nPetits chats tous mimis\r\nMais c'est quoi cette shit\r\nÇa veut plus rien dire\r\nLes keums envoient leurs bites\r\nComme si elles allaient applaudir\r\nNon! C'est trop con\r\nJe veux pas participer\r\nMais si je joue pas le jeux\r\nJe vais être abandonné\r\nPlus personne entendra\r\nTout ce que j'ai à crier\r\nPlus personne ne lira\r\nTout ce que j'ai à crier\r\nPuis au bout du tunnel\r\nJe vois une lueur étrange\r\nCelle d'un réseau fermé\r\nQui reste ouvert au strange\r\nUn lieu virtuel\r\nUne cité idéelle\r\nUne banque de données\r\nPour les mal intégrés\r\nJe peux y être qui je veux\r\nUn antichrist bien pleb\r\nAvoir beaucoup de cheveux\r\nUn intello du Zagreb\r\nT'as besoin d'faire entendre\r\nTu vas aussi kiffer\r\nLa clef tu peux la prendre\r\nTu vas aussi kiffer" + - id: TCON + value: Cypher Rap + - id: TYER + value: '2019' + quality: + warnings: [] + common: + track: + 'no': 2 + of: null + disk: + 'no': null + of: null + title: Darkweb + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + - "Y'en a mare de ce web\r\nIl est tout pourri\r\nOn peu plus rien y faire\r\nSeulement pousser des cris\r\nQue personne va entendre\r\nSi t'as pas mille amis\r\nTa home-page va se pendre\r\nPerdu le goût de la vie\r\nEnvois ton Paypal\r\nJ'vais lui faire un refus\r\nAjoute-moi en ami\r\nTu vas kiffer mon flux\r\nViens pas faire ton vieux troll\r\nRien a foutre de toi\r\nT’écris de belles paroles\r\nRien à foutre de toi\r\nPuis au fond de ce noire\r\nJe vois un rayon\r\nUn programme provisoire\r\nPour poser mes sillons\r\nY a une communauté\r\nDe gens mal intégrés\r\nIl sont tous comme moi\r\nMais encore plus tarés\r\nProtocole anonyme\r\nConnexion en chiffré\r\nP2P solidaire\r\nConnexion certifiée\r\nLittéraire digital\r\nTu vas aussi kiffer\r\nÇa s'appelle le Darkweb\r\nTu vas aussi kiffer\r\n\r\nFacegoogle aux gogues\r\nY a plus que des conneries\r\nPropagande démagogue\r\nPetits chats tous mimis\r\nMais c'est quoi cette shit\r\nÇa veut plus rien dire\r\nLes keums envoient leurs bites\r\nComme si elles allaient applaudir\r\nNon! C'est trop con\r\nJe veux pas participer\r\nMais si je joue pas le jeux\r\nJe vais être abandonné\r\nPlus personne entendra\r\nTout ce que j'ai à crier\r\nPlus personne ne lira\r\nTout ce que j'ai à crier\r\nPuis au bout du tunnel\r\nJe vois une lueur étrange\r\nCelle d'un réseau fermé\r\nQui reste ouvert au strange\r\nUn lieu virtuel\r\nUne cité idéelle\r\nUne banque de données\r\nPour les mal intégrés\r\nJe peux y être qui je veux\r\nUn antichrist bien pleb\r\nAvoir beaucoup de cheveux\r\nUn intello du Zagreb\r\nT'as besoin d'faire entendre\r\nTu vas aussi kiffer\r\nLa clef tu peux la prendre\r\nTu vas aussi kiffer" + album: Darkweb + albumartist: 徒 Setto セット + genre: + - Cypher Rap + year: 2019 + transformed: + ID3v2.3: + TIT2: Darkweb + TPE1: 徒 Setto セット + Comment: 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + TALB: Darkweb + TRCK: '2' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Y'en a mare de ce web\r\nIl est tout pourri\r\nOn peu plus rien y faire\r\nSeulement pousser des cris\r\nQue personne va entendre\r\nSi t'as pas mille amis\r\nTa home-page va se pendre\r\nPerdu le goût de la vie\r\nEnvois ton Paypal\r\nJ'vais lui faire un refus\r\nAjoute-moi en ami\r\nTu vas kiffer mon flux\r\nViens pas faire ton vieux troll\r\nRien a foutre de toi\r\nT’écris de belles paroles\r\nRien à foutre de toi\r\nPuis au fond de ce noire\r\nJe vois un rayon\r\nUn programme provisoire\r\nPour poser mes sillons\r\nY a une communauté\r\nDe gens mal intégrés\r\nIl sont tous comme moi\r\nMais encore plus tarés\r\nProtocole anonyme\r\nConnexion en chiffré\r\nP2P solidaire\r\nConnexion certifiée\r\nLittéraire digital\r\nTu vas aussi kiffer\r\nÇa s'appelle le Darkweb\r\nTu vas aussi kiffer\r\n\r\nFacegoogle aux gogues\r\nY a plus que des conneries\r\nPropagande démagogue\r\nPetits chats tous mimis\r\nMais c'est quoi cette shit\r\nÇa veut plus rien dire\r\nLes keums envoient leurs bites\r\nComme si elles allaient applaudir\r\nNon! C'est trop con\r\nJe veux pas participer\r\nMais si je joue pas le jeux\r\nJe vais être abandonné\r\nPlus personne entendra\r\nTout ce que j'ai à crier\r\nPlus personne ne lira\r\nTout ce que j'ai à crier\r\nPuis au bout du tunnel\r\nJe vois une lueur étrange\r\nCelle d'un réseau fermé\r\nQui reste ouvert au strange\r\nUn lieu virtuel\r\nUne cité idéelle\r\nUne banque de données\r\nPour les mal intégrés\r\nJe peux y être qui je veux\r\nUn antichrist bien pleb\r\nAvoir beaucoup de cheveux\r\nUn intello du Zagreb\r\nT'as besoin d'faire entendre\r\nTu vas aussi kiffer\r\nLa clef tu peux la prendre\r\nTu vas aussi kiffer" + TCON: Cypher Rap + TYER: '2019' + all: + TIT2: Darkweb + TPE1: 徒 Setto セット + Comment: 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + TALB: Darkweb + TRCK: '2' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Y'en a mare de ce web\r\nIl est tout pourri\r\nOn peu plus rien y faire\r\nSeulement pousser des cris\r\nQue personne va entendre\r\nSi t'as pas mille amis\r\nTa home-page va se pendre\r\nPerdu le goût de la vie\r\nEnvois ton Paypal\r\nJ'vais lui faire un refus\r\nAjoute-moi en ami\r\nTu vas kiffer mon flux\r\nViens pas faire ton vieux troll\r\nRien a foutre de toi\r\nT’écris de belles paroles\r\nRien à foutre de toi\r\nPuis au fond de ce noire\r\nJe vois un rayon\r\nUn programme provisoire\r\nPour poser mes sillons\r\nY a une communauté\r\nDe gens mal intégrés\r\nIl sont tous comme moi\r\nMais encore plus tarés\r\nProtocole anonyme\r\nConnexion en chiffré\r\nP2P solidaire\r\nConnexion certifiée\r\nLittéraire digital\r\nTu vas aussi kiffer\r\nÇa s'appelle le Darkweb\r\nTu vas aussi kiffer\r\n\r\nFacegoogle aux gogues\r\nY a plus que des conneries\r\nPropagande démagogue\r\nPetits chats tous mimis\r\nMais c'est quoi cette shit\r\nÇa veut plus rien dire\r\nLes keums envoient leurs bites\r\nComme si elles allaient applaudir\r\nNon! C'est trop con\r\nJe veux pas participer\r\nMais si je joue pas le jeux\r\nJe vais être abandonné\r\nPlus personne entendra\r\nTout ce que j'ai à crier\r\nPlus personne ne lira\r\nTout ce que j'ai à crier\r\nPuis au bout du tunnel\r\nJe vois une lueur étrange\r\nCelle d'un réseau fermé\r\nQui reste ouvert au strange\r\nUn lieu virtuel\r\nUne cité idéelle\r\nUne banque de données\r\nPour les mal intégrés\r\nJe peux y être qui je veux\r\nUn antichrist bien pleb\r\nAvoir beaucoup de cheveux\r\nUn intello du Zagreb\r\nT'as besoin d'faire entendre\r\nTu vas aussi kiffer\r\nLa clef tu peux la prendre\r\nTu vas aussi kiffer" + TCON: Cypher Rap + TYER: '2019' +--- diff --git a/_tracks/darkweb/4-darkweb-instrumental-.md b/_tracks/darkweb/4-darkweb-instrumental-.md new file mode 100644 index 0000000..bc589cd --- /dev/null +++ b/_tracks/darkweb/4-darkweb-instrumental-.md @@ -0,0 +1,444 @@ +--- +layout: track +path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/4-darkweb-instrumental-.mp3 +audio: /assets/albums/darkweb/4-darkweb-instrumental-.mp3 +slug: darkweb/4-darkweb-instrumental- +albumSlug: darkweb +trackSlug: 4-darkweb-instrumental- +coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/4-darkweb-instrumental-.jpeg +cover: /assets/albums/darkweb/4-darkweb-instrumental-.jpeg +format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 12526848 + duration: 284.05551020408166 +native: + ID3v2.3: + - id: TIT2 + value: Darkweb (Instrumental) + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: &ref_0 + language: XXX + description: '' + text: '' + - id: TALB + value: Darkweb + - id: TPE2 + value: 徒 Setto セット + - id: TCON + value: Cypher Rap + - id: TRCK + value: '4' + - id: COMM + value: + language: XXX + description: Comment + text: Cover art and music by To Setto Setto + - id: TYER + value: '2019' +quality: + warnings: [] +common: + track: + 'no': 4 + of: null + disk: + 'no': null + of: null + title: Darkweb (Instrumental) + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - '' + - Cover art and music by To Setto Setto + album: Darkweb + albumartist: 徒 Setto セット + genre: + - Cypher Rap + year: 2019 +transformed: + ID3v2.3: + TIT2: Darkweb (Instrumental) + TPE1: 徒 Setto セット + COMM: *ref_0 + TALB: Darkweb + TPE2: 徒 Setto セット + TCON: Cypher Rap + TRCK: '4' + Comment: Cover art and music by To Setto Setto + TYER: '2019' +all: + TIT2: Darkweb (Instrumental) + TPE1: 徒 Setto セット + COMM: *ref_0 + TALB: Darkweb + TPE2: 徒 Setto セット + TCON: Cypher Rap + TRCK: '4' + Comment: Cover art and music by To Setto Setto + TYER: '2019' +nextTrack: + path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/1-swipe.mp3 + audio: /assets/albums/darkweb/1-swipe.mp3 + slug: darkweb/1-swipe + albumSlug: darkweb + trackSlug: 1-swipe + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/1-swipe.jpeg + cover: /assets/albums/darkweb/1-swipe.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 12388608 + duration: 280.9208163265306 + native: + ID3v2.3: + - id: TIT2 + value: Swipe + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: Comment + text: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + - id: TALB + value: Darkweb + - id: TRCK + value: '1' + - id: TPE2 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: UNSYNCEDLYRICS + text: >- + Comme tous les après-midis, Assis dans le tram en face d'une jolie + vie, + + Sur mon écran elles sont encore plus sexy. + + Swipe à gauche swipe à droite, + + Celle-ci a l'aire plutôt maladroite, + + Ça m'irait bien ça. + + Mais la personne en face de moi, + + Elle me matte, elle me mire. + + Je ne sais pas quoi faire, + + Qu'est-ce que je vais lui dire? + + Elle a de belles dents! + + Je vais retourner a mon écran. + + je n'ai simplement, + + Pas assez de cran. + + + Je swipe à droite, + + Je swipe à gauche, + + Je yeuxt vers l'avant de temps en temps. + + + Si seulement elle voyait mon flux, + + Je suis sur qu'elle n'en pourrait plus! + + Comment je fais pour l'ajouter? + + Est-ce que Google pourrait la trouver? + + Hashtag jolitram, + + Faudrait que ça devienne viral sur Instagram. + + Ensemble on aurait peut-être un avenir! + + Mais comment coño vais-je lui dire? + + Merde elle appuie sur arrêt! + + Je lui tend mon casque ça le fait! + + Elle donne le siens truc de ouf?! + + Hésitations je m'immisce. + + Cette personne écoute de la bonne musique de glisse. + + + Je swipe à droite, + + Je swipe à gauche, + + Je yeuxt vers l'avant de temps en temps. + - id: TCON + value: Cyber Soul + - id: TYER + value: '2019' + quality: + warnings: [] + common: + track: + 'no': 1 + of: null + disk: + 'no': null + of: null + title: Swipe + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + - |- + Comme tous les après-midis, Assis dans le tram en face d'une jolie vie, + Sur mon écran elles sont encore plus sexy. + Swipe à gauche swipe à droite, + Celle-ci a l'aire plutôt maladroite, + Ça m'irait bien ça. + Mais la personne en face de moi, + Elle me matte, elle me mire. + Je ne sais pas quoi faire, + Qu'est-ce que je vais lui dire? + Elle a de belles dents! + Je vais retourner a mon écran. + je n'ai simplement, + Pas assez de cran. + + Je swipe à droite, + Je swipe à gauche, + Je yeuxt vers l'avant de temps en temps. + + Si seulement elle voyait mon flux, + Je suis sur qu'elle n'en pourrait plus! + Comment je fais pour l'ajouter? + Est-ce que Google pourrait la trouver? + Hashtag jolitram, + Faudrait que ça devienne viral sur Instagram. + Ensemble on aurait peut-être un avenir! + Mais comment coño vais-je lui dire? + Merde elle appuie sur arrêt! + Je lui tend mon casque ça le fait! + Elle donne le siens truc de ouf?! + Hésitations je m'immisce. + Cette personne écoute de la bonne musique de glisse. + + Je swipe à droite, + Je swipe à gauche, + Je yeuxt vers l'avant de temps en temps. + album: Darkweb + albumartist: 徒 Setto セット + genre: + - Cyber Soul + year: 2019 + transformed: + ID3v2.3: + TIT2: Swipe + TPE1: 徒 Setto セット + Comment: 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + TALB: Darkweb + TRCK: '1' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: |- + Comme tous les après-midis, Assis dans le tram en face d'une jolie vie, + Sur mon écran elles sont encore plus sexy. + Swipe à gauche swipe à droite, + Celle-ci a l'aire plutôt maladroite, + Ça m'irait bien ça. + Mais la personne en face de moi, + Elle me matte, elle me mire. + Je ne sais pas quoi faire, + Qu'est-ce que je vais lui dire? + Elle a de belles dents! + Je vais retourner a mon écran. + je n'ai simplement, + Pas assez de cran. + + Je swipe à droite, + Je swipe à gauche, + Je yeuxt vers l'avant de temps en temps. + + Si seulement elle voyait mon flux, + Je suis sur qu'elle n'en pourrait plus! + Comment je fais pour l'ajouter? + Est-ce que Google pourrait la trouver? + Hashtag jolitram, + Faudrait que ça devienne viral sur Instagram. + Ensemble on aurait peut-être un avenir! + Mais comment coño vais-je lui dire? + Merde elle appuie sur arrêt! + Je lui tend mon casque ça le fait! + Elle donne le siens truc de ouf?! + Hésitations je m'immisce. + Cette personne écoute de la bonne musique de glisse. + + Je swipe à droite, + Je swipe à gauche, + Je yeuxt vers l'avant de temps en temps. + TCON: Cyber Soul + TYER: '2019' + all: + TIT2: Swipe + TPE1: 徒 Setto セット + Comment: 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + TALB: Darkweb + TRCK: '1' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: |- + Comme tous les après-midis, Assis dans le tram en face d'une jolie vie, + Sur mon écran elles sont encore plus sexy. + Swipe à gauche swipe à droite, + Celle-ci a l'aire plutôt maladroite, + Ça m'irait bien ça. + Mais la personne en face de moi, + Elle me matte, elle me mire. + Je ne sais pas quoi faire, + Qu'est-ce que je vais lui dire? + Elle a de belles dents! + Je vais retourner a mon écran. + je n'ai simplement, + Pas assez de cran. + + Je swipe à droite, + Je swipe à gauche, + Je yeuxt vers l'avant de temps en temps. + + Si seulement elle voyait mon flux, + Je suis sur qu'elle n'en pourrait plus! + Comment je fais pour l'ajouter? + Est-ce que Google pourrait la trouver? + Hashtag jolitram, + Faudrait que ça devienne viral sur Instagram. + Ensemble on aurait peut-être un avenir! + Mais comment coño vais-je lui dire? + Merde elle appuie sur arrêt! + Je lui tend mon casque ça le fait! + Elle donne le siens truc de ouf?! + Hésitations je m'immisce. + Cette personne écoute de la bonne musique de glisse. + + Je swipe à droite, + Je swipe à gauche, + Je yeuxt vers l'avant de temps en temps. + TCON: Cyber Soul + TYER: '2019' +previousTrack: + path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/3-swipe-instrumental-.mp3 + audio: /assets/albums/darkweb/3-swipe-instrumental-.mp3 + slug: darkweb/3-swipe-instrumental- + albumSlug: darkweb + trackSlug: 3-swipe-instrumental- + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/darkweb/3-swipe-instrumental-.jpeg + cover: /assets/albums/darkweb/3-swipe-instrumental-.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 12436992 + duration: 282.0179591836735 + native: + ID3v2.3: + - id: TIT2 + value: Swipe (Instrumental) + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: Comment + text: >- + Cover art by Mattias Ritarn Lindström, Music by + To Setto Setto + - id: TALB + value: Darkweb + - id: TRCK + value: '3' + - id: TPE2 + value: 徒 Setto セット + - id: TCON + value: Cyber Soul + - id: TYER + value: '2019' + quality: + warnings: + - message: Illegal ID3v2 tag length + common: + track: + 'no': 3 + of: null + disk: + 'no': null + of: null + title: Swipe (Instrumental) + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + album: Darkweb + albumartist: 徒 Setto セット + genre: + - Cyber Soul + year: 2019 + transformed: + ID3v2.3: + TIT2: Swipe (Instrumental) + TPE1: 徒 Setto セット + Comment: 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + TALB: Darkweb + TRCK: '3' + TPE2: 徒 Setto セット + TCON: Cyber Soul + TYER: '2019' + all: + TIT2: Swipe (Instrumental) + TPE1: 徒 Setto セット + Comment: 'Cover art by Mattias Ritarn Lindström, Music by To Setto Setto' + TALB: Darkweb + TRCK: '3' + TPE2: 徒 Setto セット + TCON: Cyber Soul + TYER: '2019' +--- diff --git a/_tracks/live-with-hardware/1-ep-life-of-a-dudelini.md b/_tracks/live-with-hardware/1-ep-life-of-a-dudelini.md new file mode 100644 index 0000000..6d0260a --- /dev/null +++ b/_tracks/live-with-hardware/1-ep-life-of-a-dudelini.md @@ -0,0 +1,98 @@ +--- +layout: track +path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/live-with-hardware/1-ep-life-of-a-dudelini.mp3 +audio: /assets/albums/live-with-hardware/1-ep-life-of-a-dudelini.mp3 +slug: live-with-hardware/1-ep-life-of-a-dudelini +albumSlug: live-with-hardware +trackSlug: 1-ep-life-of-a-dudelini +coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/live-with-hardware/1-ep-life-of-a-dudelini.jpeg +cover: /assets/albums/live-with-hardware/1-ep-life-of-a-dudelini.jpeg +format: &ref_1 + tagTypes: + - ID3v2.4 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 48000 + numberOfChannels: 2 + bitrate: 192000 + codecProfile: CBR + tool: LAME3.100 + duration: 683.472 +native: &ref_2 + ID3v2.4: + - id: TIT2 + value: EP-Life of a Dudelini + - id: TPE1 + value: 徒 Setto セット + - id: TALB + value: Live with hardware + - id: COMM + value: &ref_0 + language: eng + description: '' + text: Live take + - id: TDRC + value: '2020-04-20' + - id: TRCK + value: '1' + - id: TCON + value: Cybersoul +quality: &ref_3 + warnings: [] +common: &ref_4 + track: + 'no': 1 + of: null + disk: + 'no': null + of: null + title: EP-Life of a Dudelini + artists: + - 徒 Setto セット + artist: 徒 Setto セット + album: Live with hardware + comment: + - Live take + year: 2020 + date: '2020-04-20' + genre: + - Cybersoul +transformed: &ref_5 + ID3v2.4: + TIT2: EP-Life of a Dudelini + TPE1: 徒 Setto セット + TALB: Live with hardware + COMM: *ref_0 + TDRC: '2020-04-20' + TRCK: '1' + TCON: Cybersoul +all: &ref_6 + TIT2: EP-Life of a Dudelini + TPE1: 徒 Setto セット + TALB: Live with hardware + COMM: *ref_0 + TDRC: '2020-04-20' + TRCK: '1' + TCON: Cybersoul +nextTrack: &ref_7 + path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/live-with-hardware/1-ep-life-of-a-dudelini.mp3 + audio: /assets/albums/live-with-hardware/1-ep-life-of-a-dudelini.mp3 + slug: live-with-hardware/1-ep-life-of-a-dudelini + albumSlug: live-with-hardware + trackSlug: 1-ep-life-of-a-dudelini + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/live-with-hardware/1-ep-life-of-a-dudelini.jpeg + cover: /assets/albums/live-with-hardware/1-ep-life-of-a-dudelini.jpeg + format: *ref_1 + native: *ref_2 + quality: *ref_3 + common: *ref_4 + transformed: *ref_5 + all: *ref_6 +previousTrack: *ref_7 +--- diff --git a/_tracks/satoshi-mon-ami/1-k-as-tu-fait-de-nous-.md b/_tracks/satoshi-mon-ami/1-k-as-tu-fait-de-nous-.md new file mode 100644 index 0000000..7ad5b3f --- /dev/null +++ b/_tracks/satoshi-mon-ami/1-k-as-tu-fait-de-nous-.md @@ -0,0 +1,185 @@ +--- +layout: track +path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/satoshi-mon-ami/1-k-as-tu-fait-de-nous-.mp3 +audio: /assets/albums/satoshi-mon-ami/1-k-as-tu-fait-de-nous-.mp3 +slug: satoshi-mon-ami/1-k-as-tu-fait-de-nous- +albumSlug: satoshi-mon-ami +trackSlug: 1-k-as-tu-fait-de-nous- +coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/satoshi-mon-ami/1-k-as-tu-fait-de-nous-.jpeg +cover: /assets/albums/satoshi-mon-ami/1-k-as-tu-fait-de-nous-.jpeg +format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 13433472 + duration: 304.6138775510204 +native: + ID3v2.3: + - id: TIT2 + value: K'as-tu fait de nous? + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: &ref_0 + language: XXX + description: '' + text: Cover art and music by To Setto Setto + - id: TALB + value: Satoshi mon ami + - id: TRCK + value: '1' + - id: TPE2 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: UNSYNCEDLYRICS + text: "Qu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\nAcid est la tribe\r\nCyberpunk le game\r\nSur des reseau de bribe\r\non fait monter le fame\r\nMeme pas besoin de files\r\nIsole sur l'iles\r\non fait un tour au grotte\r\npour pas que la story capotte\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\n\r\nSi la police nous ajoute\r\nNouvelle vie nouveau compte\r\nOn tourne le dos au toute\r\non delete sans honte\r\nMeme pas besoin d'ecrire\r\ntu peux mäentendre rire\r\nen tour de face a face\r\nQui brise la glace\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\n24 heures pour dechiffre\r\nOn dirait une invitation\r\nLa story que t'as balancer\r\nCryptokids une seul nation\r\ncelle des rave et du reve\r\nHilife a plein poumons\r\nLe flux n'as pas de treve\r\nEt en suede il mange du saumon\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou" + - id: TCON + value: Cyber Soul + - id: TYER + value: '2018' +quality: + warnings: [] +common: + track: + 'no': 1 + of: null + disk: + 'no': null + of: null + title: K'as-tu fait de nous? + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - Cover art and music by To Setto Setto + - "Qu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\nAcid est la tribe\r\nCyberpunk le game\r\nSur des reseau de bribe\r\non fait monter le fame\r\nMeme pas besoin de files\r\nIsole sur l'iles\r\non fait un tour au grotte\r\npour pas que la story capotte\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\n\r\nSi la police nous ajoute\r\nNouvelle vie nouveau compte\r\nOn tourne le dos au toute\r\non delete sans honte\r\nMeme pas besoin d'ecrire\r\ntu peux mäentendre rire\r\nen tour de face a face\r\nQui brise la glace\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\n24 heures pour dechiffre\r\nOn dirait une invitation\r\nLa story que t'as balancer\r\nCryptokids une seul nation\r\ncelle des rave et du reve\r\nHilife a plein poumons\r\nLe flux n'as pas de treve\r\nEt en suede il mange du saumon\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou" + album: Satoshi mon ami + albumartist: 徒 Setto セット + genre: + - Cyber Soul + year: 2018 +transformed: + ID3v2.3: + TIT2: K'as-tu fait de nous? + TPE1: 徒 Setto セット + COMM: *ref_0 + TALB: Satoshi mon ami + TRCK: '1' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Qu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\nAcid est la tribe\r\nCyberpunk le game\r\nSur des reseau de bribe\r\non fait monter le fame\r\nMeme pas besoin de files\r\nIsole sur l'iles\r\non fait un tour au grotte\r\npour pas que la story capotte\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\n\r\nSi la police nous ajoute\r\nNouvelle vie nouveau compte\r\nOn tourne le dos au toute\r\non delete sans honte\r\nMeme pas besoin d'ecrire\r\ntu peux mäentendre rire\r\nen tour de face a face\r\nQui brise la glace\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\n24 heures pour dechiffre\r\nOn dirait une invitation\r\nLa story que t'as balancer\r\nCryptokids une seul nation\r\ncelle des rave et du reve\r\nHilife a plein poumons\r\nLe flux n'as pas de treve\r\nEt en suede il mange du saumon\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou" + TCON: Cyber Soul + TYER: '2018' +all: + TIT2: K'as-tu fait de nous? + TPE1: 徒 Setto セット + COMM: *ref_0 + TALB: Satoshi mon ami + TRCK: '1' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Qu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\nAcid est la tribe\r\nCyberpunk le game\r\nSur des reseau de bribe\r\non fait monter le fame\r\nMeme pas besoin de files\r\nIsole sur l'iles\r\non fait un tour au grotte\r\npour pas que la story capotte\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\n\r\nSi la police nous ajoute\r\nNouvelle vie nouveau compte\r\nOn tourne le dos au toute\r\non delete sans honte\r\nMeme pas besoin d'ecrire\r\ntu peux mäentendre rire\r\nen tour de face a face\r\nQui brise la glace\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\n24 heures pour dechiffre\r\nOn dirait une invitation\r\nLa story que t'as balancer\r\nCryptokids une seul nation\r\ncelle des rave et du reve\r\nHilife a plein poumons\r\nLe flux n'as pas de treve\r\nEt en suede il mange du saumon\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou" + TCON: Cyber Soul + TYER: '2018' +nextTrack: &ref_2 + path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/satoshi-mon-ami/2-r-ve-de-toi.mp3 + audio: /assets/albums/satoshi-mon-ami/2-r-ve-de-toi.mp3 + slug: satoshi-mon-ami/2-r-ve-de-toi + albumSlug: satoshi-mon-ami + trackSlug: 2-r-ve-de-toi + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/satoshi-mon-ami/2-r-ve-de-toi.jpeg + cover: /assets/albums/satoshi-mon-ami/2-r-ve-de-toi.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 8195328 + duration: 185.83510204081634 + native: + ID3v2.3: + - id: TIT2 + value: Rêve de toi + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: &ref_1 + language: XXX + description: '' + text: Cover art and music by To Setto Setto + - id: TALB + value: Satoshi mon ami + - id: TRCK + value: '2' + - id: TPE2 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: UNSYNCEDLYRICS + text: "Je rêve de toi\r\nChaque jour je te vois\r\nJe fais pas de faux pas\r\nToujours des commentaires sympas\r\n\r\nTa vie est belle\r\nÇa se voit sur les cocotiers\r\nMais mon label\r\nNe pourras pas me déployer\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, ce n'est pas toi\r\n\r\nJ'ajoute des cœurs\r\nA tous les poste que tu publies\r\nJ’envoie des merdes\r\nA tous les cons qui t'humilient\r\n\r\nTa vie radieuse\r\nIllumine mes après-midi\r\nQuand je me lève\r\nAprès avoir perdu encore une nuit\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, toujours pas toi" + - id: TCON + value: Cyber Soul + - id: TYER + value: '2018' + quality: + warnings: [] + common: + track: + 'no': 2 + of: null + disk: + 'no': null + of: null + title: Rêve de toi + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - Cover art and music by To Setto Setto + - "Je rêve de toi\r\nChaque jour je te vois\r\nJe fais pas de faux pas\r\nToujours des commentaires sympas\r\n\r\nTa vie est belle\r\nÇa se voit sur les cocotiers\r\nMais mon label\r\nNe pourras pas me déployer\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, ce n'est pas toi\r\n\r\nJ'ajoute des cœurs\r\nA tous les poste que tu publies\r\nJ’envoie des merdes\r\nA tous les cons qui t'humilient\r\n\r\nTa vie radieuse\r\nIllumine mes après-midi\r\nQuand je me lève\r\nAprès avoir perdu encore une nuit\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, toujours pas toi" + album: Satoshi mon ami + albumartist: 徒 Setto セット + genre: + - Cyber Soul + year: 2018 + transformed: + ID3v2.3: + TIT2: Rêve de toi + TPE1: 徒 Setto セット + COMM: *ref_1 + TALB: Satoshi mon ami + TRCK: '2' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Je rêve de toi\r\nChaque jour je te vois\r\nJe fais pas de faux pas\r\nToujours des commentaires sympas\r\n\r\nTa vie est belle\r\nÇa se voit sur les cocotiers\r\nMais mon label\r\nNe pourras pas me déployer\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, ce n'est pas toi\r\n\r\nJ'ajoute des cœurs\r\nA tous les poste que tu publies\r\nJ’envoie des merdes\r\nA tous les cons qui t'humilient\r\n\r\nTa vie radieuse\r\nIllumine mes après-midi\r\nQuand je me lève\r\nAprès avoir perdu encore une nuit\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, toujours pas toi" + TCON: Cyber Soul + TYER: '2018' + all: + TIT2: Rêve de toi + TPE1: 徒 Setto セット + COMM: *ref_1 + TALB: Satoshi mon ami + TRCK: '2' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Je rêve de toi\r\nChaque jour je te vois\r\nJe fais pas de faux pas\r\nToujours des commentaires sympas\r\n\r\nTa vie est belle\r\nÇa se voit sur les cocotiers\r\nMais mon label\r\nNe pourras pas me déployer\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, ce n'est pas toi\r\n\r\nJ'ajoute des cœurs\r\nA tous les poste que tu publies\r\nJ’envoie des merdes\r\nA tous les cons qui t'humilient\r\n\r\nTa vie radieuse\r\nIllumine mes après-midi\r\nQuand je me lève\r\nAprès avoir perdu encore une nuit\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, toujours pas toi" + TCON: Cyber Soul + TYER: '2018' +previousTrack: *ref_2 +--- diff --git a/_tracks/satoshi-mon-ami/2-r-ve-de-toi.md b/_tracks/satoshi-mon-ami/2-r-ve-de-toi.md new file mode 100644 index 0000000..755c029 --- /dev/null +++ b/_tracks/satoshi-mon-ami/2-r-ve-de-toi.md @@ -0,0 +1,185 @@ +--- +layout: track +path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/satoshi-mon-ami/2-r-ve-de-toi.mp3 +audio: /assets/albums/satoshi-mon-ami/2-r-ve-de-toi.mp3 +slug: satoshi-mon-ami/2-r-ve-de-toi +albumSlug: satoshi-mon-ami +trackSlug: 2-r-ve-de-toi +coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/satoshi-mon-ami/2-r-ve-de-toi.jpeg +cover: /assets/albums/satoshi-mon-ami/2-r-ve-de-toi.jpeg +format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 8195328 + duration: 185.83510204081634 +native: + ID3v2.3: + - id: TIT2 + value: Rêve de toi + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: &ref_0 + language: XXX + description: '' + text: Cover art and music by To Setto Setto + - id: TALB + value: Satoshi mon ami + - id: TRCK + value: '2' + - id: TPE2 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: UNSYNCEDLYRICS + text: "Je rêve de toi\r\nChaque jour je te vois\r\nJe fais pas de faux pas\r\nToujours des commentaires sympas\r\n\r\nTa vie est belle\r\nÇa se voit sur les cocotiers\r\nMais mon label\r\nNe pourras pas me déployer\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, ce n'est pas toi\r\n\r\nJ'ajoute des cœurs\r\nA tous les poste que tu publies\r\nJ’envoie des merdes\r\nA tous les cons qui t'humilient\r\n\r\nTa vie radieuse\r\nIllumine mes après-midi\r\nQuand je me lève\r\nAprès avoir perdu encore une nuit\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, toujours pas toi" + - id: TCON + value: Cyber Soul + - id: TYER + value: '2018' +quality: + warnings: [] +common: + track: + 'no': 2 + of: null + disk: + 'no': null + of: null + title: Rêve de toi + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - Cover art and music by To Setto Setto + - "Je rêve de toi\r\nChaque jour je te vois\r\nJe fais pas de faux pas\r\nToujours des commentaires sympas\r\n\r\nTa vie est belle\r\nÇa se voit sur les cocotiers\r\nMais mon label\r\nNe pourras pas me déployer\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, ce n'est pas toi\r\n\r\nJ'ajoute des cœurs\r\nA tous les poste que tu publies\r\nJ’envoie des merdes\r\nA tous les cons qui t'humilient\r\n\r\nTa vie radieuse\r\nIllumine mes après-midi\r\nQuand je me lève\r\nAprès avoir perdu encore une nuit\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, toujours pas toi" + album: Satoshi mon ami + albumartist: 徒 Setto セット + genre: + - Cyber Soul + year: 2018 +transformed: + ID3v2.3: + TIT2: Rêve de toi + TPE1: 徒 Setto セット + COMM: *ref_0 + TALB: Satoshi mon ami + TRCK: '2' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Je rêve de toi\r\nChaque jour je te vois\r\nJe fais pas de faux pas\r\nToujours des commentaires sympas\r\n\r\nTa vie est belle\r\nÇa se voit sur les cocotiers\r\nMais mon label\r\nNe pourras pas me déployer\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, ce n'est pas toi\r\n\r\nJ'ajoute des cœurs\r\nA tous les poste que tu publies\r\nJ’envoie des merdes\r\nA tous les cons qui t'humilient\r\n\r\nTa vie radieuse\r\nIllumine mes après-midi\r\nQuand je me lève\r\nAprès avoir perdu encore une nuit\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, toujours pas toi" + TCON: Cyber Soul + TYER: '2018' +all: + TIT2: Rêve de toi + TPE1: 徒 Setto セット + COMM: *ref_0 + TALB: Satoshi mon ami + TRCK: '2' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Je rêve de toi\r\nChaque jour je te vois\r\nJe fais pas de faux pas\r\nToujours des commentaires sympas\r\n\r\nTa vie est belle\r\nÇa se voit sur les cocotiers\r\nMais mon label\r\nNe pourras pas me déployer\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, ce n'est pas toi\r\n\r\nJ'ajoute des cœurs\r\nA tous les poste que tu publies\r\nJ’envoie des merdes\r\nA tous les cons qui t'humilient\r\n\r\nTa vie radieuse\r\nIllumine mes après-midi\r\nQuand je me lève\r\nAprès avoir perdu encore une nuit\r\n\r\nUne fois, chaque fois, que mon téléphone\r\nS’allume, s’éclaire, sonne le vibraphone\r\nJ’espère, c'est claire, que c'est la bonne\r\nFois en moi, mais cette fois, toujours pas toi" + TCON: Cyber Soul + TYER: '2018' +nextTrack: &ref_2 + path: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/satoshi-mon-ami/1-k-as-tu-fait-de-nous-.mp3 + audio: /assets/albums/satoshi-mon-ami/1-k-as-tu-fait-de-nous-.mp3 + slug: satoshi-mon-ami/1-k-as-tu-fait-de-nous- + albumSlug: satoshi-mon-ami + trackSlug: 1-k-as-tu-fait-de-nous- + coverPath: >- + /home/set/git/basspistol/setto.basspistol.com/assets/albums/satoshi-mon-ami/1-k-as-tu-fait-de-nous-.jpeg + cover: /assets/albums/satoshi-mon-ami/1-k-as-tu-fait-de-nous-.jpeg + format: + tagTypes: + - ID3v2.3 + trackInfo: [] + lossless: false + container: MPEG + codec: MPEG 1 Layer 3 + sampleRate: 44100 + numberOfChannels: 2 + bitrate: 128000 + codecProfile: CBR + numberOfSamples: 13433472 + duration: 304.6138775510204 + native: + ID3v2.3: + - id: TIT2 + value: K'as-tu fait de nous? + - id: TPE1 + value: 徒 Setto セット + - id: COMM + value: &ref_1 + language: XXX + description: '' + text: Cover art and music by To Setto Setto + - id: TALB + value: Satoshi mon ami + - id: TRCK + value: '1' + - id: TPE2 + value: 徒 Setto セット + - id: COMM + value: + language: XXX + description: UNSYNCEDLYRICS + text: "Qu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\nAcid est la tribe\r\nCyberpunk le game\r\nSur des reseau de bribe\r\non fait monter le fame\r\nMeme pas besoin de files\r\nIsole sur l'iles\r\non fait un tour au grotte\r\npour pas que la story capotte\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\n\r\nSi la police nous ajoute\r\nNouvelle vie nouveau compte\r\nOn tourne le dos au toute\r\non delete sans honte\r\nMeme pas besoin d'ecrire\r\ntu peux mäentendre rire\r\nen tour de face a face\r\nQui brise la glace\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\n24 heures pour dechiffre\r\nOn dirait une invitation\r\nLa story que t'as balancer\r\nCryptokids une seul nation\r\ncelle des rave et du reve\r\nHilife a plein poumons\r\nLe flux n'as pas de treve\r\nEt en suede il mange du saumon\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou" + - id: TCON + value: Cyber Soul + - id: TYER + value: '2018' + quality: + warnings: [] + common: + track: + 'no': 1 + of: null + disk: + 'no': null + of: null + title: K'as-tu fait de nous? + artists: + - 徒 Setto セット + artist: 徒 Setto セット + comment: + - Cover art and music by To Setto Setto + - "Qu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\nAcid est la tribe\r\nCyberpunk le game\r\nSur des reseau de bribe\r\non fait monter le fame\r\nMeme pas besoin de files\r\nIsole sur l'iles\r\non fait un tour au grotte\r\npour pas que la story capotte\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\n\r\nSi la police nous ajoute\r\nNouvelle vie nouveau compte\r\nOn tourne le dos au toute\r\non delete sans honte\r\nMeme pas besoin d'ecrire\r\ntu peux mäentendre rire\r\nen tour de face a face\r\nQui brise la glace\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\n24 heures pour dechiffre\r\nOn dirait une invitation\r\nLa story que t'as balancer\r\nCryptokids une seul nation\r\ncelle des rave et du reve\r\nHilife a plein poumons\r\nLe flux n'as pas de treve\r\nEt en suede il mange du saumon\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou" + album: Satoshi mon ami + albumartist: 徒 Setto セット + genre: + - Cyber Soul + year: 2018 + transformed: + ID3v2.3: + TIT2: K'as-tu fait de nous? + TPE1: 徒 Setto セット + COMM: *ref_1 + TALB: Satoshi mon ami + TRCK: '1' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Qu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\nAcid est la tribe\r\nCyberpunk le game\r\nSur des reseau de bribe\r\non fait monter le fame\r\nMeme pas besoin de files\r\nIsole sur l'iles\r\non fait un tour au grotte\r\npour pas que la story capotte\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\n\r\nSi la police nous ajoute\r\nNouvelle vie nouveau compte\r\nOn tourne le dos au toute\r\non delete sans honte\r\nMeme pas besoin d'ecrire\r\ntu peux mäentendre rire\r\nen tour de face a face\r\nQui brise la glace\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\n24 heures pour dechiffre\r\nOn dirait une invitation\r\nLa story que t'as balancer\r\nCryptokids une seul nation\r\ncelle des rave et du reve\r\nHilife a plein poumons\r\nLe flux n'as pas de treve\r\nEt en suede il mange du saumon\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou" + TCON: Cyber Soul + TYER: '2018' + all: + TIT2: K'as-tu fait de nous? + TPE1: 徒 Setto セット + COMM: *ref_1 + TALB: Satoshi mon ami + TRCK: '1' + TPE2: 徒 Setto セット + UNSYNCEDLYRICS: "Qu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\nAcid est la tribe\r\nCyberpunk le game\r\nSur des reseau de bribe\r\non fait monter le fame\r\nMeme pas besoin de files\r\nIsole sur l'iles\r\non fait un tour au grotte\r\npour pas que la story capotte\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\n\r\nSi la police nous ajoute\r\nNouvelle vie nouveau compte\r\nOn tourne le dos au toute\r\non delete sans honte\r\nMeme pas besoin d'ecrire\r\ntu peux mäentendre rire\r\nen tour de face a face\r\nQui brise la glace\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\n\r\n24 heures pour dechiffre\r\nOn dirait une invitation\r\nLa story que t'as balancer\r\nCryptokids une seul nation\r\ncelle des rave et du reve\r\nHilife a plein poumons\r\nLe flux n'as pas de treve\r\nEt en suede il mange du saumon\r\n\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou\r\nQu'as-tu fais de nous\r\nWTF coucou\r\nQu'as tu fais de nous\r\nWTF coucou" + TCON: Cyber Soul + TYER: '2018' +previousTrack: *ref_2 +--- diff --git a/about.md b/about.md new file mode 100644 index 0000000..8072c79 --- /dev/null +++ b/about.md @@ -0,0 +1,34 @@ +--- +title: About +layout: page +description: What is Sakrecoer about and what does its music stand for? +image: /assets/img/cs-vid-3.jpg +--- + +## Sakrecoer Uncorporated Stands for independent fun-loving Activism, Art & Music. + +I am a 1980 born robot. If [Monica Zetterlund](https://en.wikipedia.org/wiki/Monica_Zetterlund){: target="_blank"} was a cyberpunk making electronic music, I would probably be Her. I aim for questions rather than answers and at pushing your creativity. I move by feet in the streets and value my integrity. + +![](/assets/img/cs-vid-1.jpg){: width="350" height="227"} + +I go by many aliases that you will find if you scroll down this page. + +![](/assets/img/cs-vid-2.jpg){: width="270" height="180"} + +This website was designed and executed by [me](http://set.hallstrom.ch){: target="_blank"} On these pages I push sounds, images, thoughts and passion for cool robots like you, thanks to the good [Alsenet.com](https://alsenet.com){: target="_blank"} people and the Helevtico-Russian-Swedo-Geramno-Spanglish Linux Lovers Circle. + +![](/assets/img/cs-vid-4.jpg){: width="270" height="180"} + +The past gig list is to long times and for forgotten times\! Received with enthusiasm by several venues, big and small such as: + +* Apolo Nitsa - Barcelona +* Dachkantine - Zürich +* Center Of Contemporary Art - Geneva +* Alcazar - Stockholm +* Microdisco Festival - Berlin +* Button Factory - Dublin +* And many many other really really nice ones :) delivering good mood, beat, base and bass\! + +![](/assets/img/sakrecoerLIVE.png){: width="639" height="799"} + +  \ No newline at end of file diff --git a/apple-touch-icon.png b/apple-touch-icon.png new file mode 100644 index 0000000..cd83253 Binary files /dev/null and b/apple-touch-icon.png differ diff --git a/assets/css/fontawesome-all.min.css b/assets/css/fontawesome-all.min.css new file mode 100644 index 0000000..b7d052b --- /dev/null +++ b/assets/css/fontawesome-all.min.css @@ -0,0 +1,5 @@ +/*! + * Font Awesome Free 5.9.0 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + */ +.fa,.fab,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{animation:fa-spin 2s infinite linear}.fa-pulse{animation:fa-spin 1s infinite steps(8)}@keyframes fa-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-acquisitions-incorporated:before{content:"\f6af"}.fa-ad:before{content:"\f641"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adobe:before{content:"\f778"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-air-freshener:before{content:"\f5d0"}.fa-airbnb:before{content:"\f834"}.fa-algolia:before{content:"\f36c"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-alipay:before{content:"\f642"}.fa-allergies:before{content:"\f461"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angry:before{content:"\f556"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-ankh:before{content:"\f644"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-alt:before{content:"\f5d1"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-archway:before{content:"\f557"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-artstation:before{content:"\f77a"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-atlas:before{content:"\f558"}.fa-atlassian:before{content:"\f77b"}.fa-atom:before{content:"\f5d2"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-award:before{content:"\f559"}.fa-aws:before{content:"\f375"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before{content:"\f77d"}.fa-backspace:before{content:"\f55a"}.fa-backward:before{content:"\f04a"}.fa-bacon:before{content:"\f7e5"}.fa-balance-scale:before{content:"\f24e"}.fa-balance-scale-left:before{content:"\f515"}.fa-balance-scale-right:before{content:"\f516"}.fa-ban:before{content:"\f05e"}.fa-band-aid:before{content:"\f462"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-bars:before{content:"\f0c9"}.fa-baseball-ball:before{content:"\f433"}.fa-basketball-ball:before{content:"\f434"}.fa-bath:before{content:"\f2cd"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-three-quarters:before{content:"\f241"}.fa-battle-net:before{content:"\f835"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-slash:before{content:"\f1f6"}.fa-bezier-curve:before{content:"\f55b"}.fa-bible:before{content:"\f647"}.fa-bicycle:before{content:"\f206"}.fa-biking:before{content:"\f84a"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blind:before{content:"\f29d"}.fa-blog:before{content:"\f781"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-book-dead:before{content:"\f6b7"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-reader:before{content:"\f5da"}.fa-bookmark:before{content:"\f02e"}.fa-bootstrap:before{content:"\f836"}.fa-border-all:before{content:"\f84c"}.fa-border-none:before{content:"\f850"}.fa-border-style:before{content:"\f853"}.fa-bowling-ball:before{content:"\f436"}.fa-box:before{content:"\f466"}.fa-box-open:before{content:"\f49e"}.fa-boxes:before{content:"\f468"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-bread-slice:before{content:"\f7ec"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-broadcast-tower:before{content:"\f519"}.fa-broom:before{content:"\f51a"}.fa-brush:before{content:"\f55d"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-burn:before{content:"\f46a"}.fa-buromobelexperte:before{content:"\f37f"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before{content:"\f55e"}.fa-business-time:before{content:"\f64a"}.fa-buysellads:before{content:"\f20d"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-times:before{content:"\f273"}.fa-calendar-week:before{content:"\f784"}.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-campground:before{content:"\f6bb"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-candy-cane:before{content:"\f786"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-car:before{content:"\f1b9"}.fa-car-alt:before{content:"\f5de"}.fa-car-battery:before{content:"\f5df"}.fa-car-crash:before{content:"\f5e1"}.fa-car-side:before{content:"\f5e4"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cash-register:before{content:"\f788"}.fa-cat:before{content:"\f6be"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before{content:"\f51c"}.fa-charging-station:before{content:"\f5e7"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-pie:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-double:before{content:"\f560"}.fa-check-square:before{content:"\f14a"}.fa-cheese:before{content:"\f7ef"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-board:before{content:"\f43c"}.fa-chess-king:before{content:"\f43f"}.fa-chess-knight:before{content:"\f441"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-queen:before{content:"\f445"}.fa-chess-rook:before{content:"\f447"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-city:before{content:"\f64f"}.fa-clinic-medical:before{content:"\f7f2"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-cocktail:before{content:"\f561"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-coins:before{content:"\f51e"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before{content:"\f4ad"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-slash:before{content:"\f4b3"}.fa-comments:before{content:"\f086"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compress:before{content:"\f066"}.fa-compress-arrows-alt:before{content:"\f78c"}.fa-concierge-bell:before{content:"\f562"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-couch:before{content:"\f4b8"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-credit-card:before{content:"\f09d"}.fa-critical-role:before{content:"\f6c9"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-delicious:before{content:"\f1a5"}.fa-democrat:before{content:"\f747"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dharmachakra:before{content:"\f655"}.fa-dhl:before{content:"\f790"}.fa-diagnoses:before{content:"\f470"}.fa-diaspora:before{content:"\f791"}.fa-dice:before{content:"\f522"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-digital-tachograph:before{content:"\f566"}.fa-directions:before{content:"\f5eb"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-divide:before{content:"\f529"}.fa-dizzy:before{content:"\f567"}.fa-dna:before{content:"\f471"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dog:before{content:"\f6d3"}.fa-dollar-sign:before{content:"\f155"}.fa-dolly:before{content:"\f472"}.fa-dolly-flatbed:before{content:"\f474"}.fa-donate:before{content:"\f4b9"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dot-circle:before{content:"\f192"}.fa-dove:before{content:"\f4ba"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-drafting-compass:before{content:"\f568"}.fa-dragon:before{content:"\f6d5"}.fa-draw-polygon:before{content:"\f5ee"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-drupal:before{content:"\f1a9"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-edge:before{content:"\f282"}.fa-edit:before{content:"\f044"}.fa-egg:before{content:"\f7fb"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-equals:before{content:"\f52c"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-ethernet:before{content:"\f796"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-evernote:before{content:"\f839"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fan:before{content:"\f863"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before{content:"\f56b"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-female:before{content:"\f182"}.fa-fighter-jet:before{content:"\f0fb"}.fa-figma:before{content:"\f799"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-download:before{content:"\f56d"}.fa-file-excel:before{content:"\f1c3"}.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-medical:before{content:"\f477"}.fa-file-medical-alt:before{content:"\f478"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-signature:before{content:"\f573"}.fa-file-upload:before{content:"\f574"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-alt:before{content:"\f7e4"}.fa-fire-extinguisher:before{content:"\f134"}.fa-firefox:before{content:"\f269"}.fa-first-aid:before{content:"\f479"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-fish:before{content:"\f578"}.fa-fist-raised:before{content:"\f6de"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flask:before{content:"\f0c3"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-flushed:before{content:"\f579"}.fa-fly:before{content:"\f417"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-font-awesome-logo-full:before{content:"\f4e6"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-football-ball:before{content:"\f44e"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-frog:before{content:"\f52e"}.fa-frown:before{content:"\f119"}.fa-frown-open:before{content:"\f57a"}.fa-fulcrum:before{content:"\f50b"}.fa-funnel-dollar:before{content:"\f662"}.fa-futbol:before{content:"\f1e3"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gifts:before{content:"\f79c"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass-cheers:before{content:"\f79f"}.fa-glass-martini:before{content:"\f000"}.fa-glass-martini-alt:before{content:"\f57b"}.fa-glass-whiskey:before{content:"\f7a0"}.fa-glasses:before{content:"\f530"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-globe-africa:before{content:"\f57c"}.fa-globe-americas:before{content:"\f57d"}.fa-globe-asia:before{content:"\f57e"}.fa-globe-europe:before{content:"\f7a2"}.fa-gofore:before{content:"\f3a7"}.fa-golf-ball:before{content:"\f450"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-greater-than:before{content:"\f531"}.fa-greater-than-equal:before{content:"\f532"}.fa-grimace:before{content:"\f57f"}.fa-grin:before{content:"\f580"}.fa-grin-alt:before{content:"\f581"}.fa-grin-beam:before{content:"\f582"}.fa-grin-beam-sweat:before{content:"\f583"}.fa-grin-hearts:before{content:"\f584"}.fa-grin-squint:before{content:"\f585"}.fa-grin-squint-tears:before{content:"\f586"}.fa-grin-stars:before{content:"\f587"}.fa-grin-tears:before{content:"\f588"}.fa-grin-tongue:before{content:"\f589"}.fa-grin-tongue-squint:before{content:"\f58a"}.fa-grin-tongue-wink:before{content:"\f58b"}.fa-grin-wink:before{content:"\f58c"}.fa-grip-horizontal:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guitar:before{content:"\f7a6"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hamburger:before{content:"\f805"}.fa-hammer:before{content:"\f6e3"}.fa-hamsa:before{content:"\f665"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before{content:"\f4c2"}.fa-hands-helping:before{content:"\f4c4"}.fa-handshake:before{content:"\f2b5"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-hat:before{content:"\f807"}.fa-hashtag:before{content:"\f292"}.fa-hat-wizard:before{content:"\f6e8"}.fa-haykal:before{content:"\f666"}.fa-hdd:before{content:"\f0a0"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-broken:before{content:"\f7a9"}.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-highlighter:before{content:"\f591"}.fa-hiking:before{content:"\f6ec"}.fa-hippo:before{content:"\f6ed"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-hockey-puck:before{content:"\f453"}.fa-holly-berry:before{content:"\f7aa"}.fa-home:before{content:"\f015"}.fa-hooli:before{content:"\f427"}.fa-hornbill:before{content:"\f592"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-hospital:before{content:"\f0f8"}.fa-hospital-alt:before{content:"\f47d"}.fa-hospital-symbol:before{content:"\f47e"}.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-house-damage:before{content:"\f6f1"}.fa-houzz:before{content:"\f27c"}.fa-hryvnia:before{content:"\f6f2"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-icicles:before{content:"\f7ad"}.fa-icons:before{content:"\f86d"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before{content:"\f47f"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-instagram:before{content:"\f16d"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-italic:before{content:"\f033"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-java:before{content:"\f4e4"}.fa-jedi:before{content:"\f669"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joint:before{content:"\f595"}.fa-joomla:before{content:"\f1aa"}.fa-journal-whills:before{content:"\f66a"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaaba:before{content:"\f66b"}.fa-kaggle:before{content:"\f5fa"}.fa-key:before{content:"\f084"}.fa-keybase:before{content:"\f4f5"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-khanda:before{content:"\f66d"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-kiss:before{content:"\f596"}.fa-kiss-beam:before{content:"\f597"}.fa-kiss-wink-heart:before{content:"\f598"}.fa-kiwi-bird:before{content:"\f535"}.fa-korvue:before{content:"\f42f"}.fa-landmark:before{content:"\f66f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-medical:before{content:"\f812"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-laugh:before{content:"\f599"}.fa-laugh-beam:before{content:"\f59a"}.fa-laugh-squint:before{content:"\f59b"}.fa-laugh-wink:before{content:"\f59c"}.fa-layer-group:before{content:"\f5fd"}.fa-leaf:before{content:"\f06c"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-less-than:before{content:"\f536"}.fa-less-than-equal:before{content:"\f537"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-line:before{content:"\f3c0"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location-arrow:before{content:"\f124"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-low-vision:before{content:"\f2a8"}.fa-luggage-cart:before{content:"\f59d"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-mail-bulk:before{content:"\f674"}.fa-mailchimp:before{content:"\f59e"}.fa-male:before{content:"\f183"}.fa-mandalorian:before{content:"\f50f"}.fa-map:before{content:"\f279"}.fa-map-marked:before{content:"\f59f"}.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-markdown:before{content:"\f60f"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mask:before{content:"\f6fa"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-medal:before{content:"\f5a2"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaport:before{content:"\f5a3"}.fa-meh:before{content:"\f11a"}.fa-meh-blank:before{content:"\f5a4"}.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-memory:before{content:"\f538"}.fa-mendeley:before{content:"\f7b3"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-meteor:before{content:"\f753"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before{content:"\f3c9"}.fa-microphone-alt-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-microsoft:before{content:"\f3ca"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-square:before{content:"\f146"}.fa-mitten:before{content:"\f7b5"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before{content:"\f53d"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mountain:before{content:"\f6fc"}.fa-mouse-pointer:before{content:"\f245"}.fa-mug-hot:before{content:"\f7b6"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-neos:before{content:"\f612"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nimblr:before{content:"\f5a8"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-not-equal:before{content:"\f53e"}.fa-notes-medical:before{content:"\f481"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-oil-can:before{content:"\f613"}.fa-old-republic:before{content:"\f510"}.fa-om:before{content:"\f679"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-osi:before{content:"\f41a"}.fa-otter:before{content:"\f700"}.fa-outdent:before{content:"\f03b"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-pager:before{content:"\f815"}.fa-paint-brush:before{content:"\f1fc"}.fa-paint-roller:before{content:"\f5aa"}.fa-palette:before{content:"\f53f"}.fa-palfed:before{content:"\f3d8"}.fa-pallet:before{content:"\f482"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-parking:before{content:"\f540"}.fa-passport:before{content:"\f5ab"}.fa-pastafarianism:before{content:"\f67b"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paypal:before{content:"\f1ed"}.fa-peace:before{content:"\f67c"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-square:before{content:"\f14b"}.fa-pencil-alt:before{content:"\f303"}.fa-pencil-ruler:before{content:"\f5ae"}.fa-penny-arcade:before{content:"\f704"}.fa-people-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.fa-percent:before{content:"\f295"}.fa-percentage:before{content:"\f541"}.fa-periscope:before{content:"\f3da"}.fa-person-booth:before{content:"\f756"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-phone:before{content:"\f095"}.fa-phone-alt:before{content:"\f879"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-square:before{content:"\f098"}.fa-phone-square-alt:before{content:"\f87b"}.fa-phone-volume:before{content:"\f2a0"}.fa-photo-video:before{content:"\f87c"}.fa-php:before{content:"\f457"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-poll:before{content:"\f681"}.fa-poll-h:before{content:"\f682"}.fa-poo:before{content:"\f2fe"}.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-portrait:before{content:"\f3e0"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-pray:before{content:"\f683"}.fa-praying-hands:before{content:"\f684"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before{content:"\f486"}.fa-print:before{content:"\f02f"}.fa-procedures:before{content:"\f487"}.fa-product-hunt:before{content:"\f288"}.fa-project-diagram:before{content:"\f542"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-quidditch:before{content:"\f458"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-quran:before{content:"\f687"}.fa-r-project:before{content:"\f4f7"}.fa-radiation:before{content:"\f7b9"}.fa-radiation-alt:before{content:"\f7ba"}.fa-rainbow:before{content:"\f75b"}.fa-random:before{content:"\f074"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-receipt:before{content:"\f543"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redhat:before{content:"\f7bc"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-remove-format:before{content:"\f87d"}.fa-renren:before{content:"\f18b"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-republican:before{content:"\f75e"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-rev:before{content:"\f5b2"}.fa-ribbon:before{content:"\f4d6"}.fa-ring:before{content:"\f70b"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-route:before{content:"\f4d7"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-vertical:before{content:"\f548"}.fa-running:before{content:"\f70c"}.fa-rupee-sign:before{content:"\f156"}.fa-sad-cry:before{content:"\f5b3"}.fa-sad-tear:before{content:"\f5b4"}.fa-safari:before{content:"\f267"}.fa-salesforce:before{content:"\f83b"}.fa-sass:before{content:"\f41e"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-save:before{content:"\f0c7"}.fa-schlix:before{content:"\f3ea"}.fa-school:before{content:"\f549"}.fa-screwdriver:before{content:"\f54a"}.fa-scribd:before{content:"\f28a"}.fa-scroll:before{content:"\f70e"}.fa-sd-card:before{content:"\f7c2"}.fa-search:before{content:"\f002"}.fa-search-dollar:before{content:"\f688"}.fa-search-location:before{content:"\f689"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-seedling:before{content:"\f4d8"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-shapes:before{content:"\f61f"}.fa-share:before{content:"\f064"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield-alt:before{content:"\f3ed"}.fa-ship:before{content:"\f21a"}.fa-shipping-fast:before{content:"\f48b"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shoe-prints:before{content:"\f54b"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shopware:before{content:"\f5b5"}.fa-shower:before{content:"\f2cc"}.fa-shuttle-van:before{content:"\f5b6"}.fa-sign:before{content:"\f4d9"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-signature:before{content:"\f5b7"}.fa-sim-card:before{content:"\f7c4"}.fa-simplybuilt:before{content:"\f215"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-sith:before{content:"\f512"}.fa-skating:before{content:"\f7c5"}.fa-sketch:before{content:"\f7c6"}.fa-skiing:before{content:"\f7c9"}.fa-skiing-nordic:before{content:"\f7ca"}.fa-skull:before{content:"\f54c"}.fa-skull-crossbones:before{content:"\f714"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-slash:before{content:"\f715"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before{content:"\f1de"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-smile-beam:before{content:"\f5b8"}.fa-smile-wink:before{content:"\f4da"}.fa-smog:before{content:"\f75f"}.fa-smoking:before{content:"\f48d"}.fa-smoking-ban:before{content:"\f54d"}.fa-sms:before{content:"\f7cd"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snowboarding:before{content:"\f7ce"}.fa-snowflake:before{content:"\f2dc"}.fa-snowman:before{content:"\f7d0"}.fa-snowplow:before{content:"\f7d2"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-down-alt:before{content:"\f884"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-amount-up-alt:before{content:"\f885"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-sourcetree:before{content:"\f7d3"}.fa-spa:before{content:"\f5bb"}.fa-space-shuttle:before{content:"\f197"}.fa-speakap:before{content:"\f3f3"}.fa-speaker-deck:before{content:"\f83c"}.fa-spell-check:before{content:"\f891"}.fa-spider:before{content:"\f717"}.fa-spinner:before{content:"\f110"}.fa-splotch:before{content:"\f5bc"}.fa-spotify:before{content:"\f1bc"}.fa-spray-can:before{content:"\f5bd"}.fa-square:before{content:"\f0c8"}.fa-square-full:before{content:"\f45c"}.fa-square-root-alt:before{content:"\f698"}.fa-squarespace:before{content:"\f5be"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\f051"}.fa-stethoscope:before{content:"\f0f1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-sticky-note:before{content:"\f249"}.fa-stop:before{content:"\f04d"}.fa-stop-circle:before{content:"\f28d"}.fa-stopwatch:before{content:"\f2f2"}.fa-store:before{content:"\f54e"}.fa-store-alt:before{content:"\f54f"}.fa-strava:before{content:"\f428"}.fa-stream:before{content:"\f550"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-stroopwafel:before{content:"\f551"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-subscript:before{content:"\f12c"}.fa-subway:before{content:"\f239"}.fa-suitcase:before{content:"\f0f2"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-superpowers:before{content:"\f2dd"}.fa-superscript:before{content:"\f12b"}.fa-supple:before{content:"\f3f9"}.fa-surprise:before{content:"\f5c2"}.fa-suse:before{content:"\f7d6"}.fa-swatchbook:before{content:"\f5c3"}.fa-swimmer:before{content:"\f5c4"}.fa-swimming-pool:before{content:"\f5c5"}.fa-symfony:before{content:"\f83d"}.fa-synagogue:before{content:"\f69b"}.fa-sync:before{content:"\f021"}.fa-sync-alt:before{content:"\f2f1"}.fa-syringe:before{content:"\f48e"}.fa-table:before{content:"\f0ce"}.fa-table-tennis:before{content:"\f45d"}.fa-tablet:before{content:"\f10a"}.fa-tablet-alt:before{content:"\f3fa"}.fa-tablets:before{content:"\f490"}.fa-tachometer-alt:before{content:"\f3fd"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tape:before{content:"\f4db"}.fa-tasks:before{content:"\f0ae"}.fa-taxi:before{content:"\f1ba"}.fa-teamspeak:before{content:"\f4f9"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-telegram:before{content:"\f2c6"}.fa-telegram-plane:before{content:"\f3fe"}.fa-temperature-high:before{content:"\f769"}.fa-temperature-low:before{content:"\f76b"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-tenge:before{content:"\f7d7"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-th:before{content:"\f00a"}.fa-th-large:before{content:"\f009"}.fa-th-list:before{content:"\f00b"}.fa-the-red-yeti:before{content:"\f69d"}.fa-theater-masks:before{content:"\f630"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-thermometer:before{content:"\f491"}.fa-thermometer-empty:before{content:"\f2cb"}.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-think-peaks:before{content:"\f731"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbtack:before{content:"\f08d"}.fa-ticket-alt:before{content:"\f3ff"}.fa-times:before{content:"\f00d"}.fa-times-circle:before{content:"\f057"}.fa-tint:before{content:"\f043"}.fa-tint-slash:before{content:"\f5c7"}.fa-tired:before{content:"\f5c8"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toilet:before{content:"\f7d8"}.fa-toilet-paper:before{content:"\f71e"}.fa-toolbox:before{content:"\f552"}.fa-tools:before{content:"\f7d9"}.fa-tooth:before{content:"\f5c9"}.fa-torah:before{content:"\f6a0"}.fa-torii-gate:before{content:"\f6a1"}.fa-tractor:before{content:"\f722"}.fa-trade-federation:before{content:"\f513"}.fa-trademark:before{content:"\f25c"}.fa-traffic-light:before{content:"\f637"}.fa-train:before{content:"\f238"}.fa-tram:before{content:"\f7da"}.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-alt:before{content:"\f2ed"}.fa-trash-restore:before{content:"\f829"}.fa-trash-restore-alt:before{content:"\f82a"}.fa-tree:before{content:"\f1bb"}.fa-trello:before{content:"\f181"}.fa-tripadvisor:before{content:"\f262"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-truck-loading:before{content:"\f4de"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-tshirt:before{content:"\f553"}.fa-tty:before{content:"\f1e4"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-tv:before{content:"\f26c"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-ubuntu:before{content:"\f7df"}.fa-uikit:before{content:"\f403"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-underline:before{content:"\f0cd"}.fa-undo:before{content:"\f0e2"}.fa-undo-alt:before{content:"\f2ea"}.fa-uniregistry:before{content:"\f404"}.fa-universal-access:before{content:"\f29a"}.fa-university:before{content:"\f19c"}.fa-unlink:before{content:"\f127"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before{content:"\f13e"}.fa-untappd:before{content:"\f405"}.fa-upload:before{content:"\f093"}.fa-ups:before{content:"\f7e0"}.fa-usb:before{content:"\f287"}.fa-user:before{content:"\f007"}.fa-user-alt:before{content:"\f406"}.fa-user-alt-slash:before{content:"\f4fa"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-check:before{content:"\f4fc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-clock:before{content:"\f4fd"}.fa-user-cog:before{content:"\f4fe"}.fa-user-edit:before{content:"\f4ff"}.fa-user-friends:before{content:"\f500"}.fa-user-graduate:before{content:"\f501"}.fa-user-injured:before{content:"\f728"}.fa-user-lock:before{content:"\f502"}.fa-user-md:before{content:"\f0f0"}.fa-user-minus:before{content:"\f503"}.fa-user-ninja:before{content:"\f504"}.fa-user-nurse:before{content:"\f82f"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-users-cog:before{content:"\f509"}.fa-usps:before{content:"\f7e1"}.fa-ussunnah:before{content:"\f407"}.fa-utensil-spoon:before{content:"\f2e5"}.fa-utensils:before{content:"\f2e7"}.fa-vaadin:before{content:"\f408"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-vial:before{content:"\f492"}.fa-vials:before{content:"\f493"}.fa-viber:before{content:"\f409"}.fa-video:before{content:"\f03d"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-voicemail:before{content:"\f897"}.fa-volleyball-ball:before{content:"\f45f"}.fa-volume-down:before{content:"\f027"}.fa-volume-mute:before{content:"\f6a9"}.fa-volume-off:before{content:"\f026"}.fa-volume-up:before{content:"\f028"}.fa-vote-yea:before{content:"\f772"}.fa-vr-cardboard:before{content:"\f729"}.fa-vuejs:before{content:"\f41f"}.fa-walking:before{content:"\f554"}.fa-wallet:before{content:"\f555"}.fa-warehouse:before{content:"\f494"}.fa-water:before{content:"\f773"}.fa-wave-square:before{content:"\f83e"}.fa-waze:before{content:"\f83f"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weight:before{content:"\f496"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-wheelchair:before{content:"\f193"}.fa-whmcs:before{content:"\f40d"}.fa-wifi:before{content:"\f1eb"}.fa-wikipedia-w:before{content:"\f266"}.fa-wind:before{content:"\f72e"}.fa-window-close:before{content:"\f410"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-windows:before{content:"\f17a"}.fa-wine-bottle:before{content:"\f72f"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before{content:"\f5ce"}.fa-wix:before{content:"\f5cf"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-won-sign:before{content:"\f159"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wpressr:before{content:"\f3e4"}.fa-wrench:before{content:"\f0ad"}.fa-x-ray:before{content:"\f497"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yammer:before{content:"\f840"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yarn:before{content:"\f7e3"}.fa-yelp:before{content:"\f1e9"}.fa-yen-sign:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.fa-zhihu:before{content:"\f63f"}.sr-only{border:0;clip:rect(0,0,0,0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.sr-only-focusable:active,.sr-only-focusable:focus{clip:auto;height:auto;margin:0;overflow:visible;position:static;width:auto}@font-face{font-family:"Font Awesome 5 Brands";font-style:normal;font-weight:normal;font-display:auto;src:url(../webfonts/fa-brands-400.eot);src:url(../webfonts/fa-brands-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.woff) format("woff"),url(../webfonts/fa-brands-400.ttf) format("truetype"),url(../webfonts/fa-brands-400.svg#fontawesome) format("svg")}.fab{font-family:"Font Awesome 5 Brands"}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:400;font-display:auto;src:url(../webfonts/fa-regular-400.eot);src:url(../webfonts/fa-regular-400.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.woff) format("woff"),url(../webfonts/fa-regular-400.ttf) format("truetype"),url(../webfonts/fa-regular-400.svg#fontawesome) format("svg")}.far{font-weight:400}@font-face{font-family:"Font Awesome 5 Free";font-style:normal;font-weight:900;font-display:auto;src:url(../webfonts/fa-solid-900.eot);src:url(../webfonts/fa-solid-900.eot?#iefix) format("embedded-opentype"),url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.woff) format("woff"),url(../webfonts/fa-solid-900.ttf) format("truetype"),url(../webfonts/fa-solid-900.svg#fontawesome) format("svg")}.fa,.far,.fas{font-family:"Font Awesome 5 Free"}.fa,.fas{font-weight:900} \ No newline at end of file diff --git a/assets/css/main20200710.scss b/assets/css/main20200710.scss new file mode 100644 index 0000000..f8ebb24 --- /dev/null +++ b/assets/css/main20200710.scss @@ -0,0 +1,192 @@ +--- +--- +@import 'libs/vars'; +@import 'libs/functions'; +@import 'libs/mixins'; +@import 'libs/vendor'; +@import 'libs/breakpoints'; +@import 'libs/html-grid'; +@import 'fontawesome-all.min.css'; +@import 'libs/fonts'; + +/* + Story by HTML5 UP + html5up.net | @ajlkn + Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +*/ + +// Breakpoints. + + @include breakpoints(( + xlarge: ( 1281px, 1680px ), + large: ( 981px, 1280px ), + medium: ( 737px, 980px ), + small: ( 481px, 736px ), + xsmall: ( 361px, 480px ), + xxsmall: ( null, 360px ) + )); + +// Mixins. + + @mixin color($p) { + @include color-typography($p); + @include color-box($p); + @include color-button($p); + @include color-form($p); + @include color-icon($p); + @include color-list($p); + @include color-section($p); + @include color-table($p); + @include color-banner($p); + @include color-spotlight($p); + @include color-gallery($p); + @include color-items($p); + @include color-index($p); + } + +// Phone. + + @mixin phone($image-width) { + @include vendor('flex-grow', '0'); + @include vendor('flex-shrink', '0'); + border-radius: 0; + border: solid _size(border-width); + + img { + @include vendor('object-fit', 'cover'); + @include vendor('object-position', 'center'); + display: block; + width: 100%; + height: 100%; + border-radius: 0; + } + + &:before { + content: ''; + display: block; + background-position: center; + background-repeat: no-repeat; + border: solid _size(border-width); + border-bottom: 0; + } + + &:after { + content: ''; + display: block; + background-position: center; + background-repeat: no-repeat; + border: solid _size(border-width); + border-top: 0; + } + + @include resize-phone($image-width, 1); + } + + @mixin resize-phone($image-width, $image-factor) { + $image-pad-top: 2.5rem; + $image-pad-bottom: 3rem; + $image-height: ($image-width * (1920 / 1080)); + + width: ($image-width * $image-factor); + height: (($image-width * $image-factor) * (1920 / 1080)); + margin-top: ($image-pad-top * $image-factor); + margin-bottom: (_size(element-margin) + ($image-pad-bottom * $image-factor)); + + &:before { + height: ($image-pad-top * $image-factor); + background-size: (64px * $image-factor) (32px * $image-factor); + margin-top: (($image-pad-top * $image-factor) * -1); + border-radius: (1rem * $image-factor) (1rem * $image-factor) 0 0; + } + + &:after { + height: ($image-pad-bottom * $image-factor); + background-size: (64px * $image-factor) (32px * $image-factor); + margin-bottom: (($image-pad-bottom * $image-factor) * -1); + border-radius: 0 0 (1rem * $image-factor) (1rem * $image-factor); + } + } + + @mixin color-phone($p) { + border-color: _palette($p, border); + background-color: _palette($p, border); + + @if ($p != 'invert') { + border-width: 0; + } + @else { + border-width: _size(border-width); + } + + &:before { + background-image: svg-url(''); + border-color: _palette($p, border); + + @if ($p == 'invert') { + width: calc(100% + #{_size(border-width) * 2}); + margin-left: (_size(border-width) * -1); + } + @else { + width: 100%; + } + } + + &:after { + background-image: svg-url(''); + border-color: _palette($p, border); + + @if ($p == 'invert') { + width: calc(100% + #{_size(border-width) * 2}); + margin-left: (_size(border-width) * -1); + } + @else { + width: 100%; + } + } + } + + @mixin color-phone-variant($v, $p) { + @if ($v == 'android') { + &:after { + background-image: svg-url(''); + } + } + @else if ($p == 'iphone') { + // ... + } + } + +// Base. + + @import 'base/reset'; + @import 'base/page'; + @import 'base/typography'; + +// Component. + + @import 'components/row'; + @import 'components/box'; + @import 'components/button'; + @import 'components/form'; + @import 'components/icon'; + @import 'components/image'; + @import 'components/list'; + @import 'components/actions'; + @import 'components/icons'; + @import 'components/section'; + @import 'components/table'; + @import 'components/banner'; + @import 'components/spotlight'; + @import 'components/gallery'; + @import 'components/wrapper'; + @import 'components/items'; + @import 'components/index'; + +// Layout. + + @import 'layout/wrapper'; + +// Set's customizations + + @import 'set.scss'; + @import 'player.scss'; diff --git a/assets/css/noscript20200710.scss b/assets/css/noscript20200710.scss new file mode 100644 index 0000000..69df872 --- /dev/null +++ b/assets/css/noscript20200710.scss @@ -0,0 +1,258 @@ +--- +--- +@import 'libs/vars'; +@import 'libs/functions'; +@import 'libs/mixins'; +@import 'libs/vendor'; +@import 'libs/breakpoints'; +@import 'libs/html-grid'; +@import 'libs/fonts'; + + +/* + Story by HTML5 UP + html5up.net | @ajlkn + Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) +*/ + +/* Banner (transitions) */ + + .banner { + + // Mixin. + @mixin transition-banner($event) { + $x: null; + $y: null; + + @if ($event == 'load') { + $x: 'body.is-preload &'; + $y: _duration(on-load); + } + @else if ($event == 'scroll') { + $x: '&.is-inactive'; + $y: _duration(on-scroll); + } + + // Content. + &.on#{$event}-content-fade-up { + .content { + @include vendor('transition', 'none'); + } + + #{$x} { + .content { + @include vendor('transform', 'none'); + opacity: 1; + } + } + } + + &.on#{$event}-content-fade-down { + .content { + @include vendor('transition', 'none'); + } + + #{$x} { + .content { + @include vendor('transform', 'none'); + opacity: 1; + } + } + } + + &.on#{$event}-content-fade-left { + .content { + @include vendor('transition', 'none'); + } + + #{$x} { + .content { + @include vendor('transform', 'none'); + opacity: 1; + } + } + } + + &.on#{$event}-content-fade-right { + .content { + @include vendor('transition', 'none'); + } + + #{$x} { + .content { + @include vendor('transform', 'none'); + opacity: 1; + } + } + } + + &.on#{$event}-content-fade-in { + .content { + @include vendor('transition', 'none'); + } + + #{$x} { + .content { + @include vendor('transform', 'none'); + opacity: 1; + } + } + } + + // Image. + &.on#{$event}-image-fade-up { + .image { + @include vendor('transition', 'none'); + + img { + @include vendor('transition', 'none'); + } + } + + #{$x} { + .image { + @include vendor('transform', 'none'); + opacity: 1; + + img { + opacity: 1; + } + } + } + } + + &.on#{$event}-image-fade-down { + .image { + @include vendor('transition', 'none'); + + img { + @include vendor('transition', 'none'); + } + } + + #{$x} { + .image { + @include vendor('transform', 'none'); + opacity: 1; + + img { + opacity: 1; + } + } + } + } + + &.on#{$event}-image-fade-left { + .image { + @include vendor('transition', 'none'); + + img { + @include vendor('transition', 'none'); + } + } + + #{$x} { + .image { + @include vendor('transform', 'none'); + opacity: 1; + + img { + opacity: 1; + } + } + } + } + + &.on#{$event}-image-fade-right { + .image { + @include vendor('transition', 'none'); + + img { + @include vendor('transition', 'none'); + } + } + + #{$x} { + .image { + @include vendor('transform', 'none'); + opacity: 1; + + img { + opacity: 1; + } + } + } + } + + &.on#{$event}-image-fade-in { + .image { + img { + @include vendor('transition', 'none'); + } + } + + #{$x} { + .image { + img { + opacity: 1; + } + } + } + } + + } + + // On Load. + @include transition-banner('load'); + + // On Scroll. + @include transition-banner('scroll'); + + } + +// Set's customizations + +@import 'set'; +@import 'player'; + +.logo { + position: fixed; + top: 20px; + right: 20px; + width: 50%; + height: 10%; + background-color: transparent; + background-repeat: no-repeat; + background-position: center center; + background-size: 95% 95%; + -webkit-transition: all 400ms ease-in; + -moz-transition: all 400ms ease-in; + transition: all 400ms ease-in; + box-shadow: 0 0 10px 1px _palette(border-alt); + } + + @media only screen and (min-width: 769px) { + .logo { + position: fixed; + top: 20px; + right: 20px; + width: 20%; + height: 10%; + background-color: transparent; + background-repeat: no-repeat; + background-position: center center; + background-size: 95% 95%; + -webkit-transition: all 400ms ease-in; + -moz-transition: all 400ms ease-in; + transition: all 400ms ease-in; + box-shadow: 0 0 10px 1px _palette(border-alt); + } +} + +// Player link +#mainwrap { + display: none; +} +#noJSalbum { + display: unset; +} \ No newline at end of file diff --git a/assets/fonts/Astloch-Bold.ttf b/assets/fonts/Astloch-Bold.ttf new file mode 100644 index 0000000..73328fa Binary files /dev/null and b/assets/fonts/Astloch-Bold.ttf differ diff --git a/assets/js/breakpoints.min.js b/assets/js/breakpoints.min.js new file mode 100644 index 0000000..32419cc --- /dev/null +++ b/assets/js/breakpoints.min.js @@ -0,0 +1,2 @@ +/* breakpoints.js v1.0 | @ajlkn | MIT licensed */ +var breakpoints=function(){"use strict";function e(e){t.init(e)}var t={list:null,media:{},events:[],init:function(e){t.list=e,window.addEventListener("resize",t.poll),window.addEventListener("orientationchange",t.poll),window.addEventListener("load",t.poll),window.addEventListener("fullscreenchange",t.poll)},active:function(e){var n,a,s,i,r,d,c;if(!(e in t.media)){if(">="==e.substr(0,2)?(a="gte",n=e.substr(2)):"<="==e.substr(0,2)?(a="lte",n=e.substr(2)):">"==e.substr(0,1)?(a="gt",n=e.substr(1)):"<"==e.substr(0,1)?(a="lt",n=e.substr(1)):"!"==e.substr(0,1)?(a="not",n=e.substr(1)):(a="eq",n=e),n&&n in t.list)if(i=t.list[n],Array.isArray(i)){if(r=parseInt(i[0]),d=parseInt(i[1]),isNaN(r)){if(isNaN(d))return;c=i[1].substr(String(d).length)}else c=i[0].substr(String(r).length);if(isNaN(r))switch(a){case"gte":s="screen";break;case"lte":s="screen and (max-width: "+d+c+")";break;case"gt":s="screen and (min-width: "+(d+1)+c+")";break;case"lt":s="screen and (max-width: -1px)";break;case"not":s="screen and (min-width: "+(d+1)+c+")";break;default:s="screen and (max-width: "+d+c+")"}else if(isNaN(d))switch(a){case"gte":s="screen and (min-width: "+r+c+")";break;case"lte":s="screen";break;case"gt":s="screen and (max-width: -1px)";break;case"lt":s="screen and (max-width: "+(r-1)+c+")";break;case"not":s="screen and (max-width: "+(r-1)+c+")";break;default:s="screen and (min-width: "+r+c+")"}else switch(a){case"gte":s="screen and (min-width: "+r+c+")";break;case"lte":s="screen and (max-width: "+d+c+")";break;case"gt":s="screen and (min-width: "+(d+1)+c+")";break;case"lt":s="screen and (max-width: "+(r-1)+c+")";break;case"not":s="screen and (max-width: "+(r-1)+c+"), screen and (min-width: "+(d+1)+c+")";break;default:s="screen and (min-width: "+r+c+") and (max-width: "+d+c+")"}}else s="("==i.charAt(0)?"screen and "+i:i;t.media[e]=!!s&&s}return t.media[e]!==!1&&window.matchMedia(t.media[e]).matches},on:function(e,n){t.events.push({query:e,handler:n,state:!1}),t.active(e)&&n()},poll:function(){var e,n;for(e=0;e0:!!("ontouchstart"in window),e.mobile="wp"==e.os||"android"==e.os||"ios"==e.os||"bb"==e.os}};return e.init(),e}();!function(e,n){"function"==typeof define&&define.amd?define([],n):"object"==typeof exports?module.exports=n():e.browser=n()}(this,function(){return browser}); diff --git a/assets/js/demo.js b/assets/js/demo.js new file mode 100644 index 0000000..01ede5a --- /dev/null +++ b/assets/js/demo.js @@ -0,0 +1,563 @@ +/* + Story by HTML5 UP + html5up.net | @ajlkn + Free for personal and commercial use under the CCA 3.0 license (html5up.net/license) + + Note: Only needed for demo purposes. Delete for production sites. +*/ + +(function($) { + + var $window = $(window); + + // Styles. + $( + '' + ).appendTo($('head')); + + // Functions. + $.fn.demo_controls = function(styles, userOptions) { + + var $this = $(this), + $styleProperty, $stylePropertyClasses, + $controls, $x, $y, $z, + options, + current, i, j, k, s, n, count; + + // No elements? + if (this.length == 0) + return $this; + + // Multiple elements? + if (this.length > 1) { + + for (var i=0; i < this.length; i++) + $(this[i]).demo_controls(styles, userOptions); + + return $this; + + } + + // Options. + options = $.extend({ + target: null, + palette: true + }, userOptions); + + // Controls. + if (styles) { + + $controls = $( + '' + + '' + + 'style' + + '' + (options.palette ? ', ' : ' ') + + '' + + (options.palette ? + '' + + 'scheme' + + '' + + 'default' + + 'invert' + + ', ' + + '' + + '' + + 'color' + + '' + + 'default' + + 'color1' + + 'color2' + + 'color3' + + 'color4' + + 'color5' + + 'color6' + + 'color7' + + ', ' + + '' + : '') + + '' + ); + + } + else { + + $controls = $( + '' + + (options.palette ? + '' + + 'scheme' + + '' + + 'default' + + 'invert' + + ' and ' + + '' + + '' + + 'color' + + '' + + 'default' + + 'color1' + + 'color2' + + 'color3' + + 'color4' + + 'color5' + + 'color6' + + 'color7' + + '' + + '' + : '') + + '' + ); + + } + + // Target. + switch (options.target) { + + case 'previous': + $this.prev().find('.demo-controls').replaceWith($controls); + break; + + default: + $this.find('.demo-controls').replaceWith($controls); + break; + + } + + // Styles. + if (styles) { + + $styleProperty = $controls.find('.property[data-name="style"]'); + $stylePropertyClasses = $styleProperty.children('.classes'); + + for (i in styles) { + + current = false; + count = Object.keys(styles[i]).length; + n = 1; + + // Add to style property. + $x = $(', ' + i + '') + .appendTo($stylePropertyClasses); + + if ($this.hasClass(i)) { + + $x.addClass('active'); + current = true; + + } + + // Step through properties. + for (j in styles[i]) { + + $x = $( + '' + + (n == count ? 'and ' : '') + + '' + j + '' + + '' + + '' + (n < count ? ', ' : '') + + '' + ).appendTo($controls); + + $y = $x.children('.classes'); + + if (current) + $x.addClass('active'); + + for (k in styles[i][j]) { + + $z = $(', ' + styles[i][j][k].replace('*', '') + '') + .appendTo($y); + + if (styles[i][j][k].substr(-1, 1) == '*') + $z.addClass('default'); + + if (current + && $this.hasClass(k)) + $z.addClass('active'); + + } + + n++; + + } + + } + + } + + // Events. + $controls.on('click', 'a', function(event) { + event.preventDefault(); + }); + + $controls.on('click', '.property.active', function(event) { + + var $property = $(this); + var $classes = $property.find('.classes > *'); + var $current = $classes.filter('.active'); + var $next; + + // Determine next. + if ($current.length == 0 + || $current.index() == $classes.length - 1) + $next = $classes.first(); + else + $next = $current.next(); + + // Turn on animate all. + $this.addClass('demo-animate-all'); + + // Deactivate current. + $current.removeClass('active'); + $this.removeClass($current.data('class')); + + // Activate next. + $next.addClass('active'); + $this.addClass($next.data('class')); + + // Turn off animate all. + setTimeout(function() { + $this.removeClass('demo-animate-all'); + }, 500); + + }); + + $controls.on('click', '.property[data-name="style"]', function(event) { + + var $property = $(this); + var $classes = $property.find('.classes > *'); + var $current = $classes.filter('.active'); + var $next; + + // Determine next. + if ($current.length == 0 + || $current.index() == $classes.length - 1) + $next = $classes.first(); + else + $next = $current.next(); + + // Turn on animate all. + $this.addClass('demo-animate-all'); + + // Deactivate current. + $current.removeClass('active'); + $this.removeClass($current.data('class')); + + $controls.find('.property[data-requires="' + $current.data('class') + '"]') + .removeClass('active'); + + $controls.find('.property[data-requires="' + $current.data('class') + '"] > .classes > .active').each(function() { + + $(this).removeClass('active'); + + if ($(this).data('class') != '-') + $this.removeClass($(this).data('class')); + + }); + + // Activate next. + $next.addClass('active'); + $this.addClass($next.data('class')); + + $controls.find('.property[data-requires="' + $next.data('class') + '"]') + .addClass('active'); + + $controls.find('.property[data-requires="' + $next.data('class') + '"] > .classes > .default').each(function() { + + $(this).addClass('active'); + + if ($(this).data('class') != '-') + $this.addClass($(this).data('class')); + + }); + + // Turn off animate all. + setTimeout(function() { + $this.removeClass('demo-animate-all'); + }, 500); + + }); + + }; + + // Elements. + + // Wrappers. + $('.wrapper').demo_controls(null, { + palette: true + }); + + // Banner. + $('.banner').demo_controls({ + style1: { + 'size': { + '-': 'normal', + 'fullscreen': 'fullscreen*' + }, + 'orientation': { + 'orient-left': 'left*', + 'orient-right': 'right' + }, + 'content alignment': { + 'content-align-left': 'left*', + 'content-align-center': 'center', + 'content-align-right': 'right' + }, + 'image position': { + 'image-position-left': 'left', + 'image-position-center': 'center*', + 'image-position-right': 'right' + } + }, + style2: { + 'size': { + '-': 'normal', + 'fullscreen': 'fullscreen*' + }, + 'orientation': { + 'orient-left': 'left', + 'orient-center': 'center*', + 'orient-right': 'right' + }, + 'content alignment': { + 'content-align-left': 'left', + 'content-align-center': 'center*', + 'content-align-right': 'right' + }, + 'image position': { + 'image-position-left': 'left', + 'image-position-center': 'center*', + 'image-position-right': 'right' + } + }, + style3: { + 'size': { + '-': 'normal', + 'fullscreen': 'fullscreen*' + }, + 'orientation': { + 'orient-left': 'left', + 'orient-right': 'right*' + }, + 'content alignment': { + 'content-align-left': 'left*', + 'content-align-center': 'center', + 'content-align-right': 'right' + }, + 'image position': { + 'image-position-left': 'left', + 'image-position-center': 'center*', + 'image-position-right': 'right' + } + }, + style4: { + 'size': { + '-': 'normal', + 'fullscreen': 'fullscreen*' + }, + 'phone type': { + 'iphone': 'iphone*', + 'android': 'android' + }, + 'orientation': { + 'orient-left': 'left', + 'orient-right': 'right*' + }, + 'content alignment': { + 'content-align-left': 'left*', + 'content-align-center': 'center', + 'content-align-right': 'right' + }, + 'image position': { + 'image-position-left': 'left', + 'image-position-center': 'center*', + 'image-position-right': 'right' + } + }, + style5: { + 'size': { + '-': 'normal', + 'fullscreen': 'fullscreen*' + }, + 'content alignment': { + 'content-align-left': 'left', + 'content-align-center': 'center*', + 'content-align-right': 'right' + }, + 'image position': { + 'image-position-left': 'left', + 'image-position-center': 'center*', + 'image-position-right': 'right' + } + } + }); + + // Spotlight. + $('.spotlight').demo_controls({ + style1: { + 'orientation': { + 'orient-left': 'left', + 'orient-right': 'right*' + }, + 'content alignment': { + 'content-align-left': 'left*', + 'content-align-center': 'center', + 'content-align-right': 'right' + }, + 'image position': { + 'image-position-left': 'left*', + 'image-position-center': 'center', + 'image-position-right': 'right' + } + }, + style2: { + 'orientation': { + 'orient-left': 'left', + 'orient-right': 'right*' + }, + 'content alignment': { + 'content-align-left': 'left*', + 'content-align-center': 'center', + 'content-align-right': 'right' + }, + 'image position': { + 'image-position-left': 'left', + 'image-position-center': 'center*', + 'image-position-right': 'right' + } + }, + style3: { + 'phone type': { + 'iphone': 'iphone*', + 'android': 'android' + }, + 'orientation': { + 'orient-left': 'left', + 'orient-right': 'right*' + }, + 'content alignment': { + 'content-align-left': 'left*', + 'content-align-center': 'center', + 'content-align-right': 'right' + }, + 'image position': { + 'image-position-left': 'left', + 'image-position-center': 'center*', + 'image-position-right': 'right' + } + }, + style4: { + 'size': { + '-size': 'normal', + 'fullscreen': 'fullscreen*', + 'halfscreen': 'halfscreen' + }, + 'orientation': { + 'orient-left': 'left*', + 'orient-center': 'center', + 'orient-right': 'right' + }, + 'content alignment': { + 'content-align-left': 'left*', + 'content-align-center': 'center', + 'content-align-right': 'right' + }, + 'image position': { + 'image-position-left': 'left', + 'image-position-center': 'center*', + 'image-position-right': 'right' + } + }, + style5: { + 'size': { + '-size': 'normal', + 'fullscreen': 'fullscreen*', + 'halfscreen': 'halfscreen' + }, + 'orientation': { + 'orient-left': 'left*', + 'orient-center': 'center', + 'orient-right': 'right' + }, + 'content alignment': { + 'content-align-left': 'left*', + 'content-align-center': 'center', + 'content-align-right': 'right' + }, + 'image position': { + 'image-position-left': 'left', + 'image-position-center': 'center*', + 'image-position-right': 'right' + } + }, + }); + + // Gallery. + $('.gallery').demo_controls({ + style1: { + 'size': { + 'small': 'small', + 'medium': 'medium*', + 'big': 'big' + } + }, + style2: { + 'size': { + 'small': 'small', + 'medium': 'medium*', + 'big': 'big' + } + }, + }, { + target: 'previous', + palette: false + }); + + // Items. + $('.items').demo_controls({ + style1: { + 'size': { + 'small': 'small', + 'medium': 'medium*', + 'big': 'big' + } + }, + style2: { + 'size': { + 'small': 'small', + 'medium': 'medium*', + 'big': 'big' + } + }, + style3: { + 'size': { + 'small': 'small', + 'medium': 'medium*', + 'big': 'big' + } + } + }, { + target: 'previous', + palette: false + }); + +})(jQuery); \ No newline at end of file diff --git a/assets/js/jquery-3.4.1.min.js b/assets/js/jquery-3.4.1.min.js new file mode 100644 index 0000000..a1c07fd --- /dev/null +++ b/assets/js/jquery-3.4.1.min.js @@ -0,0 +1,2 @@ +/*! jQuery v3.4.1 | (c) JS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],E=C.document,r=Object.getPrototypeOf,s=t.slice,g=t.concat,u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.4.1",k=function(e,t){return new k.fn.init(e,t)},p=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;function d(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp($),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+$),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),ne=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(m.childNodes),m.childNodes),t[m.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&((e?e.ownerDocument||e:m)!==C&&T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!A[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&U.test(t)){(s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=k),o=(l=h(t)).length;while(o--)l[o]="#"+s+" "+xe(l[o]);c=l.join(","),f=ee.test(t)&&ye(e.parentNode)||e}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){A(t,!0)}finally{s===k&&e.removeAttribute("id")}}}return g(t.replace(B,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[k]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:m;return r!==C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),m!==C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=k,!C.getElementsByName||!C.getElementsByName(k).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+k+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||v.push(".#.+[+~]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",$)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e===C||e.ownerDocument===m&&y(m,e)?-1:t===C||t.ownerDocument===m&&y(m,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===C?-1:t===C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]===m?-1:s[r]===m?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if((e.ownerDocument||e)!==C&&T(e),d.matchesSelector&&E&&!A[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){A(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=p[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&p(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?k.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?k.grep(e,function(e){return e===n!==r}):"string"!=typeof n?k.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(k.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||q,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:L.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof k?t[0]:t,k.merge(this,k.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),D.test(r[1])&&k.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(k):k.makeArray(e,this)}).prototype=k.fn,q=k(E);var H=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};function P(e,t){while((e=e[t])&&1!==e.nodeType);return e}k.fn.extend({has:function(e){var t=k(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?k.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;nx",y.noCloneChecked=!!me.cloneNode(!0).lastChild.defaultValue;var Te=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ee=/^([^.]*)(?:\.(.+)|)/;function ke(){return!0}function Se(){return!1}function Ne(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ae(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ae(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Se;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return k().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=k.guid++)),e.each(function(){k.event.add(this,t,i,r,n)})}function De(e,i,o){o?(Q.set(e,i,!1),k.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Q.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(k.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Q.set(this,i,r),t=o(this,i),this[i](),r!==(n=Q.get(this,i))||t?Q.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(Q.set(this,i,{value:k.event.trigger(k.extend(r[0],k.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Q.get(e,i)&&k.event.add(e,i,ke)}k.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.get(t);if(v){n.handler&&(n=(o=n).handler,i=o.selector),i&&k.find.matchesSelector(ie,i),n.guid||(n.guid=k.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof k&&k.event.triggered!==e.type?k.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(R)||[""]).length;while(l--)d=g=(s=Ee.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=k.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=k.event.special[d]||{},c=k.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&k.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),k.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.hasData(e)&&Q.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(R)||[""]).length;while(l--)if(d=g=(s=Ee.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=k.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||k.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)k.event.remove(e,d+t[l],n,r,!0);k.isEmptyObject(u)&&Q.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=k.event.fix(e),u=new Array(arguments.length),l=(Q.get(this,"events")||{})[s.type]||[],c=k.event.special[s.type]||{};for(u[0]=s,t=1;t\x20\t\r\n\f]*)[^>]*)\/>/gi,qe=/\s*$/g;function Oe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&k(e).children("tbody")[0]||e}function Pe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Re(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Me(e,t){var n,r,i,o,a,s,u,l;if(1===t.nodeType){if(Q.hasData(e)&&(o=Q.access(e),a=Q.set(t,o),l=o.events))for(i in delete a.handle,a.events={},l)for(n=0,r=l[i].length;n")},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=oe(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||k.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Vt,Gt=[],Yt=/(=)\?(?=&|$)|\?\?/;k.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Gt.pop()||k.expando+"_"+kt++;return this[e]=!0,e}}),k.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Yt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Yt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Yt,"$1"+r):!1!==e.jsonp&&(e.url+=(St.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||k.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?k(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Gt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Vt=E.implementation.createHTMLDocument("").body).innerHTML="
",2===Vt.childNodes.length),k.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=D.exec(e))?[t.createElement(i[1])]:(i=we([e],t,o),o&&o.length&&k(o).remove(),k.merge([],i.childNodes)));var r,i,o},k.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(k.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},k.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){k.fn[t]=function(e){return this.on(t,e)}}),k.expr.pseudos.animated=function(t){return k.grep(k.timers,function(e){return t===e.elem}).length},k.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=k.css(e,"position"),c=k(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=k.css(e,"top"),u=k.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,k.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},k.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){k.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===k.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===k.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=k(e).offset()).top+=k.css(e,"borderTopWidth",!0),i.left+=k.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-k.css(r,"marginTop",!0),left:t.left-i.left-k.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===k.css(e,"position"))e=e.offsetParent;return e||ie})}}),k.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;k.fn[t]=function(e){return _(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),k.each(["top","left"],function(e,n){k.cssHooks[n]=ze(y.pixelPosition,function(e,t){if(t)return t=_e(e,n),$e.test(t)?k(e).position()[n]+"px":t})}),k.each({Height:"height",Width:"width"},function(a,s){k.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){k.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return _(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?k.css(e,t,i):k.style(e,t,n,i)},s,n?e:void 0,n)}})}),k.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){k.fn[n]=function(e,t){return 0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp($),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+$),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),ne=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(m.childNodes),m.childNodes),t[m.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&((e?e.ownerDocument||e:m)!==C&&T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!A[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&U.test(t)){(s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=k),o=(l=h(t)).length;while(o--)l[o]="#"+s+" "+xe(l[o]);c=l.join(","),f=ee.test(t)&&ye(e.parentNode)||e}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){A(t,!0)}finally{s===k&&e.removeAttribute("id")}}}return g(t.replace(B,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[k]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:m;return r!==C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),m!==C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=k,!C.getElementsByName||!C.getElementsByName(k).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+k+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||v.push(".#.+[+~]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",$)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e===C||e.ownerDocument===m&&y(m,e)?-1:t===C||t.ownerDocument===m&&y(m,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===C?-1:t===C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]===m?-1:s[r]===m?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if((e.ownerDocument||e)!==C&&T(e),d.matchesSelector&&E&&!A[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){A(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=p[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&p(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?k.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?k.grep(e,function(e){return e===n!==r}):"string"!=typeof n?k.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(k.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||q,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:L.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof k?t[0]:t,k.merge(this,k.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),D.test(r[1])&&k.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(k):k.makeArray(e,this)}).prototype=k.fn,q=k(E);var H=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};function P(e,t){while((e=e[t])&&1!==e.nodeType);return e}k.fn.extend({has:function(e){var t=k(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?k.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;nx",y.noCloneChecked=!!me.cloneNode(!0).lastChild.defaultValue;var Te=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ee=/^([^.]*)(?:\.(.+)|)/;function ke(){return!0}function Se(){return!1}function Ne(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ae(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ae(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Se;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return k().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=k.guid++)),e.each(function(){k.event.add(this,t,i,r,n)})}function De(e,i,o){o?(Q.set(e,i,!1),k.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Q.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(k.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Q.set(this,i,r),t=o(this,i),this[i](),r!==(n=Q.get(this,i))||t?Q.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(Q.set(this,i,{value:k.event.trigger(k.extend(r[0],k.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Q.get(e,i)&&k.event.add(e,i,ke)}k.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.get(t);if(v){n.handler&&(n=(o=n).handler,i=o.selector),i&&k.find.matchesSelector(ie,i),n.guid||(n.guid=k.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof k&&k.event.triggered!==e.type?k.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(R)||[""]).length;while(l--)d=g=(s=Ee.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=k.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=k.event.special[d]||{},c=k.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&k.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),k.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.hasData(e)&&Q.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(R)||[""]).length;while(l--)if(d=g=(s=Ee.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=k.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||k.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)k.event.remove(e,d+t[l],n,r,!0);k.isEmptyObject(u)&&Q.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=k.event.fix(e),u=new Array(arguments.length),l=(Q.get(this,"events")||{})[s.type]||[],c=k.event.special[s.type]||{};for(u[0]=s,t=1;t\x20\t\r\n\f]*)[^>]*)\/>/gi,qe=/\s*$/g;function Oe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&k(e).children("tbody")[0]||e}function Pe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Re(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Me(e,t){var n,r,i,o,a,s,u,l;if(1===t.nodeType){if(Q.hasData(e)&&(o=Q.access(e),a=Q.set(t,o),l=o.events))for(i in delete a.handle,a.events={},l)for(n=0,r=l[i].length;n")},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=oe(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||k.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Vt,Gt=[],Yt=/(=)\?(?=&|$)|\?\?/;k.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Gt.pop()||k.expando+"_"+kt++;return this[e]=!0,e}}),k.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Yt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Yt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Yt,"$1"+r):!1!==e.jsonp&&(e.url+=(St.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||k.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?k(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Gt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Vt=E.implementation.createHTMLDocument("").body).innerHTML="
",2===Vt.childNodes.length),k.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=D.exec(e))?[t.createElement(i[1])]:(i=we([e],t,o),o&&o.length&&k(o).remove(),k.merge([],i.childNodes)));var r,i,o},k.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(k.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},k.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){k.fn[t]=function(e){return this.on(t,e)}}),k.expr.pseudos.animated=function(t){return k.grep(k.timers,function(e){return t===e.elem}).length},k.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=k.css(e,"position"),c=k(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=k.css(e,"top"),u=k.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,k.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},k.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){k.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===k.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===k.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=k(e).offset()).top+=k.css(e,"borderTopWidth",!0),i.left+=k.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-k.css(r,"marginTop",!0),left:t.left-i.left-k.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===k.css(e,"position"))e=e.offsetParent;return e||ie})}}),k.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;k.fn[t]=function(e){return _(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),k.each(["top","left"],function(e,n){k.cssHooks[n]=ze(y.pixelPosition,function(e,t){if(t)return t=_e(e,n),$e.test(t)?k(e).position()[n]+"px":t})}),k.each({Height:"height",Width:"width"},function(a,s){k.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){k.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return _(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?k.css(e,t,i):k.style(e,t,n,i)},s,n?e:void 0,n)}})}),k.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){k.fn[n]=function(e,t){return 01){for(var r=0;r=i&&o>=t};break;case"bottom":h=function(t,e,n,i,o){return n>=i&&o>=n};break;case"middle":h=function(t,e,n,i,o){return e>=i&&o>=e};break;case"top-only":h=function(t,e,n,i,o){return i>=t&&n>=i};break;case"bottom-only":h=function(t,e,n,i,o){return n>=o&&o>=t};break;default:case"default":h=function(t,e,n,i,o){return n>=i&&o>=t}}return c=function(t){var i,o,l,s,r,a,u=this.state,h=!1,c=this.$element.offset();i=n.height(),o=t+i/2,l=t+i,s=this.$element.outerHeight(),r=c.top+e(this.options.top,s,i),a=c.top+s-e(this.options.bottom,s,i),h=this.test(t,o,l,r,a),h!=u&&(this.state=h,h?this.options.enter&&this.options.enter.apply(this.element):this.options.leave&&this.options.leave.apply(this.element)),this.options.scroll&&this.options.scroll.apply(this.element,[(o-r)/(a-r)])},p={id:a,options:u,test:h,handler:c,state:null,element:this,$element:s,timeoutId:null},o[a]=p,s.data("_scrollexId",p.id),p.options.initialize&&p.options.initialize.apply(this),s},jQuery.fn.unscrollex=function(){var e=t(this);if(0==this.length)return e;if(this.length>1){for(var n=0;n1){for(o=0;o $window.height()) + $x.css('height', 'auto'); + else + $x.css('height', '100vh'); + + }, 250); + + }).triggerHandler('resize.flexbox-fix'); + + })(); + + // Object fit workaround. + if (!browser.canUse('object-fit')) + (function() { + + $('.banner .image, .spotlight .image').each(function() { + + var $this = $(this), + $img = $this.children('img'), + positionClass = $this.parent().attr('class').match(/image-position-([a-z]+)/); + + // Set image. + $this + .css('background-image', 'url("' + $img.attr('src') + '")') + .css('background-repeat', 'no-repeat') + .css('background-size', 'cover'); + + // Set position. + switch (positionClass.length > 1 ? positionClass[1] : '') { + + case 'left': + $this.css('background-position', 'left'); + break; + + case 'right': + $this.css('background-position', 'right'); + break; + + default: + case 'center': + $this.css('background-position', 'center'); + break; + + } + + // Hide original. + $img.css('opacity', '0'); + + }); + + })(); + + // Smooth scroll. + $('.smooth-scroll').scrolly(); + $('.smooth-scroll-middle').scrolly({ anchor: 'middle' }); + + // Wrapper. + $wrapper.children() + .scrollex({ + top: '30vh', + bottom: '30vh', + initialize: function() { + $(this).addClass('is-inactive'); + }, + terminate: function() { + $(this).removeClass('is-inactive'); + }, + enter: function() { + $(this).removeClass('is-inactive'); + }, + leave: function() { + + var $this = $(this); + + if ($this.hasClass('onscroll-bidirectional')) + $this.addClass('is-inactive'); + + } + }); + + // Items. + $('.items') + .scrollex({ + top: '30vh', + bottom: '30vh', + delay: 50, + initialize: function() { + $(this).addClass('is-inactive'); + }, + terminate: function() { + $(this).removeClass('is-inactive'); + }, + enter: function() { + $(this).removeClass('is-inactive'); + }, + leave: function() { + + var $this = $(this); + + if ($this.hasClass('onscroll-bidirectional')) + $this.addClass('is-inactive'); + + } + }) + .children() + .wrapInner('
'); + + // Gallery. + $('.gallery') + .wrapInner('
') + .prepend(browser.mobile ? '' : '
') + .scrollex({ + top: '30vh', + bottom: '30vh', + delay: 50, + initialize: function() { + $(this).addClass('is-inactive'); + }, + terminate: function() { + $(this).removeClass('is-inactive'); + }, + enter: function() { + $(this).removeClass('is-inactive'); + }, + leave: function() { + + var $this = $(this); + + if ($this.hasClass('onscroll-bidirectional')) + $this.addClass('is-inactive'); + + } + }) + .children('.inner') + //.css('overflow', 'hidden') + .css('overflow-y', browser.mobile ? 'visible' : 'hidden') + .css('overflow-x', browser.mobile ? 'scroll' : 'hidden') + .scrollLeft(0); + + // Style #1. + // ... + + // Style #2. + $('.gallery') + .on('wheel', '.inner', function(event) { + + var $this = $(this), + delta = (event.originalEvent.deltaX * 10); + + // Cap delta. + if (delta > 0) + delta = Math.min(25, delta); + else if (delta < 0) + delta = Math.max(-25, delta); + + // Scroll. + $this.scrollLeft( $this.scrollLeft() + delta ); + + }) + .on('mouseenter', '.forward, .backward', function(event) { + + var $this = $(this), + $inner = $this.siblings('.inner'), + direction = ($this.hasClass('forward') ? 1 : -1); + + // Clear move interval. + clearInterval(this._gallery_moveIntervalId); + + // Start interval. + this._gallery_moveIntervalId = setInterval(function() { + $inner.scrollLeft( $inner.scrollLeft() + (5 * direction) ); + }, 10); + + }) + .on('mouseleave', '.forward, .backward', function(event) { + + // Clear move interval. + clearInterval(this._gallery_moveIntervalId); + + }); + + // Lightbox. + $('.gallery.lightbox') + .on('click', 'a', function(event) { + + var $a = $(this), + $gallery = $a.parents('.gallery'), + $modal = $gallery.children('.modal'), + $modalImg = $modal.find('img'), + href = $a.attr('href'); + + // Not an image? Bail. + if (!href.match(/\.(jpg|gif|png|mp4)$/)) + return; + + // Prevent default. + event.preventDefault(); + event.stopPropagation(); + + // Locked? Bail. + if ($modal[0]._locked) + return; + + // Lock. + $modal[0]._locked = true; + + // Set src. + $modalImg.attr('src', href); + + // Set visible. + $modal.addClass('visible'); + + // Focus. + $modal.focus(); + + // Delay. + setTimeout(function() { + + // Unlock. + $modal[0]._locked = false; + + }, 600); + + }) + .on('click', '.modal', function(event) { + + var $modal = $(this), + $modalImg = $modal.find('img'); + + // Locked? Bail. + if ($modal[0]._locked) + return; + + // Already hidden? Bail. + if (!$modal.hasClass('visible')) + return; + + // Lock. + $modal[0]._locked = true; + + // Clear visible, loaded. + $modal + .removeClass('loaded') + + // Delay. + setTimeout(function() { + + $modal + .removeClass('visible') + + setTimeout(function() { + + // Clear src. + $modalImg.attr('src', ''); + + // Unlock. + $modal[0]._locked = false; + + // Focus. + $body.focus(); + + }, 475); + + }, 125); + + }) + .on('keypress', '.modal', function(event) { + + var $modal = $(this); + + // Escape? Hide modal. + if (event.keyCode == 27) + $modal.trigger('click'); + + }) + .prepend('') + .find('img') + .on('load', function(event) { + + var $modalImg = $(this), + $modal = $modalImg.parents('.modal'); + + setTimeout(function() { + + // No longer visible? Bail. + if (!$modal.hasClass('visible')) + return; + + // Set loaded. + $modal.addClass('loaded'); + + }, 275); + + }); + +})(jQuery); \ No newline at end of file diff --git a/assets/js/set.js b/assets/js/set.js new file mode 100644 index 0000000..6100773 --- /dev/null +++ b/assets/js/set.js @@ -0,0 +1,32 @@ +// When the user scrolls the page, execute scrollMenu +window.onscroll = function () { scrollMenu() }; + +// Get the navbar +var navbar = document.getElementById("logo"); + +// Get the offset position of the navbar +var sticky = navbar.offsetTop; + + + +// Add the sticky class to the navbar when you reach its scroll position. Remove "sticky" when you leave the scroll position +function scrollMenu() { + if (window.pageYOffset >= sticky) { + navbar.classList.add("sticky") + } else { + navbar.classList.remove("sticky") + + } +} + +// Make a pretty background when menu is open +var bodyBluring = document.getElementById("wrapper") + +function blurBody() { + bodyBluring.classList.toggle("blurredout"); +} +function removeBlur() { + bodyBluring.classList.remove("blurredout") +} + +/// request permission to autoplay \ No newline at end of file diff --git a/assets/js/util.js b/assets/js/util.js new file mode 100644 index 0000000..bdb8e9f --- /dev/null +++ b/assets/js/util.js @@ -0,0 +1,587 @@ +(function($) { + + /** + * Generate an indented list of links from a nav. Meant for use with panel(). + * @return {jQuery} jQuery object. + */ + $.fn.navList = function() { + + var $this = $(this); + $a = $this.find('a'), + b = []; + + $a.each(function() { + + var $this = $(this), + indent = Math.max(0, $this.parents('li').length - 1), + href = $this.attr('href'), + target = $this.attr('target'); + + b.push( + '' + + '' + + $this.text() + + '' + ); + + }); + + return b.join(''); + + }; + + /** + * Panel-ify an element. + * @param {object} userConfig User config. + * @return {jQuery} jQuery object. + */ + $.fn.panel = function(userConfig) { + + // No elements? + if (this.length == 0) + return $this; + + // Multiple elements? + if (this.length > 1) { + + for (var i=0; i < this.length; i++) + $(this[i]).panel(userConfig); + + return $this; + + } + + // Vars. + var $this = $(this), + $body = $('body'), + $window = $(window), + id = $this.attr('id'), + config; + + // Config. + config = $.extend({ + + // Delay. + delay: 0, + + // Hide panel on link click. + hideOnClick: false, + + // Hide panel on escape keypress. + hideOnEscape: false, + + // Hide panel on swipe. + hideOnSwipe: false, + + // Reset scroll position on hide. + resetScroll: false, + + // Reset forms on hide. + resetForms: false, + + // Side of viewport the panel will appear. + side: null, + + // Target element for "class". + target: $this, + + // Class to toggle. + visibleClass: 'visible' + + }, userConfig); + + // Expand "target" if it's not a jQuery object already. + if (typeof config.target != 'jQuery') + config.target = $(config.target); + + // Panel. + + // Methods. + $this._hide = function(event) { + + // Already hidden? Bail. + if (!config.target.hasClass(config.visibleClass)) + return; + + // If an event was provided, cancel it. + if (event) { + + event.preventDefault(); + event.stopPropagation(); + + } + + // Hide. + config.target.removeClass(config.visibleClass); + + // Post-hide stuff. + window.setTimeout(function() { + + // Reset scroll position. + if (config.resetScroll) + $this.scrollTop(0); + + // Reset forms. + if (config.resetForms) + $this.find('form').each(function() { + this.reset(); + }); + + }, config.delay); + + }; + + // Vendor fixes. + $this + .css('-ms-overflow-style', '-ms-autohiding-scrollbar') + .css('-webkit-overflow-scrolling', 'touch'); + + // Hide on click. + if (config.hideOnClick) { + + $this.find('a') + .css('-webkit-tap-highlight-color', 'rgba(0,0,0,0)'); + + $this + .on('click', 'a', function(event) { + + var $a = $(this), + href = $a.attr('href'), + target = $a.attr('target'); + + if (!href || href == '#' || href == '' || href == '#' + id) + return; + + // Cancel original event. + event.preventDefault(); + event.stopPropagation(); + + // Hide panel. + $this._hide(); + + // Redirect to href. + window.setTimeout(function() { + + if (target == '_blank') + window.open(href); + else + window.location.href = href; + + }, config.delay + 10); + + }); + + } + + // Event: Touch stuff. + $this.on('touchstart', function(event) { + + $this.touchPosX = event.originalEvent.touches[0].pageX; + $this.touchPosY = event.originalEvent.touches[0].pageY; + + }) + + $this.on('touchmove', function(event) { + + if ($this.touchPosX === null + || $this.touchPosY === null) + return; + + var diffX = $this.touchPosX - event.originalEvent.touches[0].pageX, + diffY = $this.touchPosY - event.originalEvent.touches[0].pageY, + th = $this.outerHeight(), + ts = ($this.get(0).scrollHeight - $this.scrollTop()); + + // Hide on swipe? + if (config.hideOnSwipe) { + + var result = false, + boundary = 20, + delta = 50; + + switch (config.side) { + + case 'left': + result = (diffY < boundary && diffY > (-1 * boundary)) && (diffX > delta); + break; + + case 'right': + result = (diffY < boundary && diffY > (-1 * boundary)) && (diffX < (-1 * delta)); + break; + + case 'top': + result = (diffX < boundary && diffX > (-1 * boundary)) && (diffY > delta); + break; + + case 'bottom': + result = (diffX < boundary && diffX > (-1 * boundary)) && (diffY < (-1 * delta)); + break; + + default: + break; + + } + + if (result) { + + $this.touchPosX = null; + $this.touchPosY = null; + $this._hide(); + + return false; + + } + + } + + // Prevent vertical scrolling past the top or bottom. + if (($this.scrollTop() < 0 && diffY < 0) + || (ts > (th - 2) && ts < (th + 2) && diffY > 0)) { + + event.preventDefault(); + event.stopPropagation(); + + } + + }); + + // Event: Prevent certain events inside the panel from bubbling. + $this.on('click touchend touchstart touchmove', function(event) { + event.stopPropagation(); + }); + + // Event: Hide panel if a child anchor tag pointing to its ID is clicked. + $this.on('click', 'a[href="#' + id + '"]', function(event) { + + event.preventDefault(); + event.stopPropagation(); + + config.target.removeClass(config.visibleClass); + + }); + + // Body. + + // Event: Hide panel on body click/tap. + $body.on('click touchend', function(event) { + $this._hide(event); + }); + + // Event: Toggle. + $body.on('click', 'a[href="#' + id + '"]', function(event) { + + event.preventDefault(); + event.stopPropagation(); + + config.target.toggleClass(config.visibleClass); + + }); + + // Window. + + // Event: Hide on ESC. + if (config.hideOnEscape) + $window.on('keydown', function(event) { + + if (event.keyCode == 27) + $this._hide(event); + + }); + + return $this; + + }; + + /** + * Apply "placeholder" attribute polyfill to one or more forms. + * @return {jQuery} jQuery object. + */ + $.fn.placeholder = function() { + + // Browser natively supports placeholders? Bail. + if (typeof (document.createElement('input')).placeholder != 'undefined') + return $(this); + + // No elements? + if (this.length == 0) + return $this; + + // Multiple elements? + if (this.length > 1) { + + for (var i=0; i < this.length; i++) + $(this[i]).placeholder(); + + return $this; + + } + + // Vars. + var $this = $(this); + + // Text, TextArea. + $this.find('input[type=text],textarea') + .each(function() { + + var i = $(this); + + if (i.val() == '' + || i.val() == i.attr('placeholder')) + i + .addClass('polyfill-placeholder') + .val(i.attr('placeholder')); + + }) + .on('blur', function() { + + var i = $(this); + + if (i.attr('name').match(/-polyfill-field$/)) + return; + + if (i.val() == '') + i + .addClass('polyfill-placeholder') + .val(i.attr('placeholder')); + + }) + .on('focus', function() { + + var i = $(this); + + if (i.attr('name').match(/-polyfill-field$/)) + return; + + if (i.val() == i.attr('placeholder')) + i + .removeClass('polyfill-placeholder') + .val(''); + + }); + + // Password. + $this.find('input[type=password]') + .each(function() { + + var i = $(this); + var x = $( + $('
') + .append(i.clone()) + .remove() + .html() + .replace(/type="password"/i, 'type="text"') + .replace(/type=password/i, 'type=text') + ); + + if (i.attr('id') != '') + x.attr('id', i.attr('id') + '-polyfill-field'); + + if (i.attr('name') != '') + x.attr('name', i.attr('name') + '-polyfill-field'); + + x.addClass('polyfill-placeholder') + .val(x.attr('placeholder')).insertAfter(i); + + if (i.val() == '') + i.hide(); + else + x.hide(); + + i + .on('blur', function(event) { + + event.preventDefault(); + + var x = i.parent().find('input[name=' + i.attr('name') + '-polyfill-field]'); + + if (i.val() == '') { + + i.hide(); + x.show(); + + } + + }); + + x + .on('focus', function(event) { + + event.preventDefault(); + + var i = x.parent().find('input[name=' + x.attr('name').replace('-polyfill-field', '') + ']'); + + x.hide(); + + i + .show() + .focus(); + + }) + .on('keypress', function(event) { + + event.preventDefault(); + x.val(''); + + }); + + }); + + // Events. + $this + .on('submit', function() { + + $this.find('input[type=text],input[type=password],textarea') + .each(function(event) { + + var i = $(this); + + if (i.attr('name').match(/-polyfill-field$/)) + i.attr('name', ''); + + if (i.val() == i.attr('placeholder')) { + + i.removeClass('polyfill-placeholder'); + i.val(''); + + } + + }); + + }) + .on('reset', function(event) { + + event.preventDefault(); + + $this.find('select') + .val($('option:first').val()); + + $this.find('input,textarea') + .each(function() { + + var i = $(this), + x; + + i.removeClass('polyfill-placeholder'); + + switch (this.type) { + + case 'submit': + case 'reset': + break; + + case 'password': + i.val(i.attr('defaultValue')); + + x = i.parent().find('input[name=' + i.attr('name') + '-polyfill-field]'); + + if (i.val() == '') { + i.hide(); + x.show(); + } + else { + i.show(); + x.hide(); + } + + break; + + case 'checkbox': + case 'radio': + i.attr('checked', i.attr('defaultValue')); + break; + + case 'text': + case 'textarea': + i.val(i.attr('defaultValue')); + + if (i.val() == '') { + i.addClass('polyfill-placeholder'); + i.val(i.attr('placeholder')); + } + + break; + + default: + i.val(i.attr('defaultValue')); + break; + + } + }); + + }); + + return $this; + + }; + + /** + * Moves elements to/from the first positions of their respective parents. + * @param {jQuery} $elements Elements (or selector) to move. + * @param {bool} condition If true, moves elements to the top. Otherwise, moves elements back to their original locations. + */ + $.prioritize = function($elements, condition) { + + var key = '__prioritize'; + + // Expand $elements if it's not already a jQuery object. + if (typeof $elements != 'jQuery') + $elements = $($elements); + + // Step through elements. + $elements.each(function() { + + var $e = $(this), $p, + $parent = $e.parent(); + + // No parent? Bail. + if ($parent.length == 0) + return; + + // Not moved? Move it. + if (!$e.data(key)) { + + // Condition is false? Bail. + if (!condition) + return; + + // Get placeholder (which will serve as our point of reference for when this element needs to move back). + $p = $e.prev(); + + // Couldn't find anything? Means this element's already at the top, so bail. + if ($p.length == 0) + return; + + // Move element to top of parent. + $e.prependTo($parent); + + // Mark element as moved. + $e.data(key, $p); + + } + + // Moved already? + else { + + // Condition is true? Bail. + if (condition) + return; + + $p = $e.data(key); + + // Move element back to its original location (using our placeholder). + $e.insertAfter($p); + + // Unmark element as moved. + $e.removeData(key); + + } + + }); + + }; + +})(jQuery); \ No newline at end of file diff --git a/assets/webfonts/fa-brands-400.eot b/assets/webfonts/fa-brands-400.eot new file mode 100644 index 0000000..e79f40f Binary files /dev/null and b/assets/webfonts/fa-brands-400.eot differ diff --git a/assets/webfonts/fa-brands-400.svg b/assets/webfonts/fa-brands-400.svg new file mode 100644 index 0000000..ba0d850 --- /dev/null +++ b/assets/webfonts/fa-brands-400.svg @@ -0,0 +1,3442 @@ + + + + + +Created by FontForge 20190112 at Tue Jun 4 15:16:44 2019 + By Robert Madole +Copyright (c) Font Awesome + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/webfonts/fa-brands-400.ttf b/assets/webfonts/fa-brands-400.ttf new file mode 100644 index 0000000..217ffe9 Binary files /dev/null and b/assets/webfonts/fa-brands-400.ttf differ diff --git a/assets/webfonts/fa-brands-400.woff b/assets/webfonts/fa-brands-400.woff new file mode 100644 index 0000000..a2d8025 Binary files /dev/null and b/assets/webfonts/fa-brands-400.woff differ diff --git a/assets/webfonts/fa-brands-400.woff2 b/assets/webfonts/fa-brands-400.woff2 new file mode 100644 index 0000000..e27b0bf Binary files /dev/null and b/assets/webfonts/fa-brands-400.woff2 differ diff --git a/assets/webfonts/fa-regular-400.eot b/assets/webfonts/fa-regular-400.eot new file mode 100644 index 0000000..d62be2f Binary files /dev/null and b/assets/webfonts/fa-regular-400.eot differ diff --git a/assets/webfonts/fa-regular-400.svg b/assets/webfonts/fa-regular-400.svg new file mode 100644 index 0000000..751083e --- /dev/null +++ b/assets/webfonts/fa-regular-400.svg @@ -0,0 +1,803 @@ + + + + + +Created by FontForge 20190112 at Tue Jun 4 15:16:44 2019 + By Robert Madole +Copyright (c) Font Awesome + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/webfonts/fa-regular-400.ttf b/assets/webfonts/fa-regular-400.ttf new file mode 100644 index 0000000..eb3cb5e Binary files /dev/null and b/assets/webfonts/fa-regular-400.ttf differ diff --git a/assets/webfonts/fa-regular-400.woff b/assets/webfonts/fa-regular-400.woff new file mode 100644 index 0000000..43b1a9a Binary files /dev/null and b/assets/webfonts/fa-regular-400.woff differ diff --git a/assets/webfonts/fa-regular-400.woff2 b/assets/webfonts/fa-regular-400.woff2 new file mode 100644 index 0000000..b9344a7 Binary files /dev/null and b/assets/webfonts/fa-regular-400.woff2 differ diff --git a/assets/webfonts/fa-solid-900.eot b/assets/webfonts/fa-solid-900.eot new file mode 100644 index 0000000..c77baa8 Binary files /dev/null and b/assets/webfonts/fa-solid-900.eot differ diff --git a/assets/webfonts/fa-solid-900.svg b/assets/webfonts/fa-solid-900.svg new file mode 100644 index 0000000..627128b --- /dev/null +++ b/assets/webfonts/fa-solid-900.svg @@ -0,0 +1,4649 @@ + + + + + +Created by FontForge 20190112 at Tue Jun 4 15:16:44 2019 + By Robert Madole +Copyright (c) Font Awesome + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/webfonts/fa-solid-900.ttf b/assets/webfonts/fa-solid-900.ttf new file mode 100644 index 0000000..c6c3dd4 Binary files /dev/null and b/assets/webfonts/fa-solid-900.ttf differ diff --git a/assets/webfonts/fa-solid-900.woff b/assets/webfonts/fa-solid-900.woff new file mode 100644 index 0000000..77c1786 Binary files /dev/null and b/assets/webfonts/fa-solid-900.woff differ diff --git a/assets/webfonts/fa-solid-900.woff2 b/assets/webfonts/fa-solid-900.woff2 new file mode 100644 index 0000000..e30fb67 Binary files /dev/null and b/assets/webfonts/fa-solid-900.woff2 differ diff --git a/cookies.md b/cookies.md new file mode 100644 index 0000000..d427a51 --- /dev/null +++ b/cookies.md @@ -0,0 +1,155 @@ +--- +title: Cookies & Privacy policy +image: /assets/img/arget-zvhhkivur9m-unsplash.jpg +description: 'Privacy is important, therefor we respect it!' +sitemap: false +layout: page +--- + +To improve our marketing efforts, we at {{ site.publisher.name }} sometimes place small data files called cookies on your device. However this site will work perfectly without them. We do however use anonymised analytics of the site-usage regardless of cookies (see bellow if you want to opt out of this too) This usage-data contain no identifiable information. + +## What are cookies? + +A cookie is a small text file that a website stores on your computer or mobile device when you visit the site. + +* **First party cookies** are cookies set by the website you are visiting. Only that website can read them. In addition, a website might potentially use external services, which also set their own cookies, known as **third-party cookies**. +* **Persistent cookies** are cookies saved on your computer and that are not deleted automatically when you quit your browser, **unlike a session cookie**, which is deleted when you quit your browser. + +Every time you visit the websites managed by the {{ site.publisher.name }}, you will be prompted to **accept or refuse cookies**.
The purpose is to enable the site to remember your preferences for a certain period of time.
That way, **you do not have to re-enter them** when browsing around the site during the same visit.
Cookies can also be used to establish anonymised statistics about the browsing experience on our sites. However, if you do not dismiss the cookie-banner, no cookies will be placed in your browser but we will still be able to see your anonymized actions on this website. + +## How do we use cookies? + +The websites managed by the {{ site.publisher.name }} mostly use **first-party cookies**. These are cookies set and controlled by the {{ site.publisher.name }}, not by any external organisation.
However, to view some of our pages, you will have to accept cookies from external organisations. + +The **2 types of first-party cookie** we use are to: + +* store visitor preferences +* gather analytics data (about user behaviour). + +### 1\. Visitor preferences + +This one is set by us. It is only placed if you dismiss the cookie-banner by either chosing to help or declining to help. They remember: + +* if you have agreed to (or refused) this site’s cookie policy +* if you have already replied to our survey pop-up (about how helpful the site content was) – so you will not be asked again. + +**Visitor preferences cookies** are: + +**Name**\: cookie-notice-dissmissed
**Services**\: Cookie consent kit
**Purpose**\: Stores your cookie preferences (so you will not be asked again) This cookie is only placed if you accept or decline to help improve our marketing via the cookie-banner buttons.
**Cookie type and duration:** First-party session cookie deleted after 31 days + +### 2\. Analytics cookies + +We use these purely for internal research on how we can improve the service we provide for all our users.
The cookies simply assess how you interact with our website – as an anonymous user (they **data gathered does not identify you personally**).
Also, this data is **not shared with any third parties** or used for any other purpose. The anonymised statistics could be shared with contractors working on communication projects under contractual agreement with the {{ site.publisher.name }}.
However, you are **free to refuse** these types of cookies –simply let the cookie banner you see in the foot of all pages be displayed + +**Analytics cookies** are: + +**Name**\: \_pk\_id\#
**Services**\: Corporate web analytics service, (Matomo open source software)
**Purpose**\: Recognises website visitors (**anonymously** – no personal information is collected on the user)
**Cookie type and duration**\: First-party persistent cookie, 13 months + +**Name**\: \_pk\_ses\#
**Services**\: Corporate web analytics service, (Matomo open source software**)
Purpose**\: Identifies the pages viewed by the same user during the same visit. (**anonymously** – no personal information is collected on the user)
**Cookie type and duration**\: First-party persistent cookie, 30 minutes + +## Third-party cookies + +Some of our pages display content from external providers, e.g. YouTube, Facebook and Twitter.
To view this third-party content, you first have to accept their specific terms and conditions. This includes their cookie policies, which we have no control over.
But if you do not view this content, no third-party cookies are installed on your device. + +### Third-party providers that may found on this website + +* [YouTube](https://www.youtube.com/t/terms){: target="_blank"} +* [Internet Archive](https://archive.org/about/terms.php){: target="_blank"} +* [ScribbleLive](https://www.scribblelive.com/legal/terms-of-use/){: target="_blank"} +* [Google Maps](https://www.google.com/intl/en_be/help/terms_maps/) +* [Twitter](https://twitter.com/en/tos?wcmmode=disabled#intlTerms){: target="_blank"} +* [TV1](https://www.tv1.eu/en/datenschutz/){: target="_blank"} +* [Vimeo](https://vimeo.com/terms){: target="_blank"} +* [Microsoft](https://www.microsoft.com/en/servicesagreement/){: target="_blank"} +* [Facebook](https://www.facebook.com/legal/terms){: target="_blank"} +* [Google](https://policies.google.com/terms?hl=en&gl=be){: target="_blank"} +* [LinkedIn](https://www.linkedin.com/legal/user-agreement){: target="_blank"} +* [Livestream](https://livestream.com/legal/terms){: target="_blank"} +* [SoundCloud](https://soundcloud.com/pages/privacy){: target="_blank"} +* [European Parliament](http://www.europarl.europa.eu/portal/en/legal-notice){: target="_blank"} + +These third-party services are outside of the control of the {{ site.publisher.name }}. Providers may, at any time, change their terms of service, purpose and use of cookies, etc. + +## How can you manage cookies? + +You can **manage/delete** cookies as you wish - for details, see [aboutcookies.org](https://www.aboutcookies.org/){: target="_blank"} + +### Removing cookies from your device + +You can delete all cookies that are already on your device by clearing the browsing history of your browser. This will remove all cookies from all websites you have visited.
Be aware though that you may also lose some saved information (e.g. saved login details, site preferences). + +### Managing site-specific cookies + +For more detailed control over site-specific cookies, check the privacy and cookie settings in your preferred browser. + +### Blocking cookies + +You can set most modern browsers to prevent any cookies being placed on your device, but you may then have to manually adjust some preferences every time you visit a site/page. And some services and functionalities may not work properly at all (e.g. profile logging-in). + +### Opting out of all of log-analytics + +(if you can't see a dialogue box here, you are already opted out by your browser and/or any of it's add-ons)

+ + + +## Personal data protection + +{{ site.publisher.name }} is committed to user privacy. + +The policy on protection of individuals with regard to the processing of personal data by {{ site.publisher.name }} is based on [Regulation (EU) 2018/1725](https://eur-lex.europa.eu/legal-content/EN/TXT/?uri=CELEX:32018R1725) of the European Parliament and Council of 23 October 2018 on the protection of natural persons with regard to the processing of personal data by {{ site.publisher.name }} and on the free movement of such data, and repealing Regulation (EC) No 45/2001 and Decision No 1247/2002/EC. + +This general policy covers the {{ site.publisher.name }}'s family of websites, within the {{ site.publisher.domain }} domain. Although you can browse through most of these websites without giving any personal information, in some cases information is required in order to provide the e-services you request. Websites that require such information treat it in full compliance with the regulation mentioned above and provide information about the use of your data in their specific privacy policy statements. + +In this respect: + +* for each e-service, a controller determines the purposes and means of personal data processing and ensures conformity with the privacy policy +* within each website/e-service, a Data Protection Officer ensures that the provisions of the regulation are applied and advises controllers on fulfilling their obligations + +The {{ site.publisher.name }}'s family of websites, within the {{ site.publisher.domain }} domain, provides links to third party sites. In order to use third party content on our websites, you may need to accept their specific terms and conditions, including their cookie policies, over which we have no control. + +## e-service + +An e-service on {{ site.publisher.domain }} is a service or resource made available on the Internet in order to improve the communication between people, customers, employees and businesses on the one hand and the {{ site.publisher.name }} on the other hand. + +3 types of e-services are, or will be, offered by {{ site.publisher.name }} : + +* information services that provide people, media, businesses, administrations and others with access to information +* interactive communication services that allow better contact with people, businesses, civil society, customers and public bodies, in order to facilitate consultations and feedback +* services that allow access to all basic forms of transactions with {{ site.publisher.name }}, such as  recruitment, event enrolment, and acquisition of documents + +### Information contained in a specific privacy statement + +A specific privacy policy statement will contain the following information about the use of your data + +* what information is collected, for what purpose and the technical means by which {{ site.publisher.name }} collects personal information in order to fulfill a specific purpose +* to whom your information is disclosed +* how you can access your information, verify its accuracy and, if necessary, correct it +* how long your data is kept +* what security measures are taken to safeguard your information against possible misuse or unauthorised access +* whom to contact if you have queries or complaints + +### {{ site.publisher.name }} Analytics + +{{ site.publisher.name }} is the corporation that measures the effectiveness and efficiency of the {{ site.publisher.domain }} site managed by the {{ site.publisher.name }}. + +You are free to refuse the use of this service – either by letting the cookie banner that appears at the bottom of all pages you visit be, and using the settings provided above on this page. + +{{ site.publisher.name }} manages its own web pages This is the page where you can manage your options. + +### Contacting {{ site.publisher.name }} + +Many web pages on {{ site.publisher.domain }} have a contact button, which either sends an email on your behalf of activates your e-mail software and invites you to send your comments to a specific mailbox. + +When you send such a message, your personal data is collected only to the extent necessary to reply. If the management team of the mailbox is unable to answer your question, it will forward your e-mail to another service. You will be informed, via e-mail, about which service your question has been forwarded to. + +If you have any questions about the processing of your e-mail and related personal data, do not hesitate to include them in your message. + +## Safeguarding information + +Collected personal data is stored and encrypted on a computer of the external subcontractor acting as processor, who must guarantee the data protection and confidentiality required by Regulation (EU) 2018/1725. + +## Verifying, modifying or deleting information + +If you want to verify, modify or delete your personal data stored by the responsible controllers for the {{ site.publisher.name }} website and its sub-sites, you can email the data controller for the {{ site.publisher.name }} website at the address below. In your email, clearly state your request and include the URL of the website/webpages your request refers to. + +Email: [{{ site.publisher.mail }}](mailto:{{ site.publisher.mail }}) \ No newline at end of file diff --git a/discography.html b/discography.html new file mode 100644 index 0000000..f034b4b --- /dev/null +++ b/discography.html @@ -0,0 +1,78 @@ +--- +title: Discography +subtitle: Discog +description: Records I have published over the years +tags: + - discography + - releases + - music + - full-length + - albums + - EP +video_path: +image: /assets/img/discog2014.jpg +--- + + + + +
+ +
+

Most of my work

+

A slection of my work

+
+ +
+ +{% assign sorted = site.albums | sort: 'date' | reverse %} +{% for album in sorted %} + +
+
+

{{ album.title }}

+ + + +

{{ album.date | date: '%Y' }}

+ + {% for track in album.tracks %} +

+ {{ track.common.track.no }}. {{ track.common.title }}
+ {% assign round_seconds = track.format.duration | round %}{% assign minutes = round_seconds | divided_by: 60 %}{% assign leftover_seconds = minutes | times: 60 %}{{ minutes }}:{% assign seconds_without_zero = round_seconds | minus: leftover_seconds %}{% if seconds_without_zero < 10 %}0{% endif %}{{ seconds_without_zero }}{% if track.common.genre != null %} | + {{ track.common.genre }} {% endif %} +

+ + + + {% endfor %} + +
+ +
+ +
+ {{ album.title }} + +
+
+ +{% endfor %} + +{% include streamer.html %} + +{% include footer.html %} diff --git a/favicon.ico b/favicon.ico new file mode 100644 index 0000000..373a178 Binary files /dev/null and b/favicon.ico differ diff --git a/favicon.png b/favicon.png new file mode 100644 index 0000000..4218d63 Binary files /dev/null and b/favicon.png differ diff --git a/images/20190114_1untitled.jpg b/images/20190114_1untitled.jpg new file mode 100644 index 0000000..51e9362 Binary files /dev/null and b/images/20190114_1untitled.jpg differ diff --git a/images/20190114untitled.jpg b/images/20190114untitled.jpg new file mode 100644 index 0000000..29d420d Binary files /dev/null and b/images/20190114untitled.jpg differ diff --git a/images/Screenshoter.png b/images/Screenshoter.png new file mode 100644 index 0000000..905b0a3 Binary files /dev/null and b/images/Screenshoter.png differ diff --git a/images/arget-zvhhkivur9m-unsplash.jpg b/images/arget-zvhhkivur9m-unsplash.jpg new file mode 100644 index 0000000..5b3f903 Binary files /dev/null and b/images/arget-zvhhkivur9m-unsplash.jpg differ diff --git a/images/creds.jpg b/images/creds.jpg new file mode 100644 index 0000000..5a8055d Binary files /dev/null and b/images/creds.jpg differ diff --git a/images/darkweb.jpg b/images/darkweb.jpg new file mode 100644 index 0000000..6f41c08 Binary files /dev/null and b/images/darkweb.jpg differ diff --git a/images/darkweb480x480.png b/images/darkweb480x480.png new file mode 100644 index 0000000..03aa7de Binary files /dev/null and b/images/darkweb480x480.png differ diff --git a/images/emptypixel.png b/images/emptypixel.png new file mode 100644 index 0000000..f3f8517 Binary files /dev/null and b/images/emptypixel.png differ diff --git a/images/kaur-kristjan-cppf4w5pb1c-unsplash.jpg b/images/kaur-kristjan-cppf4w5pb1c-unsplash.jpg new file mode 100644 index 0000000..a8b4f81 Binary files /dev/null and b/images/kaur-kristjan-cppf4w5pb1c-unsplash.jpg differ diff --git a/images/nebula-bw.jpg b/images/nebula-bw.jpg new file mode 100644 index 0000000..2d2e53c Binary files /dev/null and b/images/nebula-bw.jpg differ diff --git a/images/nebula.jpg b/images/nebula.jpg new file mode 100644 index 0000000..e6a34cf Binary files /dev/null and b/images/nebula.jpg differ diff --git a/images/nebula.xcf b/images/nebula.xcf new file mode 100644 index 0000000..7eea033 Binary files /dev/null and b/images/nebula.xcf differ diff --git a/images/nebula___.jpg b/images/nebula___.jpg new file mode 100644 index 0000000..bf459d9 Binary files /dev/null and b/images/nebula___.jpg differ diff --git a/images/posts/1-ep-life-of-a-dudelini.jpeg b/images/posts/1-ep-life-of-a-dudelini.jpeg new file mode 100644 index 0000000..c3da8f5 Binary files /dev/null and b/images/posts/1-ep-life-of-a-dudelini.jpeg differ diff --git a/images/posts/1-grandma-got-the-ssh-keys.jpeg b/images/posts/1-grandma-got-the-ssh-keys.jpeg new file mode 100644 index 0000000..f2f5dd4 Binary files /dev/null and b/images/posts/1-grandma-got-the-ssh-keys.jpeg differ diff --git a/images/posts/1-k-as-tu-fait-de-nous-.jpeg b/images/posts/1-k-as-tu-fait-de-nous-.jpeg new file mode 100644 index 0000000..0e3dff8 Binary files /dev/null and b/images/posts/1-k-as-tu-fait-de-nous-.jpeg differ diff --git a/images/posts/2-darkweb-instrumental-.jpeg b/images/posts/2-darkweb-instrumental-.jpeg new file mode 100644 index 0000000..55fd3ef Binary files /dev/null and b/images/posts/2-darkweb-instrumental-.jpeg differ diff --git a/images/satoshimonami.jpg b/images/satoshimonami.jpg new file mode 100644 index 0000000..3851faa Binary files /dev/null and b/images/satoshimonami.jpg differ diff --git a/images/setto-logo-dark.svg b/images/setto-logo-dark.svg new file mode 100644 index 0000000..62c86dd --- /dev/null +++ b/images/setto-logo-dark.svg @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/images/setto-logo.svg b/images/setto-logo.svg new file mode 100644 index 0000000..b369970 --- /dev/null +++ b/images/setto-logo.svg @@ -0,0 +1,34 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/images/setto-logoicon.svg b/images/setto-logoicon.svg new file mode 100644 index 0000000..4014a9d --- /dev/null +++ b/images/setto-logoicon.svg @@ -0,0 +1,134 @@ + +image/svg+xml \ No newline at end of file diff --git a/images/setto_banner.jpg b/images/setto_banner.jpg new file mode 100644 index 0000000..12d9b4e Binary files /dev/null and b/images/setto_banner.jpg differ diff --git a/images/setto_icon.png b/images/setto_icon.png new file mode 100644 index 0000000..bfef833 Binary files /dev/null and b/images/setto_icon.png differ diff --git a/images/setto_logo.png b/images/setto_logo.png new file mode 100644 index 0000000..99e1fae Binary files /dev/null and b/images/setto_logo.png differ diff --git a/images/setto_logo.svg b/images/setto_logo.svg new file mode 100644 index 0000000..64ddd73 --- /dev/null +++ b/images/setto_logo.svg @@ -0,0 +1,152 @@ + +image/svg+xml \ No newline at end of file diff --git a/images/untitled.jpg b/images/untitled.jpg new file mode 100644 index 0000000..d7eb528 Binary files /dev/null and b/images/untitled.jpg differ diff --git a/index.html b/index.html new file mode 100644 index 0000000..4557d3b --- /dev/null +++ b/index.html @@ -0,0 +1,135 @@ +--- +title: Yo, webTV crib! +subtitle: Sakrecoer +description: >- + Set, Party, Gang! #Cybersoul. +tags: + - outernational + - music + - homepage + - free + - culture +image: /images/nebula.jpg +logo_image: /siteicon.png +--- +{% include relBase.html %} + + + + + + + +{% for post in site.posts limit: '2' %} + + + +{% endfor %} +{% include streamer.html %} + + +
+
+

Releases

+

Collection of releases through time

+
+
+ + +{% assign sorted = site.albums | sort: 'date' | reverse %} +{% for album in sorted %} + +
+ + +
+

{{ album.title }}

+

{{ album.date | date: "%Y" }}

+ + +
+
+ {{ album.title | smartify }} +
+ +
+ +{% endfor %} + + +{% include streamer.html %} +{% include footer.html %} diff --git a/links.html b/links.html new file mode 100644 index 0000000..4b41961 --- /dev/null +++ b/links.html @@ -0,0 +1,58 @@ +--- +title: Links +subtitle: Links +description: >- + Venture outside of your daily web-routine, read about some real projects. + These links are way more than just Friends and Resources +tags: + - links + - music + - record + - labels + - resources + - friends +video_path: /assets/vid/links.mp4 +image: /assets/img/linkbg.jpg +--- + +{% include relBase.html %} + + + +
+
+

{{ page.title }}

+

{{ page.description }}

+
+
+{% assign sorted = site.data.links | sort: 'title' %} +{% for link in sorted %} + +
+
+

{{ link.title }}

+

{{ link.banner }}

+ +
+
+ {{ page.title | smartify }} +
+
+ +{% endfor %} +{% include footer.html %} + + + + + + + + diff --git a/log.html b/log.html new file mode 100644 index 0000000..2ffb3c2 --- /dev/null +++ b/log.html @@ -0,0 +1,49 @@ +--- +title: Web-Log +subtitle: What's on my minf +description: 'Ramblings, announcenments and thoughts.' +tags: + - music + - news + - blog + - interviews + - links + - promotion +image: /assets/img/texture.png +--- + +{% include relBase.html %} + + + +
+
+

{{ page.title }}

+

{{ page.description }}

+
+
+{% for post in site.posts %} + +
+
+

{{ post.title }}

+

{{ post.description }}

+ + +
+
+ {{ page.title | smartify }} +
+
+ +{% endfor %} +{% include footer.html %} \ No newline at end of file diff --git a/robots.txt b/robots.txt new file mode 100644 index 0000000..4137002 --- /dev/null +++ b/robots.txt @@ -0,0 +1,6 @@ +--- +layout: null +sitemap: false +--- +User-agent: * +Sitemap: {{ site.url }}/sitemap.xml diff --git a/rss.xml b/rss.xml new file mode 100644 index 0000000..e967134 --- /dev/null +++ b/rss.xml @@ -0,0 +1,59 @@ +--- +layout: nil +title : Sakrecoer RSS Feed +--- + + + + + {{ site.title | xml_escape }} + + {{ site.url }} + {{ site.description | xml_escape }} + {{ site.time | date_to_rfc822 }} + en-US + hourly + 1 + https://jekyllrb.com/ + + + {{ site.url }}{{ site.banner }} + {{ site.title | xml_escape }} + {{ site.url }} + 1024 + 1024 + + + {{ site.title }} + yes + + + {{ site.title | xml_escape }} + info@basspitol.com + + set@basspistol.com (Basspistol) + Anti-Copyright 2018 {{ site.title }} + {{ site.title }} + + + TV-14 + Daily + {% for post in site.posts %} + + {{ post.title | xml_escape }} + {{ site.url }}{{ post.url }} + {{ site.url }}{{ post.url }} + <img src="{{ site.url }}{{ post.image }}" /> <br />{{ post.description | truncate: 150 | xml_escape }} + Hi-Lights + {{ post.author | xml_escape }} + {{ post.date | date_to_rfc822 }} + {{ post.artist | xml_escape }} + No + {{ post.description | strip_html | truncate: 252 | xml_escape }} + {{ post.description | xml_escape }} + {% for tags in post.tags %}{{ tags | strip_html | xml_escape }}{% unless forloop.last %}, {% endunless %}{% endfor %} + + + {% endfor %} + + diff --git a/siteicon.png b/siteicon.png new file mode 100644 index 0000000..03aa7de Binary files /dev/null and b/siteicon.png differ diff --git a/touch-icon.png b/touch-icon.png new file mode 100644 index 0000000..286e53d Binary files /dev/null and b/touch-icon.png differ diff --git a/webcreds.md b/webcreds.md new file mode 100644 index 0000000..9230233 --- /dev/null +++ b/webcreds.md @@ -0,0 +1,20 @@ +--- +title: Webcreds +description: >- + Information and credit regarding authors of tools, content and code used to + build this website. +image: /assets/img/kaur-kristjan-cppf4w5pb1c-unsplash.jpg +layout: page +--- + +## CMS + +Build with [Jekyll](https://jekyllrb.com/){: target="_blank"}
Using [Publikator](https://github.com/terminalnetwork/publikator){: target="_blank"} the rusty metal heart of the Basspistol release machine developed by [aengl.](https://github.com/terminalnetwork/publikator/commits?author=aengl){: target="_blank"}
Facilitated with [CloudCannon, the cloud CMS for Jekyll](https://cloudcannon.com/){: target="_blank"}
Hosted and served by [Basspistol](https://basspistol.com){: target="_blank"} and [Alsenet](https://www.alsenet.com){: target="_blank"} + +## Framework + +Based on *Story* by [html5up.net](https://html5up.net){: target="_blank"} \| @ajlkn Free for personal and commercial use under the CCA 3.0 [license](https://html5up.net/license){: target="_blank"} + +## Artwork + +* 404 Photo by [Kaur Kristjan](https://unsplash.com/@badgerblack?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText){: target="_blank"} \ No newline at end of file