I rewrote the frontend in React using a module bundler. It's matched feature-for-feature with the current frontend, with only slight changes in the styling. I did not fuss about making the styling identical; the badge popup looks particularly different. This makes the front end much easier to develop. I'm really looking forward to implementing #701, to which this paves the way. This makes light use of Next.js, which provides webpack config and dev/build tooling. We’ll probably replace it with create-react-app or our own webpack setup because unfortunately it comes with a lot of runtime overhead (the build is 400k). Let’s open new issues for bugs and features, and track other follow-ups here: https://github.com/badges/shields/projects/1
97 lines
1.5 KiB
CSS
97 lines
1.5 KiB
CSS
html {
|
|
background-attachment: fixed;
|
|
background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2NDAiIGhlaWdodD0iNDgwIj48ZmlsdGVyIGlkPSJhIj48ZmVUdXJidWxlbmNlIGJhc2VGcmVxdWVuY3k9Ii4wOCIgbnVtT2N0YXZlcz0iOCIgc3RpdGNoVGlsZXM9InN0aXRjaCIgc2VlZD0iMzQ2Ii8+PGZlQ29sb3JNYXRyaXggdmFsdWVzPSIxIDAgMCAwIDAgIDEgMCAwIDAgMCAgMSAwIDAgMCAuOSAgLjAxIDAgMCAwIC4wMSIvPjwvZmlsdGVyPjxyZWN0IHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbHRlcj0idXJsKCNhKSIvPjwvc3ZnPg==);
|
|
}
|
|
|
|
:root,
|
|
dialog {
|
|
text-align: center;
|
|
font-family: Lekton, sans-serif;
|
|
color: #534;
|
|
}
|
|
|
|
code,
|
|
.code {
|
|
font-family: Lekton;
|
|
white-space: pre-wrap;
|
|
padding: 0 4px;
|
|
background: #eef;
|
|
border-radius: 4px;
|
|
}
|
|
|
|
input.short {
|
|
width: 5em;
|
|
}
|
|
|
|
input {
|
|
text-align: center;
|
|
border: solid #b9a;
|
|
color: #534;
|
|
border-width: 0 0 1px 0;
|
|
width: 40%;
|
|
height: 15px;
|
|
padding: 0;
|
|
background-color: transparent;
|
|
}
|
|
|
|
input:focus {
|
|
outline: 0;
|
|
}
|
|
|
|
hr {
|
|
width: 40%;
|
|
border-width: 1px 0 0 0;
|
|
}
|
|
|
|
ul {
|
|
text-align: left;
|
|
margin-left: 25%;
|
|
}
|
|
|
|
table {
|
|
min-width: 50%;
|
|
margin: auto;
|
|
}
|
|
|
|
table.centered > tbody > tr > td:first-child {
|
|
text-align: right;
|
|
}
|
|
|
|
th,
|
|
td {
|
|
text-align: left;
|
|
}
|
|
|
|
h2,
|
|
h3 {
|
|
font-style: italic;
|
|
}
|
|
|
|
h2::before {
|
|
content: '☙ ';
|
|
}
|
|
|
|
h2::after {
|
|
content: ' ❧';
|
|
}
|
|
|
|
h2 {
|
|
margin-top: 12mm;
|
|
font-variant: small-caps;
|
|
}
|
|
|
|
hr.spacing {
|
|
border: 0;
|
|
display: block;
|
|
height: 3mm;
|
|
}
|
|
|
|
.clickable {
|
|
cursor: pointer;
|
|
}
|
|
|
|
.badge-img {
|
|
min-height: 20px;
|
|
vertical-align: middle;
|
|
}
|