Make project REUSE compliant

initial commit

a lot more stuff

Make project REUSE compliant

start working on implementing audio
This commit is contained in:
Ncam Gnrvngu 2025-05-28 16:32:00 +02:00
commit 7bc11e49a4
Signed by: NcamGnrvngu
GPG key ID: BBF21CBE5628BA99
136 changed files with 3218 additions and 0 deletions

26
sass/404.scss Normal file
View file

@ -0,0 +1,26 @@
/*
* SPDX-FileCopyrightText: 2025 Ncam Gnrvngu <info@ncamgnrvngu.eu>
*
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
@use "base";
@use "mocha" as c;
#error {
@include base.center-vertically;
}
#error h1 {
font-size: min(248pt, 31cqw);
font-weight: 700;
text-align: center;
margin: auto;
}
#error h3 {
font-size: min(40pt, 5cqw);
font-weight: 600;
color: c.$subtext1;
text-align: center;
margin: auto;
}

112
sass/_base.scss Normal file
View file

@ -0,0 +1,112 @@
/*
* SPDX-FileCopyrightText: 2025 Ncam Gnrvngu <info@ncamgnrvngu.eu>
*
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
@use "mocha" as c;
@use "font";
body {
margin: 0;
}
@mixin center-vertically {
position: relative;
top: 50%;
transform: translateY(-50%);
}
@mixin center-horizontally {
margin-left: auto;
margin-right: auto;
}
body {
background-color: c.$base;
}
h1, h2, h3, h4, h5, h6, p, a{
color: c.$text;
font-family: "Source Code VF";
}
#content-wrapper {
max-width: calc(100% - 50px);
width: 900px;
min-height: 100vh;
margin: 0;
margin-left: auto;
margin-right: auto;
display: grid;
grid-template-rows: auto 1fr auto;
}
#header-link {
font-size: 32pt;
font-weight: 700;
text-decoration: none;
}
@media (min-width: 600px) {
#header-category-links {
margin-left: auto;
}
#header-link {
}
header {
display: flex;
align-items:center;
}
}
@media (max-width: 600px) {
#header-category-links {
margin: auto;
}
#header-link {
margin: auto;
margin-bottom: 15px;
}
header {
margin: auto;
width: fit-content;
margin-top: 50px;
}
footer {
margin-bottom: 50px;
}
}
#content {
flex: 1;
}
#header-category-links a {
text-decoration: none;
font-size: 20pt;
font-weight: 600;
margin-left: 30px;
}
header {
min-height: 100px;
}
footer {
min-height: 50px;
margin-top: 50px;
}
footer a {
margin-right: 15px;
}
pre {
background-color: c.$mantle !important;
padding: 15px;
padding-left: 20px;
border-radius: 5px;
}
code {
font-family: "Source Code VF";
}

31
sass/_font.css Normal file
View file

@ -0,0 +1,31 @@
/*
* SPDX-FileCopyrightText: 2025 Ncam Gnrvngu <info@ncamgnrvngu.eu>
*
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
@font-face{
font-family: 'Source Code VF';
font-weight: 200 900;
font-style: normal;
font-stretch: normal;
src: url('/font/WOFF2/VF/SourceCodeVF-Upright.ttf.woff2') format('woff2-variations'),
url('/font/WOFF2/VF/SourceCodeVF-Upright.ttf.woff2') format('woff2 supports variations'),
url('/font/WOFF/VF/SourceCodeVF-Upright.ttf.woff') format('woff-variations'),
url('/font/WOFF/VF/SourceCodeVF-Upright.ttf.woff') format('woff supports variations'),
url('/font/VF/SourceCodeVF-Upright.ttf') format('truetype-variations'),
url('/font/VF/SourceCodeVF-Upright.ttf') format('truetype supports variations');
}
@font-face{
font-family: 'Source Code VF';
font-weight: 200 900;
font-style: italic;
font-stretch: normal;
src: url('/font/WOFF2/VF/SourceCodeVF-Italic.ttf.woff2') format('woff2-variations'),
url('/font/WOFF2/VF/SourceCodeVF-Italic.ttf.woff2') format('woff2 supports variations'),
url('/font/WOFF/VF/SourceCodeVF-Italic.ttf.woff') format('woff-variations'),
url('/font/WOFF/VF/SourceCodeVF-Italic.ttf.woff') format('woff supports variations'),
url('/font/VF/SourceCodeVF-Italic.ttf') format('truetype-variations'),
url('/font/VF/SourceCodeVF-Italic.ttf') format('truetype supports variations');
}

32
sass/_mocha.scss Normal file
View file

@ -0,0 +1,32 @@
/*
* SPDX-FileCopyrightText: Copyright (c) 2021 Catppuccin
*
* SPDX-License-Identifier: MIT
*/
$rosewater: #f5e0dc;
$flamingo: #f2cdcd;
$pink: #f5c2e7;
$mauve: #cba6f7;
$red: #f38ba8;
$maroon: #eba0ac;
$peach: #fab387;
$yellow: #f9e2af;
$green: #a6e3a1;
$teal: #94e2d5;
$sky: #89dceb;
$sapphire: #74c7ec;
$blue: #89b4fa;
$lavender: #b4befe;
$text: #cdd6f4;
$subtext1: #bac2de;
$subtext0: #a6adc8;
$overlay2: #9399b2;
$overlay1: #7f849c;
$overlay0: #6c7086;
$surface2: #585b70;
$surface1: #45475a;
$surface0: #313244;
$base: #1e1e2e;
$mantle: #181825;
$crust: #11111b;

16
sass/post/page.scss Normal file
View file

@ -0,0 +1,16 @@
/*
* SPDX-FileCopyrightText: 2025 Ncam Gnrvngu <info@ncamgnrvngu.eu>
*
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
@use "../base";
#page_content {
max-width: 900px;
}
#title {
font-size: 40pt;
margin-bottom: 10px;
}

7
sass/post/style.scss Normal file
View file

@ -0,0 +1,7 @@
/*
* SPDX-FileCopyrightText: 2025 Ncam Gnrvngu <info@ncamgnrvngu.eu>
*
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
@use "../base";

61
sass/song.scss Normal file
View file

@ -0,0 +1,61 @@
/*
* SPDX-FileCopyrightText: 2025 Ncam Gnrvngu <info@ncamgnrvngu.eu>
*
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
#player {
margin: auto;
display: flex;
flex-direction: column;
justify-content: center;
}
#title {
text-align: center;
}
#controls {
align-items: center;
display: flex;
}
#playbutton {
width: 10%;
aspect-ratio: 1/1;
}
.seek {
outline: none;
-webkit-appearance: none;
}
.seek {
-webkit-appearance: none; /* Hides the slider so that custom slider can be made */
width: 80%;
--thumb-height: 1.125em;
--track-height: 0.125em;
--brightness-hover: 180%;
--brightness-down: 80%;
--clip-edges: 0.125em;
color: #f07167;
--track-color: rgba(255, 255, 255, 0.1);
}
.seek::-webkit-slider-thumb {
-webkit-appearance: none;
}
.seek:focus {
outline: none; /* Removes the blue border. You should probably do some kind of focus styling for accessibility reasons though. */
}
.seek::-ms-track {
width: 100%;
cursor: pointer;
/* Hides the slider so custom styles can be added */
background: transparent;
border-color: transparent;
color: transparent;
}

84
sass/style.scss Normal file
View file

@ -0,0 +1,84 @@
/*
* SPDX-FileCopyrightText: 2025 Ncam Gnrvngu <info@ncamgnrvngu.eu>
*
* SPDX-License-Identifier: AGPL-3.0-or-later
*/
@use "base";
@use "mocha" as c;
#greeter {
display: flex;
margin: auto;
max-width: 900px;
width: 90%;
margin-bottom: 50px;
align-items: center;
margin-top: 50px;
}
@media(min-width: 600px) {
#greeter {
margin-top: 100px;
}
}
#greeter img {
width: 20%;
height: auto;
margin: auto;
border-radius: 100%;
}
#greeter div {
//@include base.center-vertically;
width: 80%;
padding-left: min(70px, 4cqw);
}
#greeter div h1 {
font-size: min(5cqw, 35pt);
font-weight: 600;
margin-bottom: 5px;
}
#greeter div h2 {
font-size: min(2.9cqw, 20pt);
font-weight: 600;
color: c.$subtext1;
margin-top: 5px;
}
#categories {
display: grid;
gap: 30px;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
}
#categories div h3 {
font-size: 20pt;
font-weight: 600;
margin-bottom: 10px;
}
ul {
padding-left: 25px;
}
li p {
font-size: 11pt;
color: c.$subtext0;
margin-left: 5px;
}
li a {
color: c.$mauve;
font-size: 16pt;
font-weight: 500;
}
li::marker {
color: c.$text;
}
li {
font-size: 16pt;
}