forked from ProjectSegfault/website
requested changes
This commit is contained in:
parent
992d671b3d
commit
610ad6d5c7
@ -4,7 +4,7 @@
|
|||||||
<meta charset="utf-8" />
|
<meta charset="utf-8" />
|
||||||
<link
|
<link
|
||||||
rel="icon"
|
rel="icon"
|
||||||
href="%sveltekit.assets%/logo.svg"
|
href="%sveltekit.assets%/logo_transparent.svg"
|
||||||
/>
|
/>
|
||||||
<meta
|
<meta
|
||||||
name="viewport"
|
name="viewport"
|
||||||
|
@ -1,64 +1,64 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
export let title: any;
|
export let title: any;
|
||||||
export let position: any;
|
export let position: any;
|
||||||
export let description: any;
|
export let description: any;
|
||||||
export let icon: any;
|
export let icon: any;
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<div class="card-inner">
|
<div class="card-inner">
|
||||||
<div class="main">
|
<div class="main">
|
||||||
{#if icon}
|
{#if icon}
|
||||||
<div>
|
<div>
|
||||||
<img src={icon} alt="{title} icon">
|
<img src={icon} alt="{title} icon" />
|
||||||
</div>
|
</div>
|
||||||
{/if}
|
{/if}
|
||||||
<div>
|
<div>
|
||||||
<span>
|
<span>
|
||||||
{title}
|
{title}
|
||||||
|
|
||||||
{#if position}
|
{#if position}
|
||||||
- {position}
|
- {position}
|
||||||
{/if}
|
{/if}
|
||||||
</span>
|
</span>
|
||||||
|
|
||||||
{#if description}
|
{#if description}
|
||||||
<p class="description">{description}</p>
|
<p class="description">{description}</p>
|
||||||
{/if}
|
{/if}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<slot />
|
<slot />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
.card-inner {
|
.card-inner {
|
||||||
background-color: var(--secondary);
|
background-color: var(--secondary);
|
||||||
border-radius: 10px;
|
border-radius: 10px;
|
||||||
padding: 1rem;
|
padding: 1rem;
|
||||||
width: 30em;
|
width: 30em;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
}
|
|
||||||
|
|
||||||
@media screen and (max-width: 555px) {
|
|
||||||
.card-inner {
|
|
||||||
width: 18em;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.main {
|
|
||||||
flex: 1;
|
|
||||||
display: flex;
|
|
||||||
flex-direction: row;
|
|
||||||
gap: 1rem;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
img {
|
@media screen and (max-width: 555px) {
|
||||||
height: 5rem;
|
.card-inner {
|
||||||
border-radius: 10px;
|
width: 18em;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
span {
|
.main {
|
||||||
font-size: 25px;
|
flex: 1;
|
||||||
font-weight: bold;
|
display: flex;
|
||||||
}
|
flex-direction: row;
|
||||||
|
gap: 1rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
img {
|
||||||
|
height: 5rem;
|
||||||
|
border-radius: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
span {
|
||||||
|
font-size: 25px;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
@ -1,12 +1,12 @@
|
|||||||
<div class="card-outer">
|
<div class="card-outer">
|
||||||
<slot />
|
<slot />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
div {
|
div {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
gap: 2rem;
|
gap: 2rem;
|
||||||
flex-flow: row wrap;
|
flex-flow: row wrap;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
@ -1,14 +1,14 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
export let url: any;
|
export let url: any;
|
||||||
export let classes: string;
|
export let classes: string;
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<a href={url} class="{classes}">
|
<a href={url} class={classes}>
|
||||||
<slot />
|
<slot />
|
||||||
</a>
|
</a>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
.web,
|
.web,
|
||||||
.email,
|
.email,
|
||||||
.picture,
|
.picture,
|
||||||
.pgp {
|
.pgp {
|
||||||
@ -27,7 +27,7 @@
|
|||||||
color: #333 !important;
|
color: #333 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.matrixcolored {
|
.matrixcolored {
|
||||||
background-color: #333;
|
background-color: #333;
|
||||||
color: #fff !important;
|
color: #fff !important;
|
||||||
font-size: 20px;
|
font-size: 20px;
|
||||||
@ -48,7 +48,7 @@
|
|||||||
height: 23px;
|
height: 23px;
|
||||||
}
|
}
|
||||||
|
|
||||||
a {
|
a {
|
||||||
border: none;
|
border: none;
|
||||||
border-radius: 10px;
|
border-radius: 10px;
|
||||||
padding: 0.5rem;
|
padding: 0.5rem;
|
||||||
|
@ -1,9 +1,9 @@
|
|||||||
<div>
|
<div>
|
||||||
<slot />
|
<slot />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
div {
|
div {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: row;
|
flex-direction: row;
|
||||||
gap: 0.5rem;
|
gap: 0.5rem;
|
||||||
|
@ -1,114 +1,114 @@
|
|||||||
[
|
[
|
||||||
{
|
{
|
||||||
"name": "Invidious",
|
"name": "Invidious",
|
||||||
"description": "A frontend for YouTube.",
|
"description": "A frontend for YouTube.",
|
||||||
"website": "https://invidious.projectsegfau.lt/",
|
"website": "https://invidious.projectsegfau.lt/",
|
||||||
"icon": "https://github.com/iv-org/invidious/raw/master/assets/invidious-colored-vector.svg",
|
"icon": "https://github.com/iv-org/invidious/raw/master/assets/invidious-colored-vector.svg",
|
||||||
"category": "Instances"
|
"category": "Instances"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "Libreddit",
|
"name": "Libreddit",
|
||||||
"description": "A frontend for Reddit.",
|
"description": "A frontend for Reddit.",
|
||||||
"website": "https://libreddit.projectsegfau.lt/",
|
"website": "https://libreddit.projectsegfau.lt/",
|
||||||
"icon": "https://github.com/spikecodes/libreddit/raw/master/static/logo.png",
|
"icon": "https://github.com/spikecodes/libreddit/raw/master/static/logo.png",
|
||||||
"category": "Instances"
|
"category": "Instances"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "Librarian (LBRY)",
|
"name": "Librarian (LBRY)",
|
||||||
"description": "A frontend for Odysee.",
|
"description": "A frontend for Odysee.",
|
||||||
"website": "https://lbry.projectsegfau.lt/",
|
"website": "https://lbry.projectsegfau.lt/",
|
||||||
"icon": "https://codeberg.org/librarian/librarian/raw/branch/main/static/img/librarian.svg",
|
"icon": "https://codeberg.org/librarian/librarian/raw/branch/main/static/img/librarian.svg",
|
||||||
"category": "Instances"
|
"category": "Instances"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "Nitter",
|
"name": "Nitter",
|
||||||
"description": "A frontend for Twitter.",
|
"description": "A frontend for Twitter.",
|
||||||
"website": "https://nitter.projectsegfau.lt/",
|
"website": "https://nitter.projectsegfau.lt/",
|
||||||
"icon": "https://github.com/zedeus/nitter/raw/master/public/logo.png",
|
"icon": "https://github.com/zedeus/nitter/raw/master/public/logo.png",
|
||||||
"category": "Instances"
|
"category": "Instances"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "Quetre",
|
"name": "Quetre",
|
||||||
"description": "A frontend for Quora.",
|
"description": "A frontend for Quora.",
|
||||||
"website": "https://quetre.projectsegfau.lt/",
|
"website": "https://quetre.projectsegfau.lt/",
|
||||||
"icon": "https://github.com/zyachel/quetre/raw/main/public/icon.svg",
|
"icon": "https://github.com/zyachel/quetre/raw/main/public/icon.svg",
|
||||||
"category": "Instances"
|
"category": "Instances"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "Element",
|
"name": "Element",
|
||||||
"description": "An open source and decentralized chat application.",
|
"description": "An open source and decentralized chat application.",
|
||||||
"website": "https://chat.projectsegfau.lt/",
|
"website": "https://chat.projectsegfau.lt/",
|
||||||
"icon": "https://element.io/images/logo-mark-primary.svg",
|
"icon": "https://element.io/images/logo-mark-primary.svg",
|
||||||
"category": "Instances"
|
"category": "Instances"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "Piped",
|
"name": "Piped",
|
||||||
"description": "Another alternative for YouTube.",
|
"description": "Another alternative for YouTube.",
|
||||||
"website": "https://piped.projectsegfau.lt/",
|
"website": "https://piped.projectsegfau.lt/",
|
||||||
"icon": "https://github.com/TeamPiped/Piped/raw/master/public/img/icons/logo.svg",
|
"icon": "https://github.com/TeamPiped/Piped/raw/master/public/img/icons/logo.svg",
|
||||||
"category": "Instances"
|
"category": "Instances"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "SearXNG",
|
"name": "SearXNG",
|
||||||
"description": "A private meta-search engine.",
|
"description": "A private meta-search engine.",
|
||||||
"website": "https://search.projectsegfau.lt/search",
|
"website": "https://search.projectsegfau.lt/search",
|
||||||
"icon": "https://docs.searxng.org/_static/searxng-wordmark.svg",
|
"icon": "https://docs.searxng.org/_static/searxng-wordmark.svg",
|
||||||
"category": "Instances"
|
"category": "Instances"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "Lingva Translate",
|
"name": "Lingva Translate",
|
||||||
"description": "A frontend for Google Translate.",
|
"description": "A frontend for Google Translate.",
|
||||||
"website": "https://translate.projectsegfau.lt",
|
"website": "https://translate.projectsegfau.lt",
|
||||||
"icon": "https://github.com/thedaviddelta/lingva-translate/raw/main/public/logo.svg",
|
"icon": "https://github.com/thedaviddelta/lingva-translate/raw/main/public/logo.svg",
|
||||||
"category": "Instances"
|
"category": "Instances"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "Bibliogram",
|
"name": "Bibliogram",
|
||||||
"description": "A frontend for Instagram.",
|
"description": "A frontend for Instagram.",
|
||||||
"website": "https://bib.projectsegfau.lt",
|
"website": "https://bib.projectsegfau.lt",
|
||||||
"icon" : "https://git.sr.ht/~cadence/bibliogram/blob/master/art/logo-circle.png",
|
"icon": "https://git.sr.ht/~cadence/bibliogram/blob/master/art/logo-circle.png",
|
||||||
"category": "Instances"
|
"category": "Instances"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "Minecraft",
|
"name": "Minecraft",
|
||||||
"description": "Our invite-only Minecraft SMP.",
|
"description": "Our invite-only Minecraft SMP.",
|
||||||
"website": "https://projectsegfau.lt/minecraft",
|
"website": "https://projectsegfau.lt/minecraft",
|
||||||
"icon": "https://icon-library.com/images/flat-minecraft-icon/flat-minecraft-icon-7.jpg",
|
"icon": "https://icon-library.com/images/flat-minecraft-icon/flat-minecraft-icon-7.jpg",
|
||||||
"category": "Gameservers"
|
"category": "Gameservers"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "Minetest",
|
"name": "Minetest",
|
||||||
"description": "Minecraft \"alternative\".",
|
"description": "Minecraft \"alternative\".",
|
||||||
"website": "https://matrix.to/#/#minetest:projectsegfau.lt",
|
"website": "https://matrix.to/#/#minetest:projectsegfau.lt",
|
||||||
"icon": "https://instances.projectsegfau.lt/assets/icons/custom/1024px-Minetest_logo.svg.png",
|
"icon": "https://instances.projectsegfau.lt/assets/icons/custom/1024px-Minetest_logo.svg.png",
|
||||||
"category": "Gameservers"
|
"category": "Gameservers"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "Portainer (Soleil Levant)",
|
"name": "Portainer (Soleil Levant)",
|
||||||
"description": "Portainer instance for Soleil Levant.",
|
"description": "Portainer instance for Soleil Levant.",
|
||||||
"website": "https://portainer.soleil-levant.projectsegfau.lt/",
|
"website": "https://portainer.soleil-levant.projectsegfau.lt/",
|
||||||
"icon": "https://www.docker.com/wp-content/uploads/2022/03/vertical-logo-monochromatic.png",
|
"icon": "https://www.docker.com/wp-content/uploads/2022/03/vertical-logo-monochromatic.png",
|
||||||
"category": "Internal"
|
"category": "Internal"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "Portainer (Helios)",
|
"name": "Portainer (Helios)",
|
||||||
"description": "Portainer instance for Helios.",
|
"description": "Portainer instance for Helios.",
|
||||||
"website": "https://portainer.projectsegfau.lt/",
|
"website": "https://portainer.projectsegfau.lt/",
|
||||||
"icon": "https://www.docker.com/wp-content/uploads/2022/03/vertical-logo-monochromatic.png",
|
"icon": "https://www.docker.com/wp-content/uploads/2022/03/vertical-logo-monochromatic.png",
|
||||||
"category": "Internal"
|
"category": "Internal"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "mailcow",
|
"name": "mailcow",
|
||||||
"description": "Our mail server and webmail.",
|
"description": "Our mail server and webmail.",
|
||||||
"website": "https://mail.projectsegfau.lt/",
|
"website": "https://mail.projectsegfau.lt/",
|
||||||
"icon": "https://instances.projectsegfau.lt/assets/icons/custom/cow_mailcow.svg",
|
"icon": "https://instances.projectsegfau.lt/assets/icons/custom/cow_mailcow.svg",
|
||||||
"category": "Internal"
|
"category": "Internal"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "Plausible analytics",
|
"name": "Plausible analytics",
|
||||||
"description": "Analytics for our website.",
|
"description": "Analytics for our website.",
|
||||||
"website": "https://analytics.projectsegfau.lt/projectsegfau.lt",
|
"website": "https://analytics.projectsegfau.lt/projectsegfau.lt",
|
||||||
"icon": "https://avatars.githubusercontent.com/u/54802774?s=200&v=4",
|
"icon": "https://avatars.githubusercontent.com/u/54802774?s=200&v=4",
|
||||||
"category": "Internal"
|
"category": "Internal"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
@ -8,18 +8,18 @@
|
|||||||
$: currentPage = $page.url.pathname;
|
$: currentPage = $page.url.pathname;
|
||||||
|
|
||||||
const menus = [
|
const menus = [
|
||||||
{name: "Instances", url: "/instances"},
|
{ name: "Instances", url: "/instances" },
|
||||||
{name: "Projects", url: "/projects"},
|
{ name: "Projects", url: "/projects" },
|
||||||
{name: "Minecraft", url: "/minecraft"},
|
{ name: "Minecraft", url: "/minecraft" },
|
||||||
{name: "Donate", url: "/donate"},
|
{ name: "Donate", url: "/donate" },
|
||||||
{name: "FAQ", url: "/faq"},
|
{ name: "FAQ", url: "/faq" },
|
||||||
{name: "Contact us", url: "/contact"},
|
{ name: "Contact us", url: "/contact" },
|
||||||
{name: "Our team", url: "/team"},
|
{ name: "Our team", url: "/team" },
|
||||||
{name: "Timeline", url: "/timeline"},
|
{ name: "Timeline", url: "/timeline" },
|
||||||
{name: "Blog", url: "https://blog.projectsegfau.lt/"},
|
{ name: "Blog", url: "https://blog.projectsegfau.lt/" },
|
||||||
{name: "Legal", url: "/legal"},
|
{ name: "Legal", url: "/legal" },
|
||||||
{name: "Status", url: "https://status.projectsegfau.lt/"},
|
{ name: "Status", url: "https://status.projectsegfau.lt/" }
|
||||||
]
|
];
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<nav>
|
<nav>
|
||||||
@ -37,7 +37,13 @@
|
|||||||
|
|
||||||
<div class="links">
|
<div class="links">
|
||||||
{#each menus as { url, name }}
|
{#each menus as { url, name }}
|
||||||
<a sveltekit:prefetch class:active={url !== "/" ? currentPage.match(url) : url === currentPage} href={url}>{name}</a>
|
<a
|
||||||
|
sveltekit:prefetch
|
||||||
|
class:active={url !== "/"
|
||||||
|
? currentPage.match(url)
|
||||||
|
: url === currentPage}
|
||||||
|
href={url}>{name}</a
|
||||||
|
>
|
||||||
{/each}
|
{/each}
|
||||||
<a href="https://matrix.to/#/#project-segfault:projectsegfau.lt/">
|
<a href="https://matrix.to/#/#project-segfault:projectsegfau.lt/">
|
||||||
<IconMatrix />
|
<IconMatrix />
|
||||||
|
@ -2,9 +2,8 @@
|
|||||||
import { afterUpdate } from "svelte";
|
import { afterUpdate } from "svelte";
|
||||||
import DarkMode from "svelte-dark-mode";
|
import DarkMode from "svelte-dark-mode";
|
||||||
import type { Theme } from "svelte-dark-mode/types/DarkMode.svelte";
|
import type { Theme } from "svelte-dark-mode/types/DarkMode.svelte";
|
||||||
import IconSun from "~icons/fa6-solid/sun";
|
import IconSun from "~icons/fa6-solid/sun";
|
||||||
import IconMoon from "~icons/fa6-solid/moon";
|
import IconMoon from "~icons/fa6-solid/moon";
|
||||||
|
|
||||||
|
|
||||||
let theme: Theme;
|
let theme: Theme;
|
||||||
|
|
||||||
@ -21,18 +20,18 @@
|
|||||||
|
|
||||||
{#if theme === "dark"}
|
{#if theme === "dark"}
|
||||||
<div on:click={toggle}>
|
<div on:click={toggle}>
|
||||||
<IconSun />
|
<IconSun />
|
||||||
</div>
|
</div>
|
||||||
{:else if theme === "light"}
|
{:else if theme === "light"}
|
||||||
<div on:click={toggle}>
|
<div on:click={toggle}>
|
||||||
<IconMoon />
|
<IconMoon />
|
||||||
</div>
|
</div>
|
||||||
{/if}
|
{/if}
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
div {
|
div {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
display: flex;
|
display: flex;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
}
|
}
|
||||||
</style>
|
</style>
|
@ -34,7 +34,7 @@ body {
|
|||||||
position: relative;
|
position: relative;
|
||||||
min-height: 100vh;
|
min-height: 100vh;
|
||||||
line-height: 1.625;
|
line-height: 1.625;
|
||||||
transition: all .25s;
|
transition: all 0.25s;
|
||||||
}
|
}
|
||||||
|
|
||||||
::selection {
|
::selection {
|
||||||
|
@ -7,14 +7,14 @@
|
|||||||
|
|
||||||
<SvelteSeo
|
<SvelteSeo
|
||||||
title="Project Segfault"
|
title="Project Segfault"
|
||||||
description="7 idiots, 2 OVH vpses, a BuyVM 1024 Slice, a Sun server and a Hitachi Compute Rack."
|
description="Open source development and hosted services."
|
||||||
canonical="https://projectsegfau.lt/"
|
canonical="https://projectsegfau.lt/"
|
||||||
keywords="projectsegfault, project segfault, privacy services, privacy instances, invidious, nitter, searxng, minecraft"
|
keywords="projectsegfault, project segfault, privacy services, privacy instances, invidious, nitter, searxng, minecraft"
|
||||||
openGraph={{
|
openGraph={{
|
||||||
url: "https://projectsegfau.lt/",
|
url: "https://projectsegfau.lt/",
|
||||||
title: "Project Segfault",
|
title: "Project Segfault",
|
||||||
description:
|
description:
|
||||||
"7 idiots, 2 OVH vpses, a BuyVM 1024 Slice, a Sun server and a Hitachi Compute Rack.",
|
"Open source development and hosted services.",
|
||||||
images: [
|
images: [
|
||||||
{
|
{
|
||||||
url: "/ProjectSegfault_Desktop_16-9.png",
|
url: "/ProjectSegfault_Desktop_16-9.png",
|
||||||
|
@ -13,10 +13,34 @@ If you donate, we will be more motivated to work on the server and host more stu
|
|||||||
|
|
||||||
## Donation Links
|
## Donation Links
|
||||||
|
|
||||||
### Monero
|
<h3>Monero</h3>
|
||||||
Address: `47L7Qsto7XcifY3CdG18ySe5Tt83kpFLDLve9jQwbc9taPBLNGv6ZrJNUKpMG9Nj9zHgCZ4FQMSyt75e8Jvx12JFLtJyFdA`
|
|
||||||
Alias: [projectsegfau.lt](https://projectsegfau.lt/) _(Put this in an OpenAlias compatible wallet e.g. MyMonero)_
|
|
||||||
[Click here for QR code.](/Monero.png)
|
|
||||||
|
|
||||||
|
<div class="monero">
|
||||||
|
<div class="written">
|
||||||
|
<span>Address: <code>47L7Qsto7XcifY3CdG18ySe5Tt83kpFLDLve9jQwbc9taPBLNGv6ZrJNUKpMG9Nj9zHgCZ4FQMSyt75e8Jvx12JFLtJyFdA</code></span><br />
|
||||||
|
<span>Alias: <a href="https://projectsegfau.lt/">projectsegfau.lt</a> <i>(Put this in an OpenAlias compatible wallet e.g. MyMonero)</i></span>
|
||||||
|
</div>
|
||||||
|
<div class="qr">
|
||||||
|
<img src="/Monero.png" alt="Monero QR code" />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
_You can find all of our financial reports on [our transparency repository on GitHub](https://github.com/ProjectSegfault/transparency/)._
|
_You can find all of our financial reports on [our transparency repository on GitHub](https://github.com/ProjectSegfault/transparency/)._
|
||||||
|
|
||||||
|
<style>
|
||||||
|
.monero {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: row;
|
||||||
|
align-items: center;
|
||||||
|
gap: 8px;
|
||||||
|
word-wrap: break-word;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media screen and (max-width: 1004px) {
|
||||||
|
.monero {
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: initial;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
@ -6,7 +6,8 @@
|
|||||||
import IconTriangleExclamation from "~icons/fa6-solid/triangle-exclamation";
|
import IconTriangleExclamation from "~icons/fa6-solid/triangle-exclamation";
|
||||||
import dayjs from "dayjs";
|
import dayjs from "dayjs";
|
||||||
|
|
||||||
let description: string = "7 idiots, 2 OVH vpses, a BuyVM 1024 Slice, a Sun server and a Hitachi Compute Rack.";
|
let description: string =
|
||||||
|
"Open source development and hosted services.";
|
||||||
|
|
||||||
let announcements: any = [];
|
let announcements: any = [];
|
||||||
async function fetchAnnouncements() {
|
async function fetchAnnouncements() {
|
||||||
@ -46,9 +47,9 @@
|
|||||||
<IconTriangleExclamation />
|
<IconTriangleExclamation />
|
||||||
{/if}
|
{/if}
|
||||||
<span>
|
<span>
|
||||||
{dayjs.unix(announcements.created).format(
|
{dayjs
|
||||||
"DD/MM/YYYY HH:mm"
|
.unix(announcements.created)
|
||||||
)}
|
.format("DD/MM/YYYY HH:mm")}
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="title">
|
<div class="title">
|
||||||
|
@ -1,52 +1,57 @@
|
|||||||
<script>
|
<script>
|
||||||
import { CardInner, CardOuter, Link, LinksOuter } from "$lib/Card";
|
import { CardInner, CardOuter } from "$lib/Card";
|
||||||
import instances from "$lib/Instances.json";
|
import instances from "$lib/Instances.json";
|
||||||
import IconGlobe from "~icons/fa6-solid/globe";
|
|
||||||
|
|
||||||
let groups = instances.reduce((curr, val) => {
|
let groups = instances.reduce((curr, val) => {
|
||||||
let group = curr.find(g => g.category === `${val.category}`)
|
let group = curr.find((g) => g.category === `${val.category}`);
|
||||||
if (group) {
|
if (group) {
|
||||||
group.values.push(val)
|
group.values.push(val);
|
||||||
} else {
|
} else {
|
||||||
curr.push({ category: `${val.category}`, values: [ val ] })
|
curr.push({ category: `${val.category}`, values: [val] });
|
||||||
}
|
}
|
||||||
return curr
|
return curr;
|
||||||
}, [])
|
}, []);
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<h1>Our instances</h1>
|
<h1>Our instances</h1>
|
||||||
<CardOuter>
|
<CardOuter>
|
||||||
<div class="container">
|
<div class="container">
|
||||||
{#each groups as group}
|
{#each groups as group}
|
||||||
<div class="container-inner">
|
<div class="container-inner">
|
||||||
<h2>{group.category}</h2>
|
<h2>{group.category}</h2>
|
||||||
<div class="items">
|
<div class="items">
|
||||||
{#each group.values as item }
|
{#each group.values as item}
|
||||||
<CardInner title={item.name} description={item.description} icon={item.icon}>
|
<a href={item.website}>
|
||||||
<LinksOuter>
|
<CardInner
|
||||||
<Link url={item.website} classes="web">
|
title={item.name}
|
||||||
<IconGlobe />
|
description={item.description}
|
||||||
</Link>
|
icon={item.icon}
|
||||||
</LinksOuter>
|
>
|
||||||
</CardInner>
|
</CardInner>
|
||||||
{/each}
|
</a>
|
||||||
</div>
|
{/each}
|
||||||
</div>
|
</div>
|
||||||
{/each}
|
</div>
|
||||||
</div>
|
{/each}
|
||||||
</CardOuter>
|
</div>
|
||||||
|
</CardOuter>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
|
.container-inner,
|
||||||
|
.container {
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
|
||||||
.container-inner, .container {
|
.items {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: row;
|
||||||
}
|
flex-flow: row wrap;
|
||||||
|
gap: 2rem;
|
||||||
|
}
|
||||||
|
|
||||||
.items {
|
a {
|
||||||
display: flex;
|
text-decoration: none;
|
||||||
flex-direction: row;
|
color: var(--text);
|
||||||
flex-flow: row wrap;
|
}
|
||||||
gap: 2rem;
|
|
||||||
}
|
|
||||||
</style>
|
</style>
|
@ -1,7 +1,7 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { CardInner, CardOuter, Link, LinksOuter } from "$lib/Card";
|
import { CardInner, CardOuter, Link, LinksOuter } from "$lib/Card";
|
||||||
import projects from "$lib/Projects.json";
|
import projects from "$lib/Projects.json";
|
||||||
import IconGitHub from "~icons/simple-icons/github";
|
import IconGitHub from "~icons/simple-icons/github";
|
||||||
import IconGlobe from "~icons/fa6-solid/globe";
|
import IconGlobe from "~icons/fa6-solid/globe";
|
||||||
import IconEmail from "~icons/fa6-solid/envelope";
|
import IconEmail from "~icons/fa6-solid/envelope";
|
||||||
import IconCamera from "~icons/fa6-solid/camera";
|
import IconCamera from "~icons/fa6-solid/camera";
|
||||||
@ -14,10 +14,10 @@
|
|||||||
|
|
||||||
<h1>Our projects</h1>
|
<h1>Our projects</h1>
|
||||||
<CardOuter>
|
<CardOuter>
|
||||||
{#each projects as { name, description, github, website }}
|
{#each projects as { name, description, github, website }}
|
||||||
<CardInner title={name} {description}>
|
<CardInner title={name} {description}>
|
||||||
<LinksOuter>
|
<LinksOuter>
|
||||||
{#if website}
|
{#if website}
|
||||||
<Link url={website} classes="web">
|
<Link url={website} classes="web">
|
||||||
<IconGlobe />
|
<IconGlobe />
|
||||||
</Link>
|
</Link>
|
||||||
@ -28,8 +28,7 @@
|
|||||||
<IconGitHub />
|
<IconGitHub />
|
||||||
</Link>
|
</Link>
|
||||||
{/if}
|
{/if}
|
||||||
|
</LinksOuter>
|
||||||
</LinksOuter>
|
</CardInner>
|
||||||
</CardInner>
|
{/each}
|
||||||
{/each}
|
|
||||||
</CardOuter>
|
</CardOuter>
|
@ -1,5 +1,5 @@
|
|||||||
<script lang="ts">
|
<script lang="ts">
|
||||||
import { CardInner, CardOuter, Link, LinksOuter } from "$lib/Card";
|
import { CardInner, CardOuter, Link, LinksOuter } from "$lib/Card";
|
||||||
import members from "$lib/Team.json";
|
import members from "$lib/Team.json";
|
||||||
import IconDiscord from "~icons/simple-icons/discord";
|
import IconDiscord from "~icons/simple-icons/discord";
|
||||||
import IconMatrix from "~icons/simple-icons/matrix";
|
import IconMatrix from "~icons/simple-icons/matrix";
|
||||||
@ -17,10 +17,10 @@
|
|||||||
|
|
||||||
<h1>Our team</h1>
|
<h1>Our team</h1>
|
||||||
<CardOuter>
|
<CardOuter>
|
||||||
{#each members as { name, discord, matrix, position, description, github, pgp, website, email, picture }}
|
{#each members as { name, discord, matrix, position, description, github, pgp, website, email, picture }}
|
||||||
<CardInner title={name} {position} {description}>
|
<CardInner title={name} {position} {description}>
|
||||||
<LinksOuter>
|
<LinksOuter>
|
||||||
{#if matrix}
|
{#if matrix}
|
||||||
<Link url={matrix} classes="matrixcolored">
|
<Link url={matrix} classes="matrixcolored">
|
||||||
<IconMatrix />
|
<IconMatrix />
|
||||||
</Link>
|
</Link>
|
||||||
@ -61,8 +61,7 @@
|
|||||||
<IconCamera />
|
<IconCamera />
|
||||||
</Link>
|
</Link>
|
||||||
{/if}
|
{/if}
|
||||||
|
</LinksOuter>
|
||||||
</LinksOuter>
|
</CardInner>
|
||||||
</CardInner>
|
{/each}
|
||||||
{/each}
|
|
||||||
</CardOuter>
|
</CardOuter>
|
@ -13,7 +13,10 @@
|
|||||||
|
|
||||||
<svelte:head>
|
<svelte:head>
|
||||||
<title>Timeline | Project Segfault</title>
|
<title>Timeline | Project Segfault</title>
|
||||||
<meta name="description" content="Timeline of Project Segfault's history." />
|
<meta
|
||||||
|
name="description"
|
||||||
|
content="Timeline of Project Segfault's history."
|
||||||
|
/>
|
||||||
</svelte:head>
|
</svelte:head>
|
||||||
|
|
||||||
<Hero>
|
<Hero>
|
||||||
|
@ -8,7 +8,7 @@
|
|||||||
version="1.1"
|
version="1.1"
|
||||||
id="svg5"
|
id="svg5"
|
||||||
inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
|
inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
|
||||||
sodipodi:docname="logo.svg"
|
sodipodi:docname="pjsgfltrebrandtransparentish.svg"
|
||||||
inkscape:export-filename="pjsgfltrebrandtransparentish.svg"
|
inkscape:export-filename="pjsgfltrebrandtransparentish.svg"
|
||||||
inkscape:export-xdpi="96"
|
inkscape:export-xdpi="96"
|
||||||
inkscape:export-ydpi="96"
|
inkscape:export-ydpi="96"
|
||||||
@ -28,7 +28,7 @@
|
|||||||
inkscape:document-units="px"
|
inkscape:document-units="px"
|
||||||
showgrid="false"
|
showgrid="false"
|
||||||
inkscape:zoom="1.5866953"
|
inkscape:zoom="1.5866953"
|
||||||
inkscape:cx="192.22342"
|
inkscape:cx="191.9083"
|
||||||
inkscape:cy="255.24749"
|
inkscape:cy="255.24749"
|
||||||
inkscape:window-width="1920"
|
inkscape:window-width="1920"
|
||||||
inkscape:window-height="1022"
|
inkscape:window-height="1022"
|
||||||
@ -110,4 +110,12 @@
|
|||||||
inkscape:original-d="m 377.87971,133.48486 -236.02453,0.24251 V 383.6211 c 0,0 303.15572,-167.40787 44.67569,-108.17418 C 9.614791,315.98928 377.87971,133.48486 377.87971,133.48486 Z" />
|
inkscape:original-d="m 377.87971,133.48486 -236.02453,0.24251 V 383.6211 c 0,0 303.15572,-167.40787 44.67569,-108.17418 C 9.614791,315.98928 377.87971,133.48486 377.87971,133.48486 Z" />
|
||||||
</g>
|
</g>
|
||||||
</g>
|
</g>
|
||||||
|
<rect
|
||||||
|
style="fill:#00a584;fill-opacity:0.563436;paint-order:stroke fill markers;image-rendering:optimizeQuality"
|
||||||
|
id="rect4630"
|
||||||
|
width="375.63217"
|
||||||
|
height="380.60764"
|
||||||
|
x="0"
|
||||||
|
y="0"
|
||||||
|
ry="52.713902" />
|
||||||
</svg>
|
</svg>
|
||||||
|
Before Width: | Height: | Size: 3.8 KiB After Width: | Height: | Size: 4.1 KiB |
@ -8,7 +8,7 @@
|
|||||||
version="1.1"
|
version="1.1"
|
||||||
id="svg5"
|
id="svg5"
|
||||||
inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
|
inkscape:version="1.2.1 (9c6d41e410, 2022-07-14)"
|
||||||
sodipodi:docname="pjsgfltrebrandtransparentish.svg"
|
sodipodi:docname="logo.svg"
|
||||||
inkscape:export-filename="pjsgfltrebrandtransparentish.svg"
|
inkscape:export-filename="pjsgfltrebrandtransparentish.svg"
|
||||||
inkscape:export-xdpi="96"
|
inkscape:export-xdpi="96"
|
||||||
inkscape:export-ydpi="96"
|
inkscape:export-ydpi="96"
|
||||||
@ -28,7 +28,7 @@
|
|||||||
inkscape:document-units="px"
|
inkscape:document-units="px"
|
||||||
showgrid="false"
|
showgrid="false"
|
||||||
inkscape:zoom="1.5866953"
|
inkscape:zoom="1.5866953"
|
||||||
inkscape:cx="191.9083"
|
inkscape:cx="192.22342"
|
||||||
inkscape:cy="255.24749"
|
inkscape:cy="255.24749"
|
||||||
inkscape:window-width="1920"
|
inkscape:window-width="1920"
|
||||||
inkscape:window-height="1022"
|
inkscape:window-height="1022"
|
||||||
@ -110,12 +110,4 @@
|
|||||||
inkscape:original-d="m 377.87971,133.48486 -236.02453,0.24251 V 383.6211 c 0,0 303.15572,-167.40787 44.67569,-108.17418 C 9.614791,315.98928 377.87971,133.48486 377.87971,133.48486 Z" />
|
inkscape:original-d="m 377.87971,133.48486 -236.02453,0.24251 V 383.6211 c 0,0 303.15572,-167.40787 44.67569,-108.17418 C 9.614791,315.98928 377.87971,133.48486 377.87971,133.48486 Z" />
|
||||||
</g>
|
</g>
|
||||||
</g>
|
</g>
|
||||||
<rect
|
|
||||||
style="fill:#00a584;fill-opacity:0.563436;paint-order:stroke fill markers;image-rendering:optimizeQuality"
|
|
||||||
id="rect4630"
|
|
||||||
width="375.63217"
|
|
||||||
height="380.60764"
|
|
||||||
x="0"
|
|
||||||
y="0"
|
|
||||||
ry="52.713902" />
|
|
||||||
</svg>
|
</svg>
|
||||||
|
Before Width: | Height: | Size: 4.1 KiB After Width: | Height: | Size: 3.8 KiB |
Loading…
Reference in New Issue
Block a user