Moving static files, adding robots, adding sitemap

This commit is contained in:
Firq 2023-03-14 21:49:13 +01:00
parent 82b5709faa
commit 247f07a4e5
Signed by: Firq
GPG key ID: 3ACC61C8CEC83C20
107 changed files with 168 additions and 63 deletions

5
.gitignore vendored
View file

@ -25,4 +25,7 @@ pnpm-debug.log*
# exclude default png images # exclude default png images
static/**/*.png static/**/*.png
!static/embed.png !static/assets/embed.png
!static/assets/lurker.png
!static/assets/padoru.png
!static/assets/fedora.png

View file

@ -1,10 +1,14 @@
import { defineConfig } from 'astro/config'; import { defineConfig } from 'astro/config';
// https://astro.build/config
import sitemap from "@astrojs/sitemap";
// https://astro.build/config // https://astro.build/config
export default defineConfig({ export default defineConfig({
sitemap: true, sitemap: true,
base: '/', base: '/',
outDir: 'public', outDir: 'public',
publicDir: 'static', publicDir: 'static',
site: 'https://firq.dev/' site: 'https://firq.dev/',
integrations: [sitemap()]
}); });

104
package-lock.json generated
View file

@ -8,6 +8,7 @@
"name": "@firq/fgosite", "name": "@firq/fgosite",
"version": "0.1.1", "version": "0.1.1",
"dependencies": { "dependencies": {
"@astrojs/sitemap": "^1.2.1",
"astro": "^2.0.2", "astro": "^2.0.2",
"iconoir": "^6.1.0" "iconoir": "^6.1.0"
} }
@ -90,6 +91,15 @@
"node": ">=16.12.0" "node": ">=16.12.0"
} }
}, },
"node_modules/@astrojs/sitemap": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/@astrojs/sitemap/-/sitemap-1.2.1.tgz",
"integrity": "sha512-nlKP1qc1ENZ61w+ep5RdsObjYWso4QdLGC5WyzssnKkgVDijHT61s/tHFfBWHhxqdjcw4x1V1um/eSQZPDTR3Q==",
"dependencies": {
"sitemap": "^7.1.1",
"zod": "^3.17.3"
}
},
"node_modules/@astrojs/telemetry": { "node_modules/@astrojs/telemetry": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/@astrojs/telemetry/-/telemetry-2.0.0.tgz", "resolved": "https://registry.npmjs.org/@astrojs/telemetry/-/telemetry-2.0.0.tgz",
@ -995,9 +1005,7 @@
"node_modules/@types/node": { "node_modules/@types/node": {
"version": "18.14.6", "version": "18.14.6",
"resolved": "https://registry.npmjs.org/@types/node/-/node-18.14.6.tgz", "resolved": "https://registry.npmjs.org/@types/node/-/node-18.14.6.tgz",
"integrity": "sha512-93+VvleD3mXwlLI/xASjw0FzKcwzl3OdTCzm1LaRfqgS21gfFtK3zDXM5Op9TeeMsJVOaJ2VRDpT9q4Y3d0AvA==", "integrity": "sha512-93+VvleD3mXwlLI/xASjw0FzKcwzl3OdTCzm1LaRfqgS21gfFtK3zDXM5Op9TeeMsJVOaJ2VRDpT9q4Y3d0AvA=="
"optional": true,
"peer": true
}, },
"node_modules/@types/parse5": { "node_modules/@types/parse5": {
"version": "6.0.3", "version": "6.0.3",
@ -1009,6 +1017,14 @@
"resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz",
"integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==" "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q=="
}, },
"node_modules/@types/sax": {
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/@types/sax/-/sax-1.2.4.tgz",
"integrity": "sha512-pSAff4IAxJjfAXUG6tFkO7dsSbTmf8CtUpfhhZ5VhkRpC4628tJhh3+V6H1E+/Gs9piSzYKT5yzHO5M4GG9jkw==",
"dependencies": {
"@types/node": "*"
}
},
"node_modules/@types/unist": { "node_modules/@types/unist": {
"version": "2.0.6", "version": "2.0.6",
"resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz", "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz",
@ -1119,6 +1135,11 @@
"node": ">=4" "node": ">=4"
} }
}, },
"node_modules/arg": {
"version": "5.0.2",
"resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz",
"integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg=="
},
"node_modules/argparse": { "node_modules/argparse": {
"version": "1.0.10", "version": "1.0.10",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
@ -4077,6 +4098,11 @@
"suf-log": "^2.5.3" "suf-log": "^2.5.3"
} }
}, },
"node_modules/sax": {
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
"integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw=="
},
"node_modules/section-matter": { "node_modules/section-matter": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz",
@ -4168,6 +4194,29 @@
"resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz",
"integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg=="
}, },
"node_modules/sitemap": {
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/sitemap/-/sitemap-7.1.1.tgz",
"integrity": "sha512-mK3aFtjz4VdJN0igpIJrinf3EO8U8mxOPsTBzSsy06UtjZQJ3YY3o3Xa7zSc5nMqcMrRwlChHZ18Kxg0caiPBg==",
"dependencies": {
"@types/node": "^17.0.5",
"@types/sax": "^1.2.1",
"arg": "^5.0.0",
"sax": "^1.2.4"
},
"bin": {
"sitemap": "dist/cli.js"
},
"engines": {
"node": ">=12.0.0",
"npm": ">=5.6.0"
}
},
"node_modules/sitemap/node_modules/@types/node": {
"version": "17.0.45",
"resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz",
"integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw=="
},
"node_modules/slash": { "node_modules/slash": {
"version": "4.0.0", "version": "4.0.0",
"resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz",
@ -5028,6 +5077,15 @@
"prismjs": "^1.28.0" "prismjs": "^1.28.0"
} }
}, },
"@astrojs/sitemap": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/@astrojs/sitemap/-/sitemap-1.2.1.tgz",
"integrity": "sha512-nlKP1qc1ENZ61w+ep5RdsObjYWso4QdLGC5WyzssnKkgVDijHT61s/tHFfBWHhxqdjcw4x1V1um/eSQZPDTR3Q==",
"requires": {
"sitemap": "^7.1.1",
"zod": "^3.17.3"
}
},
"@astrojs/telemetry": { "@astrojs/telemetry": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/@astrojs/telemetry/-/telemetry-2.0.0.tgz", "resolved": "https://registry.npmjs.org/@astrojs/telemetry/-/telemetry-2.0.0.tgz",
@ -5614,9 +5672,7 @@
"@types/node": { "@types/node": {
"version": "18.14.6", "version": "18.14.6",
"resolved": "https://registry.npmjs.org/@types/node/-/node-18.14.6.tgz", "resolved": "https://registry.npmjs.org/@types/node/-/node-18.14.6.tgz",
"integrity": "sha512-93+VvleD3mXwlLI/xASjw0FzKcwzl3OdTCzm1LaRfqgS21gfFtK3zDXM5Op9TeeMsJVOaJ2VRDpT9q4Y3d0AvA==", "integrity": "sha512-93+VvleD3mXwlLI/xASjw0FzKcwzl3OdTCzm1LaRfqgS21gfFtK3zDXM5Op9TeeMsJVOaJ2VRDpT9q4Y3d0AvA=="
"optional": true,
"peer": true
}, },
"@types/parse5": { "@types/parse5": {
"version": "6.0.3", "version": "6.0.3",
@ -5628,6 +5684,14 @@
"resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz", "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz",
"integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==" "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q=="
}, },
"@types/sax": {
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/@types/sax/-/sax-1.2.4.tgz",
"integrity": "sha512-pSAff4IAxJjfAXUG6tFkO7dsSbTmf8CtUpfhhZ5VhkRpC4628tJhh3+V6H1E+/Gs9piSzYKT5yzHO5M4GG9jkw==",
"requires": {
"@types/node": "*"
}
},
"@types/unist": { "@types/unist": {
"version": "2.0.6", "version": "2.0.6",
"resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz", "resolved": "https://registry.npmjs.org/@types/unist/-/unist-2.0.6.tgz",
@ -5718,6 +5782,11 @@
"color-convert": "^1.9.0" "color-convert": "^1.9.0"
} }
}, },
"arg": {
"version": "5.0.2",
"resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz",
"integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg=="
},
"argparse": { "argparse": {
"version": "1.0.10", "version": "1.0.10",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
@ -7639,6 +7708,11 @@
"suf-log": "^2.5.3" "suf-log": "^2.5.3"
} }
}, },
"sax": {
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
"integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw=="
},
"section-matter": { "section-matter": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz",
@ -7716,6 +7790,24 @@
"resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz",
"integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==" "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg=="
}, },
"sitemap": {
"version": "7.1.1",
"resolved": "https://registry.npmjs.org/sitemap/-/sitemap-7.1.1.tgz",
"integrity": "sha512-mK3aFtjz4VdJN0igpIJrinf3EO8U8mxOPsTBzSsy06UtjZQJ3YY3o3Xa7zSc5nMqcMrRwlChHZ18Kxg0caiPBg==",
"requires": {
"@types/node": "^17.0.5",
"@types/sax": "^1.2.1",
"arg": "^5.0.0",
"sax": "^1.2.4"
},
"dependencies": {
"@types/node": {
"version": "17.0.45",
"resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz",
"integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw=="
}
}
},
"slash": { "slash": {
"version": "4.0.0", "version": "4.0.0",
"resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz", "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz",

View file

@ -11,6 +11,7 @@
"astro": "astro" "astro": "astro"
}, },
"dependencies": { "dependencies": {
"@astrojs/sitemap": "^1.2.1",
"astro": "^2.0.2", "astro": "^2.0.2",
"iconoir": "^6.1.0" "iconoir": "^6.1.0"
} }

View file

@ -7,8 +7,8 @@ export interface Props {
const { mlb, link, name } = Astro.props const { mlb, link, name } = Astro.props
const ce_img: string = `/ce/${link}.webp` const ce_img: string = `/assets/ce/${link}.webp`
const mlb_ce: string = `/ce/mlb.webp` const mlb_ce: string = `/assets/ce/mlb.webp`
let mlb_image: string = 'mlbalign' let mlb_image: string = 'mlbalign'
if (mlb === 'false') { if (mlb === 'false') {

View file

@ -6,7 +6,7 @@ export interface Props {
} }
const { image, link, site } = Astro.props const { image, link, site } = Astro.props
const icon: string = `background-image: url('/social/${image}.webp')` const icon: string = `background-image: url('/assets/social/${image}.webp')`
--- ---
<a href={link} target="_blank" rel="noopener noreferrer" aria-label={site}> <a href={link} target="_blank" rel="noopener noreferrer" aria-label={site}>

View file

@ -8,7 +8,7 @@ export interface Props {
const { link, image, origin, name } = Astro.props const { link, image, origin, name } = Astro.props
const img: string = `/favourites/${image}.webp` const img: string = `/assets/favourites/${image}.webp`
--- ---
<a href={link} target="_blank" rel="noopener noreferrer"> <a href={link} target="_blank" rel="noopener noreferrer">

View file

@ -3,7 +3,7 @@
<header> <header>
<a href="/" rel="noopener noreferrer" aria-label="Home"> <a href="/" rel="noopener noreferrer" aria-label="Home">
<img src="/logo.svg" alt="" /> <img src="/assets/logo.svg" alt="" />
</a> </a>
<ul class="desktop"> <ul class="desktop">
<slot /> <slot />

View file

@ -13,8 +13,8 @@ export interface Props {
const { bond10, ml, image_bond, image_servant, np, skills, level, name } = const { bond10, ml, image_bond, image_servant, np, skills, level, name } =
Astro.props Astro.props
const servant_img: string = `/servant/${image_servant}.webp` const servant_img: string = `/assets/servant/${image_servant}.webp`
const bondce_img: string = `/ce/bond-ce/${image_bond}.webp` const bondce_img: string = `/assets/ce/bond-ce/${image_bond}.webp`
let bondce_css: string = 'bond-ce' let bondce_css: string = 'bond-ce'
if (bond10 === 'false') { if (bond10 === 'false') {

View file

@ -16,7 +16,7 @@ const options_date: Intl.DateTimeFormatOptions = {
} }
const formatted_date = new Date(date).toLocaleDateString('de-DE', options_date) const formatted_date = new Date(date).toLocaleDateString('de-DE', options_date)
const icon: string = `background: url('/ta_icons/${image}.webp')` const icon: string = `background: url('/assets/ta_icons/${image}.webp')`
let hasuser = '' let hasuser = ''
if (user !== undefined) { if (user !== undefined) {

View file

@ -7,7 +7,7 @@ export interface Props {
const { image, link, title } = Astro.props const { image, link, title } = Astro.props
const icon: string = `background-image: url('/technologies/${image}.webp')` const icon: string = `background-image: url('/assets/technologies/${image}.webp')`
--- ---
<a href={link} target="_blank" rel="noopener noreferrer" aria-label={title}> <a href={link} target="_blank" rel="noopener noreferrer" aria-label={title}>

View file

@ -1,7 +1,7 @@
--- ---
import Navbar from '../components/navbar.astro' import Navbar from '../components/navbar.astro'
import NavbarEntry from '../components/navbarEntry.astro' import NavbarEntry from '../components/navbarEntry.astro'
import navdata from '../../static/_navdata.json' import navdata from '../../static/assets/data/_navdata.json'
export interface Props { export interface Props {
title: string title: string
@ -29,15 +29,16 @@ if (currentpage !== 'home') {
<head> <head>
<meta charset="UTF-8" /> <meta charset="UTF-8" />
<meta name="viewport" content="width=device-width" /> <meta name="viewport" content="width=device-width" />
<link rel="icon" type="image/ico" href="/favicon.ico" /> <link rel="icon" type="image/ico" href="/assets/favicon.ico" />
<meta name="generator" content={Astro.generator} /> <meta name="generator" content={Astro.generator} />
<meta property="og:title" content={title} /> <meta property="og:title" content={title} />
<meta property="og:url" content={currPage} /> <meta property="og:url" content={currPage} />
<meta name="description" content={description} /> <meta name="description" content={description} />
<meta property="og:description" content={description} /> <meta property="og:description" content={description} />
<meta property="og:image" content="/embed.png" /> <meta property="og:image" content="/assets/embed.png" />
<meta property="og:type" content="website" /> <meta property="og:type" content="website" />
<meta property="og:locale" content="en_US" /> <meta property="og:locale" content="en_US" />
<link rel="sitemap" href="/sitemap-index.xml" />
<title>{title}</title> <title>{title}</title>
<link <link
rel="stylesheet" rel="stylesheet"

View file

@ -37,7 +37,7 @@
rel="noopener noreferrer">FGO Timers here</a rel="noopener noreferrer">FGO Timers here</a
> >
<div class="sticky-image-wrapper"> <div class="sticky-image-wrapper">
<img src="/lurker.png" alt="" /> <img src="/assets/lurker.png" alt="" />
</div> </div>
</div> </div>
<br /> <br />
@ -51,7 +51,7 @@
>his site here</a >his site here</a
> >
<div class="sticky-image-wrapper"> <div class="sticky-image-wrapper">
<img src="/fedora.png" alt="" /> <img src="/assets/fedora.png" alt="" />
</div> </div>
</div> </div>
<br /> <br />
@ -62,7 +62,7 @@
rel="noopener noreferrer">AnthonyJ</a rel="noopener noreferrer">AnthonyJ</a
> for providing me with the custom Shishou favicon. > for providing me with the custom Shishou favicon.
<div class="sticky-image-wrapper"> <div class="sticky-image-wrapper">
<img src="/padoru.png" alt="" /> <img src="/assets/padoru.png" alt="" />
</div> </div>
</div> </div>
</footer> </footer>

View file

@ -4,38 +4,11 @@ import AboutSection from '../layouts/aboutSection.astro'
import ContactSection from '../layouts/contactSection.astro' import ContactSection from '../layouts/contactSection.astro'
import ContactCard from '../components/contactCard.astro' import ContactCard from '../components/contactCard.astro'
import contactdata from '../../static/_contactdata.json' import contactdata from '../../static/assets/data/_contactdata.json'
import CustomFooter from '../layouts/customFooter.astro' import CustomFooter from '../layouts/customFooter.astro'
import TechnologyCard from '../components/technologyCard.astro' import TechnologyCard from '../components/technologyCard.astro'
import technologydata from '../../static/assets/data/_technologydata.json'
const techologydata = [
{
title: 'Astro',
link: 'https://astro.build',
image: 'astro',
},
{
title: 'GitLab',
link: 'https://gitlab.io',
image: 'gitlab',
},
{
title: 'Typescript',
link: 'https://www.typescriptlang.org/',
image: 'typescript',
},
{
title: 'Alpine Linux',
link: 'https://alpinelinux.org/',
image: 'alpine-linux',
},
{
title: 'Ubuntu',
link: 'https://ubuntu.com/',
image: 'ubuntu',
},
]
const description = const description =
"A summary of the technologies used as well as my contact information. You'll also find disclaimers and thank you notes for the people that helped me." "A summary of the technologies used as well as my contact information. You'll also find disclaimers and thank you notes for the people that helped me."
@ -51,7 +24,7 @@ const description =
general, and first project using Typescript. general, and first project using Typescript.
</AboutSection> </AboutSection>
<AboutSection title="Technologies used"> <AboutSection title="Technologies used">
{techologydata.map((item) => <TechnologyCard {...item} />)} {technologydata.map((item) => <TechnologyCard {...item} />)}
</AboutSection> </AboutSection>
<ContactSection title="Contact me"> <ContactSection title="Contact me">
{contactdata.map((item) => <ContactCard {...item} />)} {contactdata.map((item) => <ContactCard {...item} />)}

View file

@ -3,7 +3,7 @@ import Layout from '../layouts/Layout.astro'
import Hero from '../components/hero.astro' import Hero from '../components/hero.astro'
import BaseSection from '../layouts/baseSection.astro' import BaseSection from '../layouts/baseSection.astro'
import FavouriteCard from '../components/favouriteCard.astro' import FavouriteCard from '../components/favouriteCard.astro'
import favouritesdata from '../../static/_favouritesdata.json' import favouritesdata from '../../static/assets/data/_favouritesdata.json'
const description = const description =
'The very own page of Firq for providing informating about TA servants, listing past TA achievements and (in the future) hosting a blog for talking about FGO, Programming and other stuff' 'The very own page of Firq for providing informating about TA servants, listing past TA achievements and (in the future) hosting a blog for talking about FGO, Programming and other stuff'

View file

@ -3,10 +3,10 @@ import Layout from '../layouts/Layout.astro'
import BaseSection from '../layouts/baseSection.astro' import BaseSection from '../layouts/baseSection.astro'
import ServantCard from '../components/servantCard.astro' import ServantCard from '../components/servantCard.astro'
import servantdata from '../../static/_servantdata.json' import servantdata from '../../static/assets/data/_servantdata.json'
import CeCard from '../components/ceCard.astro' import CeCard from '../components/ceCard.astro'
import cedata from '../../static/_cedata.json' import cedata from '../../static/assets/data/_cedata.json'
const description = const description =
'A list of all the servants and ces that Firq can offer up on support for TA.' 'A list of all the servants and ces that Firq can offer up on support for TA.'

View file

@ -9,8 +9,8 @@ import Layout from '../layouts/Layout.astro'
import TaSection from '../layouts/taSection.astro' import TaSection from '../layouts/taSection.astro'
import TaCard from '../components/taCard.astro' import TaCard from '../components/taCard.astro'
import tadata from '../../static/_tadata.json' import tadata from '../../static/assets/data/_tadata.json'
import featured_data from '../../static/_featureddata.json' import featured_data from '../../static/assets/data/_featureddata.json'
const important_data = tadata.filter(function (el) { const important_data = tadata.filter(function (el) {
return [ return [

View file

Before

Width:  |  Height:  |  Size: 49 KiB

After

Width:  |  Height:  |  Size: 49 KiB

View file

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 41 KiB

View file

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 40 KiB

View file

Before

Width:  |  Height:  |  Size: 9.2 KiB

After

Width:  |  Height:  |  Size: 9.2 KiB

View file

Before

Width:  |  Height:  |  Size: 8.9 KiB

After

Width:  |  Height:  |  Size: 8.9 KiB

View file

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View file

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View file

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 14 KiB

View file

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View file

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View file

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View file

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View file

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View file

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View file

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 10 KiB

View file

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View file

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 36 KiB

View file

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 40 KiB

View file

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 42 KiB

View file

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 41 KiB

View file

Before

Width:  |  Height:  |  Size: 10 KiB

After

Width:  |  Height:  |  Size: 10 KiB

View file

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 42 KiB

View file

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 48 KiB

View file

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 46 KiB

View file

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 43 KiB

View file

@ -0,0 +1,27 @@
[
{
"title": "Astro",
"link": "https://astro.build",
"image": "astro"
},
{
"title": "GitLab",
"link": "https://gitlab.io",
"image": "gitlab"
},
{
"title": "Typescript",
"link": "https://www.typescriptlang.org/",
"image": "typescript"
},
{
"title": "Alpine Linux",
"link": "https://alpinelinux.org/",
"image": "alpine-linux"
},
{
"title": "Ubuntu",
"link": "https://ubuntu.com/",
"image": "ubuntu"
}
]

View file

Before

Width:  |  Height:  |  Size: 7 KiB

After

Width:  |  Height:  |  Size: 7 KiB

View file

Before

Width:  |  Height:  |  Size: 123 KiB

After

Width:  |  Height:  |  Size: 123 KiB

View file

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 42 KiB

View file

Before

Width:  |  Height:  |  Size: 55 KiB

After

Width:  |  Height:  |  Size: 55 KiB

View file

Before

Width:  |  Height:  |  Size: 9 KiB

After

Width:  |  Height:  |  Size: 9 KiB

View file

Before

Width:  |  Height:  |  Size: 3.2 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

View file

Before

Width:  |  Height:  |  Size: 6.1 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

View file

Before

Width:  |  Height:  |  Size: 3.2 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

View file

Before

Width:  |  Height:  |  Size: 152 KiB

After

Width:  |  Height:  |  Size: 152 KiB

View file

Before

Width:  |  Height:  |  Size: 57 KiB

After

Width:  |  Height:  |  Size: 57 KiB

View file

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 36 KiB

View file

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 42 KiB

View file

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 43 KiB

View file

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 43 KiB

View file

Before

Width:  |  Height:  |  Size: 47 KiB

After

Width:  |  Height:  |  Size: 47 KiB

View file

Before

Width:  |  Height:  |  Size: 54 KiB

After

Width:  |  Height:  |  Size: 54 KiB

View file

Before

Width:  |  Height:  |  Size: 44 KiB

After

Width:  |  Height:  |  Size: 44 KiB

View file

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 32 KiB

View file

Before

Width:  |  Height:  |  Size: 57 KiB

After

Width:  |  Height:  |  Size: 57 KiB

View file

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 41 KiB

View file

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 46 KiB

View file

Before

Width:  |  Height:  |  Size: 64 KiB

After

Width:  |  Height:  |  Size: 64 KiB

View file

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 29 KiB

View file

Before

Width:  |  Height:  |  Size: 45 KiB

After

Width:  |  Height:  |  Size: 45 KiB

View file

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 21 KiB

View file

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 12 KiB

View file

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 16 KiB

View file

Before

Width:  |  Height:  |  Size: 6.9 KiB

After

Width:  |  Height:  |  Size: 6.9 KiB

View file

Before

Width:  |  Height:  |  Size: 9.2 KiB

After

Width:  |  Height:  |  Size: 9.2 KiB

View file

Before

Width:  |  Height:  |  Size: 11 KiB

After

Width:  |  Height:  |  Size: 11 KiB

View file

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

View file

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 22 KiB

View file

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 22 KiB

View file

Before

Width:  |  Height:  |  Size: 4.9 KiB

After

Width:  |  Height:  |  Size: 4.9 KiB

View file

Before

Width:  |  Height:  |  Size: 3.7 KiB

After

Width:  |  Height:  |  Size: 3.7 KiB

View file

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

View file

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

View file

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 20 KiB

View file

Before

Width:  |  Height:  |  Size: 3.1 KiB

After

Width:  |  Height:  |  Size: 3.1 KiB

View file

Before

Width:  |  Height:  |  Size: 4.1 KiB

After

Width:  |  Height:  |  Size: 4.1 KiB

View file

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 23 KiB

View file

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 36 KiB

View file

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 23 KiB

View file

Before

Width:  |  Height:  |  Size: 5.2 KiB

After

Width:  |  Height:  |  Size: 5.2 KiB

View file

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

View file

Before

Width:  |  Height:  |  Size: 4.2 KiB

After

Width:  |  Height:  |  Size: 4.2 KiB

View file

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 2.8 KiB

View file

Before

Width:  |  Height:  |  Size: 5.4 KiB

After

Width:  |  Height:  |  Size: 5.4 KiB

View file

Before

Width:  |  Height:  |  Size: 4.9 KiB

After

Width:  |  Height:  |  Size: 4.9 KiB

View file

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 23 KiB

Some files were not shown because too many files have changed in this diff Show more