commit d45f8fe12390b72b860e61b984eb8fa07bb7bf7c Author: Anson Date: Wed Mar 4 19:01:53 2020 -0700 basically copy paste from kanye.rest diff --git a/404.html b/404.html new file mode 100644 index 0000000..ec77ff3 --- /dev/null +++ b/404.html @@ -0,0 +1,155 @@ + + + + + + + + + + api.chainz.rest + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+

I'm lost in the world

+ +

- 2 Chainz

+
+
+
+ + diff --git a/CNAME b/CNAME new file mode 100644 index 0000000..85b9520 --- /dev/null +++ b/CNAME @@ -0,0 +1 @@ +api.chainz.rest \ No newline at end of file diff --git a/css/carbon.css b/css/carbon.css new file mode 100644 index 0000000..59fa197 --- /dev/null +++ b/css/carbon.css @@ -0,0 +1,59 @@ +#carbonads { + font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, + Cantarell, "Helvetica Neue", Helvetica, Arial, sans-serif; +} + +#carbonads { + display: flex; + max-width: 330px; + background-color: hsl(0, 0%, 98%); + box-shadow: 0 1px 4px 1px hsla(0, 0%, 0%, .1); +} + +#carbonads a { + color: inherit; + text-decoration: none; +} + +#carbonads a:hover { + color: inherit; +} + +#carbonads span { + position: relative; + display: block; + overflow: hidden; +} + +#carbonads .carbon-wrap { + display: flex; +} + +.carbon-img { + display: block; + margin: 0; + line-height: 1; +} + +.carbon-img img { + display: block; +} + +.carbon-text { + font-size: 13px; + padding: 10px; + line-height: 1.5; + text-align: left; +} + +.carbon-poweredby { + display: block; + padding: 8px 10px; + background: repeating-linear-gradient(-45deg, transparent, transparent 5px, hsla(0, 0%, 0%, .025) 5px, hsla(0, 0%, 0%, .025) 10px) hsla(203, 11%, 95%, .4); + text-align: center; + text-transform: uppercase; + letter-spacing: .5px; + font-weight: 600; + font-size: 9px; + line-height: 1; +} \ No newline at end of file diff --git a/css/chota.css b/css/chota.css new file mode 100644 index 0000000..0682d6e --- /dev/null +++ b/css/chota.css @@ -0,0 +1,1097 @@ +/* Modified */ + +/*! chota.css v0.6.2 | MIT License | github.com/jenil/chota */ + +:root { + --color-primary: #000; + --color-lightGrey: #d2d6dd; + --color-grey: #7e818b; + --color-darkGrey: #3f4144; + --color-bg: #fff; + --grid-maxWidth: 120rem; + --grid-gutter: 2rem; + --font-size: 1.6rem; + --font-family: "Courier New", Courier, "Lucida Sans Typewriter", "Lucida Typewriter", monospace; +} + +[data-theme="dark"] { + --color-primary: #fff; + --color-bg: #000; +} + +* { + -webkit-box-sizing: border-box; + box-sizing: border-box; +} + +html { + font-size: 62.5%; + line-height: 1.15; + -ms-text-size-adjust: 100%; + -webkit-text-size-adjust: 100%; +} + +body { + letter-spacing: 0.01em; + line-height: 1.6; + font-size: var(--font-size); + font-weight: 400; + font-family: "Segoe UI", "Helvetica Neue", sans-serif; + /*fallback*/ + font-family: var(--font-family); + margin: 0; + padding: 0; + background-color: var(--color-bg); +} + +h1, +h2, +h3, +h4, +h5, +h6 { + font-weight: 700; + margin: 0.35em 0 0.7em 0; +} + +h1 { + font-size: 2em; +} + +h2 { + font-size: 1.75em; +} + +h3 { + color: var(--color-primary); + font-size: 1.5em; +} + +h4 { + font-size: 1.25em; +} + +h5 { + font-size: 1em; +} + +h6 { + font-size: 0.85em; +} + +a { + color: var(--color-primary) !important; + text-decoration: underline; +} + +a:hover:not(.button) { + opacity: 0.75; +} + +p { + margin-top: 0; + color: var(--color-primary); +} + +blockquote { + background-color: #f3f3f6; + padding: 1.5rem 2rem; + border-left: 3px solid var(--color-lightGrey); +} + +dl dt { + font-weight: bold; +} + +hr { + border: none; + background-color: var(--color-lightGrey); + height: 1px; + margin: 1rem 0; +} + +table { + width: 100%; + border: none; + border-collapse: collapse; + border-spacing: 0; + text-align: left; +} + +table.striped tr:nth-of-type(2n) { + background-color: #f3f3f6; +} + +td, +th { + vertical-align: middle; + padding: 1.2rem 0.4rem; +} + +thead { + border-bottom: 2px solid var(--color-lightGrey); +} + +tfoot { + border-top: 2px solid var(--color-lightGrey); +} + +code, +kbd, +pre, +samp, +tt { + font-family: monaco, "Consolas", "Lucida Console", monospace; +} + +code, +kbd { + white-space: pre-wrap; + font-size: 1.1em; + color: var(--color-primary); +} + +pre { + background-color: #f3f3f6; + font-size: 1em; + padding: 1rem; + overflow-x: auto; +} + +pre code { + background: none; + padding: 0; +} + +abbr[title] { + border-bottom: none; + text-decoration: underline; + -webkit-text-decoration: underline dotted; + text-decoration: underline dotted; +} + +img { + max-width: 100%; +} + +fieldset { + border: 1px solid var(--color-lightGrey); +} + +iframe { + border: 0; +} + +.container { + max-width: var(--grid-maxWidth); + margin: 0 auto; + width: 96%; + padding: 0 calc(var(--grid-gutter) / 2); +} + +.row { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-flow: row wrap; + flex-flow: row wrap; + -webkit-box-pack: start; + -ms-flex-pack: start; + justify-content: flex-start; + margin-left: calc(var(--grid-gutter) / -2); + margin-right: calc(var(--grid-gutter) / -2); +} + +.row.reverse { + -webkit-box-orient: horizontal; + -webkit-box-direction: reverse; + -ms-flex-direction: row-reverse; + flex-direction: row-reverse; +} + +.col { + -webkit-box-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.col, +[class*=" col-"], +[class^='col-'] { + margin: 0 calc(var(--grid-gutter) / 2) calc(var(--grid-gutter) / 2); +} + +.col-1 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/1)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/1)) - var(--grid-gutter)); + max-width: calc((100% / (12/1)) - var(--grid-gutter)); +} + +.col-2 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/2)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/2)) - var(--grid-gutter)); + max-width: calc((100% / (12/2)) - var(--grid-gutter)); +} + +.col-3 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/3)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/3)) - var(--grid-gutter)); + max-width: calc((100% / (12/3)) - var(--grid-gutter)); +} + +.col-4 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/4)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/4)) - var(--grid-gutter)); + max-width: calc((100% / (12/4)) - var(--grid-gutter)); +} + +.col-5 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/5)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/5)) - var(--grid-gutter)); + max-width: calc((100% / (12/5)) - var(--grid-gutter)); +} + +.col-6 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/6)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/6)) - var(--grid-gutter)); + max-width: calc((100% / (12/6)) - var(--grid-gutter)); +} + +.col-7 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/7)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/7)) - var(--grid-gutter)); + max-width: calc((100% / (12/7)) - var(--grid-gutter)); +} + +.col-8 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/8)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/8)) - var(--grid-gutter)); + max-width: calc((100% / (12/8)) - var(--grid-gutter)); +} + +.col-9 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/9)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/9)) - var(--grid-gutter)); + max-width: calc((100% / (12/9)) - var(--grid-gutter)); +} + +.col-10 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/10)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/10)) - var(--grid-gutter)); + max-width: calc((100% / (12/10)) - var(--grid-gutter)); +} + +.col-11 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/11)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/11)) - var(--grid-gutter)); + max-width: calc((100% / (12/11)) - var(--grid-gutter)); +} + +.col-12 { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/12)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/12)) - var(--grid-gutter)); + max-width: calc((100% / (12/12)) - var(--grid-gutter)); +} + +@media screen and (max-width: 599px) { + .container { + width: 100%; + } + .col, + [class*="col-"], + [class^='col-'] { + -webkit-box-flex: 0; + -ms-flex: 0 1 100%; + flex: 0 1 100%; + max-width: 100%; + } +} + +@media screen and (min-width: 900px) { + .col-1-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/1)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/1)) - var(--grid-gutter)); + max-width: calc((100% / (12/1)) - var(--grid-gutter)); + } + .col-2-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/2)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/2)) - var(--grid-gutter)); + max-width: calc((100% / (12/2)) - var(--grid-gutter)); + } + .col-3-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/3)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/3)) - var(--grid-gutter)); + max-width: calc((100% / (12/3)) - var(--grid-gutter)); + } + .col-4-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/4)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/4)) - var(--grid-gutter)); + max-width: calc((100% / (12/4)) - var(--grid-gutter)); + } + .col-5-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/5)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/5)) - var(--grid-gutter)); + max-width: calc((100% / (12/5)) - var(--grid-gutter)); + } + .col-6-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/6)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/6)) - var(--grid-gutter)); + max-width: calc((100% / (12/6)) - var(--grid-gutter)); + } + .col-7-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/7)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/7)) - var(--grid-gutter)); + max-width: calc((100% / (12/7)) - var(--grid-gutter)); + } + .col-8-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/8)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/8)) - var(--grid-gutter)); + max-width: calc((100% / (12/8)) - var(--grid-gutter)); + } + .col-9-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/9)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/9)) - var(--grid-gutter)); + max-width: calc((100% / (12/9)) - var(--grid-gutter)); + } + .col-10-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/10)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/10)) - var(--grid-gutter)); + max-width: calc((100% / (12/10)) - var(--grid-gutter)); + } + .col-11-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/11)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/11)) - var(--grid-gutter)); + max-width: calc((100% / (12/11)) - var(--grid-gutter)); + } + .col-12-md { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/12)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/12)) - var(--grid-gutter)); + max-width: calc((100% / (12/12)) - var(--grid-gutter)); + } +} + +@media screen and (min-width: 1200px) { + .col-1-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/1)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/1)) - var(--grid-gutter)); + max-width: calc((100% / (12/1)) - var(--grid-gutter)); + } + .col-2-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/2)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/2)) - var(--grid-gutter)); + max-width: calc((100% / (12/2)) - var(--grid-gutter)); + } + .col-3-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/3)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/3)) - var(--grid-gutter)); + max-width: calc((100% / (12/3)) - var(--grid-gutter)); + } + .col-4-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/4)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/4)) - var(--grid-gutter)); + max-width: calc((100% / (12/4)) - var(--grid-gutter)); + } + .col-5-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/5)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/5)) - var(--grid-gutter)); + max-width: calc((100% / (12/5)) - var(--grid-gutter)); + } + .col-6-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/6)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/6)) - var(--grid-gutter)); + max-width: calc((100% / (12/6)) - var(--grid-gutter)); + } + .col-7-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/7)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/7)) - var(--grid-gutter)); + max-width: calc((100% / (12/7)) - var(--grid-gutter)); + } + .col-8-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/8)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/8)) - var(--grid-gutter)); + max-width: calc((100% / (12/8)) - var(--grid-gutter)); + } + .col-9-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/9)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/9)) - var(--grid-gutter)); + max-width: calc((100% / (12/9)) - var(--grid-gutter)); + } + .col-10-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/10)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/10)) - var(--grid-gutter)); + max-width: calc((100% / (12/10)) - var(--grid-gutter)); + } + .col-11-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/11)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/11)) - var(--grid-gutter)); + max-width: calc((100% / (12/11)) - var(--grid-gutter)); + } + .col-12-lg { + -webkit-box-flex: 0; + -ms-flex: 0 0 calc((100% / (12/12)) - var(--grid-gutter)); + flex: 0 0 calc((100% / (12/12)) - var(--grid-gutter)); + max-width: calc((100% / (12/12)) - var(--grid-gutter)); + } +} + +fieldset { + padding: 0.5rem 2rem; +} + +legend { + text-transform: uppercase; + font-size: 0.8em; + letter-spacing: 0.1rem; +} + +input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="color"]):not([type="button"]):not([type="reset"]), +select, +textarea, +textarea[type="text"] { + font-family: inherit; + padding: 0.8rem 1rem; + border-radius: 4px; + border: 1px solid var(--color-lightGrey); + font-size: 1em; + -webkit-transition: all 0.2s ease; + transition: all 0.2s ease; + display: block; + width: 100%; +} + +input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="color"]):not([type="button"]):not([type="reset"]):not(:disabled):hover, +select:hover, +textarea:hover, +textarea[type="text"]:hover { + border-color: var(--color-grey); +} + +input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="color"]):not([type="button"]):not([type="reset"]):focus, +select:focus, +textarea:focus, +textarea[type="text"]:focus { + outline: none; + border-color: var(--color-primary); + -webkit-box-shadow: 0 0 1px var(--color-primary); + box-shadow: 0 0 1px var(--color-primary); +} + +input.error:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="color"]):not([type="button"]):not([type="reset"]), +textarea.error { + border-color: var(--color-error); +} + +input.success:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="color"]):not([type="button"]):not([type="reset"]), +textarea.success { + border-color: var(--color-success); +} + +select { + -webkit-appearance: none; + background: #f3f3f6 no-repeat 100%; + background-size: 1ex; + background-origin: content-box; + background-image: url("data:image/svg+xml;utf8,"); +} + +[type="checkbox"], +[type="radio"] { + width: 1.6rem; + height: 1.6rem; +} + + +/* BUTTONS */ + +.button, +[type="button"], +[type="reset"], +[type="submit"], +button { + padding: 1rem 2.5rem; + color: var(--color-darkGrey); + background: var(--color-lightGrey); + border-radius: 4px; + border: 1px solid transparent; + font-size: var(--font-size); + line-height: 1; + text-align: center; + -webkit-transition: opacity 0.2s ease; + transition: opacity 0.2s ease; + text-decoration: none; + -webkit-transform: scale(1); + transform: scale(1); + display: inline-block; + cursor: pointer; +} + +.grouped { + display: -webkit-box; + display: -ms-flexbox; + display: flex; +} + +.grouped>input:not(:last-child), +.grouped>select:not(:last-child), +.grouped>.button:not(:last-child) { + margin-right: 16px; +} + +.button+.button { + margin-left: 1rem; +} + +.buttons>.button+.button { + margin-left: 0; +} + +.button:hover, +[type="button"]:hover, +[type="reset"]:hover, +[type="submit"]:hover, +button:hover { + opacity: 0.8; +} + +.button:active, +[type="button"]:active, +[type="reset"]:active, +[type="submit"]:active, +button:active { + -webkit-transform: scale(0.98); + transform: scale(0.98); +} + +input:disabled, +button:disabled, +input:disabled:hover, +button:disabled:hover { + opacity: 0.4; + cursor: not-allowed; +} + +.button.primary, +.button.secondary, +.button.dark, +.button.error, +.button.success, +[type="submit"] { + color: #fff; + background-color: #000; + background-color: var(--color-primary); +} + +.button.secondary { + background-color: var(--color-grey); +} + +.button.dark { + background-color: var(--color-darkGrey); +} + +.button.error { + background-color: var(--color-error); +} + +.button.success { + background-color: var(--color-success); +} + +.button.outline { + background-color: transparent; + border-color: var(--color-lightGrey); +} + +.button.outline.primary { + border-color: var(--color-primary); + color: var(--color-primary); +} + +.button.outline.secondary { + border-color: var(--color-grey); + color: var(--color-grey); +} + +.button.outline.dark { + border-color: var(--color-darkGrey); + color: var(--color-darkGrey); +} + +.button.clear { + background-color: transparent; + border-color: transparent; + color: var(--color-primary); +} + +.button.icon { + display: -webkit-inline-box; + display: -ms-inline-flexbox; + display: inline-flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.button.icon>img { + margin-left: 2px; +} + +.button.icon-only { + padding: 1rem; +} + +::-webkit-input-placeholder { + color: #bdbfc4; +} + +:-ms-input-placeholder { + color: #bdbfc4; +} + +::-ms-input-placeholder { + color: #bdbfc4; +} + +::placeholder { + color: #bdbfc4; +} + +.nav { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + min-height: 5rem; + -webkit-box-align: stretch; + -ms-flex-align: stretch; + align-items: stretch; + border-bottom: 2px solid var(--color-primary); +} + +.nav img { + max-height: 3rem; +} + +.nav>.container { + display: -webkit-box; + display: -ms-flexbox; + display: flex; +} + +.nav-center, +.nav-left, +.nav-right { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-flex: 1; + -ms-flex: 1; + flex: 1; +} + +.nav-left { + -webkit-box-pack: start; + -ms-flex-pack: start; + justify-content: flex-start; +} + +.nav-right { + -webkit-box-pack: end; + -ms-flex-pack: end; + justify-content: flex-end; +} + +.nav-center { + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; +} + +@media screen and (max-width: 480px) { + .nav, + .nav>.container { + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + } + .nav-center, + .nav-left, + .nav-right { + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + } +} + +.nav a, +.nav .brand { + text-decoration: none; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + padding: 1rem 2rem; + color: var(--color-black); +} + +.nav .active:not(.button) { + color: #000; + /* fallback */ + color: var(--color-primary); +} + +.nav .brand { + font-size: 2em; + font-weight: 700; + padding-top: 0; + padding-bottom: 0; +} + +.nav .brand img { + padding-right: 1rem; +} + +.nav .button { + margin: auto 1rem; +} + +.card { + padding: 1rem 2rem; + border-radius: 4px; + -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3); + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3); +} + +.card p:last-child { + margin: 0; +} + +.card header>* { + margin-top: 0; + margin-bottom: 1rem; +} + +.tabs { + display: -webkit-box; + display: -ms-flexbox; + display: flex; +} + +.tabs a { + text-decoration: none; +} + +.tabs>a { + padding: 1rem 2rem; + -webkit-box-flex: 0; + -ms-flex: 0 1 auto; + flex: 0 1 auto; + color: var(--color-darkGrey); + border-bottom: 2px solid var(--color-lightGrey); + text-align: center; +} + +.tabs>a.active, +.tabs>a:hover { + opacity: 1; + border-bottom: 2px solid var(--color-darkGrey); +} + +.tabs>a.active { + border-color: var(--color-primary); +} + +.tabs.is-full a { + -webkit-box-flex: 1; + -ms-flex: 1 1 auto; + flex: 1 1 auto; +} + +.tag { + display: inline-block; + border: 1px solid var(--color-lightGrey); + text-transform: uppercase; + color: var(--color-grey); + padding: 0.5rem; + line-height: 1; + letter-spacing: 0.5px; +} + +.tag.is-small { + padding: 0.4rem; + font-size: 0.75em; +} + +.tag.is-large { + padding: 0.7rem; + font-size: 1.125em; +} + +.tag+.tag { + margin-left: 1rem; +} + + +/* Colors */ + +.bg-primary { + background-color: var(--color-primary) !important; +} + +.bg-light { + background-color: var(--color-lightGrey) !important; +} + +.bg-dark { + background-color: var(--color-darkGrey) !important; +} + +.bg-grey { + background-color: var(--color-grey) !important; +} + +.bg-error { + background-color: var(--color-error) !important; +} + +.bg-success { + background-color: var(--color-success) !important; +} + +.bd-primary { + border: 1px solid var(--color-primary) !important; +} + +.bd-light { + border: 1px solid var(--color-lightGrey) !important; +} + +.bd-dark { + border: 1px solid var(--color-darkGrey) !important; +} + +.bd-grey { + border: 1px solid var(--color-grey) !important; +} + +.bd-error { + border: 1px solid var(--color-error) !important; +} + +.bd-success { + border: 1px solid var(--color-success) !important; +} + +.text-primary { + color: var(--color-primary) !important; +} + +.text-light { + color: var(--color-lightGrey) !important; +} + +.text-dark { + color: var(--color-darkGrey) !important; +} + +.text-grey { + color: var(--color-grey) !important; +} + +.text-error { + color: var(--color-error) !important; +} + +.text-success { + color: var(--color-success) !important; +} + +.text-white { + color: #fff !important; +} + + +/* Position & alignment */ + +.pull-right { + float: right !important; +} + +.pull-left { + float: left !important; +} + +.is-text-center { + text-align: center; +} + +.is-text-left { + text-align: left; +} + +.is-text-right { + text-align: right; +} + +.is-text-uppercase { + text-transform: uppercase; +} + +.is-text-lowercase { + text-transform: lowercase; +} + +.is-text-capitalize { + text-transform: capitalize; +} + +.is-full-screen { + width: 100%; + min-height: 100vh; +} + +.is-full-width { + width: 100% !important; +} + +.is-vertical-align { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.is-horizontal-align { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; +} + +.is-center { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; +} + +.is-right { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: end; + -ms-flex-pack: end; + justify-content: flex-end; +} + +.is-left { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: start; + -ms-flex-pack: start; + justify-content: flex-start; +} + +.is-fixed { + position: fixed; + width: 100%; +} + +.is-paddingless { + padding: 0 !important; +} + +.is-marginless { + margin: 0 !important; +} + +.clearfix { + content: ""; + display: table; + clear: both; +} + +.is-hidden { + display: none !important; +} + +@media screen and (max-width: 599px) { + .hide-xs { + display: none !important; + } +} + +@media screen and (min-width: 600px) and (max-width: 899px) { + .hide-sm { + display: none !important; + } +} + +@media screen and (min-width: 900px) and (max-width: 1199px) { + .hide-md { + display: none !important; + } +} + +@media screen and (min-width: 1200px) { + .hide-lg { + display: none !important; + } +} \ No newline at end of file diff --git a/css/index.css b/css/index.css new file mode 100644 index 0000000..f5b9aa4 --- /dev/null +++ b/css/index.css @@ -0,0 +1,121 @@ +html { + padding-left: calc(100vw - 100%); + overflow-x: hidden; +} + +body { + color: var(--color-primary); +} + +.wrapper { + max-width: 800px; + margin: 10px auto; +} + +.nav #themeToggle { + margin-top: 0.4em; + cursor: pointer; +} + +.nav a { + padding-bottom: 0px !important; +} + +.inner { + padding: 1em; +} + +.section { + padding: 1em; + font-size: 1.1em; + border: 2px solid var(--color-primary); + border-radius: 10px; + margin-bottom: 1em; +} + +.title { + margin: 0; + margin-left: 0.3em !important; + margin-bottom: 0.2em; +} + +.button { + font-size: 1.15em !important; + font-weight: 700; +} + +.demo { + font-size: 1.25em; + font-weight: 700; +} + +.demo a { + text-decoration: underline; +} + +.extra { + font-size: 1em; + font-weight: 700; + margin: 0; + margin-top: 1.5em; +} + +.extra a { + text-decoration: underline; +} + +.no-top { + padding-top: 0 !important; +} + +.tab { + margin-left: 2em; +} + +#quote { + font-weight: 700; +} + +footer { + margin-top: 2em; + margin-left: 1em; + margin-right: 1em; + font-size: 1.1em; + font-weight: 700; + text-align: center; +} + +footer p { + margin: 0; + margin-bottom: 0.5em; +} + +.wavy { + font-size: 0.8em; + font-weight: 500; +} + +.notfound { + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); +} + +/* https://stackoverflow.com/a/4407335 */ + +.noselect { + -webkit-touch-callout: none; + /* iOS Safari */ + -webkit-user-select: none; + /* Safari */ + -khtml-user-select: none; + /* Konqueror HTML */ + -moz-user-select: none; + /* Firefox */ + -ms-user-select: none; + /* Internet Explorer/Edge */ + user-select: none; + /* Non-prefixed version, currently + supported by Chrome and Opera */ +} diff --git a/gitlab-ci.yml b/gitlab-ci.yml new file mode 100644 index 0000000..95e2353 --- /dev/null +++ b/gitlab-ci.yml @@ -0,0 +1,13 @@ +# This file is a template, and might need editing before it works on your project. +# Full project: https://gitlab.com/pages/plain-html +pages: + stage: deploy + script: + - mkdir .public + - cp -r * .public + - mv .public public + artifacts: + paths: + - public + only: + - master diff --git a/index.html b/index.html new file mode 100644 index 0000000..547b12a --- /dev/null +++ b/index.html @@ -0,0 +1,240 @@ + + + + + + + + + + api.chainz.rest + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+

A free REST API for random 2 Chainz quotes

+

API Usage

+
+ + { +
"quote": ""
+ }
+
+

+ Extra: + https://api.chainz.rest?format=text +

+
+ + + +

FAQ

+
+ Can I use this in my project? +

+ Yes. Do what ever you want with it! + Let me know what you make! +

+ Is the API rate limited? +

No, but be generous.

+ Is it open source? Can I contribute? +

+ Yes! Checkout my spaghetti code on github. + API + Site +

+
+ + +
+
+ + + diff --git a/js/index.js b/js/index.js new file mode 100644 index 0000000..ebedfc9 --- /dev/null +++ b/js/index.js @@ -0,0 +1,16 @@ +getQuote(); + +function getQuote() { + fetch("https://api.chainz.rest") + .then(resp => resp.json()) + .then(function(data) { + document.getElementById("quote").innerHTML = data.quote; + + const tweet = encodeURIComponent( + `"${data.quote}"-@2chainz via https://api.chainz.rest @ajzbc` + ); + document.getElementById( + "tweet" + ).href = `https://twitter.com/intent/tweet?text=${tweet}`; + }); +} diff --git a/static/android-icon-144x144.png b/static/android-icon-144x144.png new file mode 100644 index 0000000..7ac6d87 Binary files /dev/null and b/static/android-icon-144x144.png differ diff --git a/static/android-icon-192x192.png b/static/android-icon-192x192.png new file mode 100644 index 0000000..a6deff9 Binary files /dev/null and b/static/android-icon-192x192.png differ diff --git a/static/android-icon-36x36.png b/static/android-icon-36x36.png new file mode 100644 index 0000000..669dd64 Binary files /dev/null and b/static/android-icon-36x36.png differ diff --git a/static/android-icon-48x48.png b/static/android-icon-48x48.png new file mode 100644 index 0000000..bd7dcfa Binary files /dev/null and b/static/android-icon-48x48.png differ diff --git a/static/android-icon-72x72.png b/static/android-icon-72x72.png new file mode 100644 index 0000000..a6cdab3 Binary files /dev/null and b/static/android-icon-72x72.png differ diff --git a/static/android-icon-96x96.png b/static/android-icon-96x96.png new file mode 100644 index 0000000..c70c312 Binary files /dev/null and b/static/android-icon-96x96.png differ diff --git a/static/apple-icon-114x114.png b/static/apple-icon-114x114.png new file mode 100644 index 0000000..263a116 Binary files /dev/null and b/static/apple-icon-114x114.png differ diff --git a/static/apple-icon-120x120.png b/static/apple-icon-120x120.png new file mode 100644 index 0000000..3852f12 Binary files /dev/null and b/static/apple-icon-120x120.png differ diff --git a/static/apple-icon-144x144.png b/static/apple-icon-144x144.png new file mode 100644 index 0000000..7ac6d87 Binary files /dev/null and b/static/apple-icon-144x144.png differ diff --git a/static/apple-icon-152x152.png b/static/apple-icon-152x152.png new file mode 100644 index 0000000..fd8ee63 Binary files /dev/null and b/static/apple-icon-152x152.png differ diff --git a/static/apple-icon-180x180.png b/static/apple-icon-180x180.png new file mode 100644 index 0000000..16b7866 Binary files /dev/null and b/static/apple-icon-180x180.png differ diff --git a/static/apple-icon-57x57.png b/static/apple-icon-57x57.png new file mode 100644 index 0000000..6aae147 Binary files /dev/null and b/static/apple-icon-57x57.png differ diff --git a/static/apple-icon-60x60.png b/static/apple-icon-60x60.png new file mode 100644 index 0000000..31402b7 Binary files /dev/null and b/static/apple-icon-60x60.png differ diff --git a/static/apple-icon-72x72.png b/static/apple-icon-72x72.png new file mode 100644 index 0000000..a6cdab3 Binary files /dev/null and b/static/apple-icon-72x72.png differ diff --git a/static/apple-icon-76x76.png b/static/apple-icon-76x76.png new file mode 100644 index 0000000..2d9e3e2 Binary files /dev/null and b/static/apple-icon-76x76.png differ diff --git a/static/apple-icon-precomposed.png b/static/apple-icon-precomposed.png new file mode 100644 index 0000000..a568979 Binary files /dev/null and b/static/apple-icon-precomposed.png differ diff --git a/static/apple-icon.png b/static/apple-icon.png new file mode 100644 index 0000000..a568979 Binary files /dev/null and b/static/apple-icon.png differ diff --git a/static/browserconfig.xml b/static/browserconfig.xml new file mode 100644 index 0000000..c554148 --- /dev/null +++ b/static/browserconfig.xml @@ -0,0 +1,2 @@ + +#ffffff \ No newline at end of file diff --git a/static/favicon-16x16.png b/static/favicon-16x16.png new file mode 100644 index 0000000..1010805 Binary files /dev/null and b/static/favicon-16x16.png differ diff --git a/static/favicon-32x32.png b/static/favicon-32x32.png new file mode 100644 index 0000000..70dc2da Binary files /dev/null and b/static/favicon-32x32.png differ diff --git a/static/favicon-96x96.png b/static/favicon-96x96.png new file mode 100644 index 0000000..c70c312 Binary files /dev/null and b/static/favicon-96x96.png differ diff --git a/static/favicon.ico b/static/favicon.ico new file mode 100644 index 0000000..166beaf Binary files /dev/null and b/static/favicon.ico differ diff --git a/static/manifest.json b/static/manifest.json new file mode 100644 index 0000000..013d4a6 --- /dev/null +++ b/static/manifest.json @@ -0,0 +1,41 @@ +{ + "name": "App", + "icons": [ + { + "src": "\/android-icon-36x36.png", + "sizes": "36x36", + "type": "image\/png", + "density": "0.75" + }, + { + "src": "\/android-icon-48x48.png", + "sizes": "48x48", + "type": "image\/png", + "density": "1.0" + }, + { + "src": "\/android-icon-72x72.png", + "sizes": "72x72", + "type": "image\/png", + "density": "1.5" + }, + { + "src": "\/android-icon-96x96.png", + "sizes": "96x96", + "type": "image\/png", + "density": "2.0" + }, + { + "src": "\/android-icon-144x144.png", + "sizes": "144x144", + "type": "image\/png", + "density": "3.0" + }, + { + "src": "\/android-icon-192x192.png", + "sizes": "192x192", + "type": "image\/png", + "density": "4.0" + } + ] +} \ No newline at end of file diff --git a/static/ms-icon-144x144.png b/static/ms-icon-144x144.png new file mode 100644 index 0000000..7ac6d87 Binary files /dev/null and b/static/ms-icon-144x144.png differ diff --git a/static/ms-icon-150x150.png b/static/ms-icon-150x150.png new file mode 100644 index 0000000..8243be3 Binary files /dev/null and b/static/ms-icon-150x150.png differ diff --git a/static/ms-icon-310x310.png b/static/ms-icon-310x310.png new file mode 100644 index 0000000..bdda47f Binary files /dev/null and b/static/ms-icon-310x310.png differ diff --git a/static/ms-icon-70x70.png b/static/ms-icon-70x70.png new file mode 100644 index 0000000..e3970da Binary files /dev/null and b/static/ms-icon-70x70.png differ