Compare commits
2 commits
6fe816404f
...
f1f777ff82
Author | SHA1 | Date | |
---|---|---|---|
f1f777ff82 | |||
a72c0f41c3 |
4 changed files with 62 additions and 10 deletions
3
.gitignore
vendored
3
.gitignore
vendored
|
@ -14,3 +14,6 @@ docker/proxy-config.json
|
||||||
docker/frontend.env
|
docker/frontend.env
|
||||||
|
|
||||||
Foxnouns.DataMigrator/apps.json
|
Foxnouns.DataMigrator/apps.json
|
||||||
|
|
||||||
|
out/
|
||||||
|
build/
|
||||||
|
|
|
@ -8,6 +8,7 @@
|
||||||
import Envelope from "svelte-bootstrap-icons/lib/Envelope.svelte";
|
import Envelope from "svelte-bootstrap-icons/lib/Envelope.svelte";
|
||||||
import CashCoin from "svelte-bootstrap-icons/lib/CashCoin.svelte";
|
import CashCoin from "svelte-bootstrap-icons/lib/CashCoin.svelte";
|
||||||
import Logo from "./Logo.svelte";
|
import Logo from "./Logo.svelte";
|
||||||
|
import { t } from "$lib/i18n";
|
||||||
|
|
||||||
type Props = { meta: Meta };
|
type Props = { meta: Meta };
|
||||||
let { meta }: Props = $props();
|
let { meta }: Props = $props();
|
||||||
|
@ -18,13 +19,13 @@
|
||||||
<div class="align-start flex-grow-1">
|
<div class="align-start flex-grow-1">
|
||||||
<Logo />
|
<Logo />
|
||||||
<ul class="mt-2 list-unstyled">
|
<ul class="mt-2 list-unstyled">
|
||||||
<li><strong>Version</strong> {meta.version}</li>
|
<li><strong>{$t("footer.version")}</strong> {meta.version}</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<div class="align-end">
|
<div class="align-end">
|
||||||
<ul class="list-unstyled">
|
<ul class="list-unstyled">
|
||||||
<li>{meta.users.total.toLocaleString()} <strong>users</strong></li>
|
<li>{meta.users.total.toLocaleString()} <strong>{$t("footer.users")}</strong></li>
|
||||||
<li>{meta.members.toLocaleString()} <strong>members</strong></li>
|
<li>{meta.members.toLocaleString()} <strong>{$t("footer.members")}</strong></li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -36,7 +37,7 @@
|
||||||
>
|
>
|
||||||
<li class="list-inline-item">
|
<li class="list-inline-item">
|
||||||
<Git />
|
<Git />
|
||||||
Source code
|
{$t("footer.source")}
|
||||||
</li>
|
</li>
|
||||||
</a>
|
</a>
|
||||||
<a
|
<a
|
||||||
|
@ -46,37 +47,37 @@
|
||||||
>
|
>
|
||||||
<li class="list-inline-item">
|
<li class="list-inline-item">
|
||||||
<Reception4 />
|
<Reception4 />
|
||||||
Status
|
{$t("footer.status")}
|
||||||
</li>
|
</li>
|
||||||
</a>
|
</a>
|
||||||
<a class="list-inline-item link-underline link-underline-opacity-0" href="/page/about">
|
<a class="list-inline-item link-underline link-underline-opacity-0" href="/page/about">
|
||||||
<li class="list-inline-item">
|
<li class="list-inline-item">
|
||||||
<Envelope />
|
<Envelope />
|
||||||
About and contact
|
{$t("footer.about-contact")}
|
||||||
</li>
|
</li>
|
||||||
</a>
|
</a>
|
||||||
<a class="list-inline-item link-underline link-underline-opacity-0" href="/page/tos">
|
<a class="list-inline-item link-underline link-underline-opacity-0" href="/page/tos">
|
||||||
<li class="list-inline-item">
|
<li class="list-inline-item">
|
||||||
<CardText />
|
<CardText />
|
||||||
Terms of service
|
{$t("footer.terms")}
|
||||||
</li>
|
</li>
|
||||||
</a>
|
</a>
|
||||||
<a class="list-inline-item link-underline link-underline-opacity-0" href="/page/privacy">
|
<a class="list-inline-item link-underline link-underline-opacity-0" href="/page/privacy">
|
||||||
<li class="list-inline-item">
|
<li class="list-inline-item">
|
||||||
<Shield />
|
<Shield />
|
||||||
Privacy policy
|
{$t("footer.privacy")}
|
||||||
</li>
|
</li>
|
||||||
</a>
|
</a>
|
||||||
<a class="list-inline-item link-underline link-underline-opacity-0" href="/page/changelog">
|
<a class="list-inline-item link-underline link-underline-opacity-0" href="/page/changelog">
|
||||||
<li class="list-inline-item">
|
<li class="list-inline-item">
|
||||||
<Newspaper />
|
<Newspaper />
|
||||||
Changelog
|
{$t("footer.changelog")}
|
||||||
</li>
|
</li>
|
||||||
</a>
|
</a>
|
||||||
<a class="list-inline-item link-underline link-underline-opacity-0" href="/page/donate">
|
<a class="list-inline-item link-underline link-underline-opacity-0" href="/page/donate">
|
||||||
<li class="list-inline-item">
|
<li class="list-inline-item">
|
||||||
<CashCoin />
|
<CashCoin />
|
||||||
Donate
|
{$t("footer.donate")}
|
||||||
</li>
|
</li>
|
||||||
</a>
|
</a>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
|
@ -327,5 +327,17 @@
|
||||||
"alert": {
|
"alert": {
|
||||||
"auth-method-remove-success": "Successfully unlinked account!",
|
"auth-method-remove-success": "Successfully unlinked account!",
|
||||||
"auth-required": "You must log in to access this page."
|
"auth-required": "You must log in to access this page."
|
||||||
|
},
|
||||||
|
"footer": {
|
||||||
|
"version": "Version",
|
||||||
|
"users": "users",
|
||||||
|
"members": "members",
|
||||||
|
"source": "Source code",
|
||||||
|
"status": "Status",
|
||||||
|
"terms": "Terms of service",
|
||||||
|
"privacy": "Privacy policy",
|
||||||
|
"changelog": "Changelog",
|
||||||
|
"donate": "Donate",
|
||||||
|
"about-contact": "About and contact"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
36
build.sh
Executable file
36
build.sh
Executable file
|
@ -0,0 +1,36 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
set -euxo pipefail
|
||||||
|
|
||||||
|
ROOT_DIR=$(pwd)
|
||||||
|
|
||||||
|
echo "Cleaning output directory ($ROOT_DIR/build)"
|
||||||
|
|
||||||
|
[ -d "$ROOT_DIR/build" ] && rm -r "$ROOT_DIR/build"
|
||||||
|
mkdir "$ROOT_DIR/build"
|
||||||
|
|
||||||
|
echo "Building .NET backend"
|
||||||
|
|
||||||
|
cd "$ROOT_DIR/Foxnouns.Backend"
|
||||||
|
[ -d "$ROOT_DIR/Foxnouns.Backend/out" ] && rm -r "$ROOT_DIR/Foxnouns.Backend/out"
|
||||||
|
dotnet publish --artifacts-path "$ROOT_DIR/Foxnouns.Backend/out"
|
||||||
|
mv "$ROOT_DIR/Foxnouns.Backend/out/publish/Foxnouns.Backend/"* "$ROOT_DIR/build/bin"
|
||||||
|
|
||||||
|
echo "Building Go rate limiter"
|
||||||
|
|
||||||
|
cd "$ROOT_DIR/Foxnouns.RateLimiter"
|
||||||
|
go build -o rate -v .
|
||||||
|
mv rate "$ROOT_DIR/build/rate"
|
||||||
|
|
||||||
|
echo "Building Node.js frontend"
|
||||||
|
|
||||||
|
cd "$ROOT_DIR/Foxnouns.Frontend"
|
||||||
|
[ -d "$ROOT_DIR/Foxnouns.Frontend/build" ] && rm -r "$ROOT_DIR/Foxnouns.Frontend/build"
|
||||||
|
pnpm install
|
||||||
|
pnpm build
|
||||||
|
|
||||||
|
mkdir "$ROOT_DIR/build/fe"
|
||||||
|
cp -r build .env* package.json pnpm-lock.yaml "$ROOT_DIR/build/fe"
|
||||||
|
cd "$ROOT_DIR/build/fe"
|
||||||
|
pnpm install -P
|
||||||
|
|
||||||
|
echo "Finished building Foxnouns.NET"
|
Loading…
Add table
Add a link
Reference in a new issue