Wowie what a gay little website for my gay little self aria.coffee
3
fork

Configure Feed

Select the types of activity you want to include in your feed.

style: Try biome

+180 -152
+30
biome.json
··· 1 + { 2 + "$schema": "https://biomejs.dev/schemas/1.9.4/schema.json", 3 + "vcs": { 4 + "enabled": false, 5 + "clientKind": "git", 6 + "useIgnoreFile": false 7 + }, 8 + "files": { 9 + "ignoreUnknown": false, 10 + "ignore": [] 11 + }, 12 + "formatter": { 13 + "enabled": true, 14 + "indentStyle": "tab" 15 + }, 16 + "organizeImports": { 17 + "enabled": true 18 + }, 19 + "linter": { 20 + "enabled": true, 21 + "rules": { 22 + "recommended": true 23 + } 24 + }, 25 + "javascript": { 26 + "formatter": { 27 + "quoteStyle": "double" 28 + } 29 + } 30 + }
+1 -1
src/components/EmbedCode.astro
··· 1 1 --- 2 2 const description = "Just my little website do be gay and do crime on~"; 3 3 const embedImage = "https://aria.coffee/static/img/sites/avatar.png"; 4 - const embedColour = "#380A84" 4 + const embedColour = "#380A84"; 5 5 6 6 const { pageTitle } = Astro.props; 7 7 ---
+17 -14
src/components/Greeting.jsx
··· 1 - import { useState } from 'preact/hooks'; 1 + import { useState } from "preact/hooks"; 2 2 3 - export default function Greeting({messages}) { 3 + export default function Greeting({ messages }) { 4 + const randomMessage = () => 5 + messages[Math.floor(Math.random() * messages.length)]; 4 6 5 - const randomMessage = () => messages[(Math.floor(Math.random() * messages.length))]; 7 + const [greeting, setGreeting] = useState(messages[0]); 6 8 7 - const [greeting, setGreeting] = useState(messages[0]); 8 - 9 - return ( 10 - <div> 11 - <h3>{greeting}! Thank you for visiting!</h3> 12 - <button class="greetButton px-2 rounded-xl" onClick={() => setGreeting(randomMessage())}> 13 - New Greeting 14 - </button> 15 - </div> 16 - ); 17 - } 9 + return ( 10 + <div> 11 + <h3>{greeting}! Thank you for visiting!</h3> 12 + <button 13 + class="greetButton px-2 rounded-xl" 14 + onClick={() => setGreeting(randomMessage())} 15 + > 16 + New Greeting 17 + </button> 18 + </div> 19 + ); 20 + }
+9 -9
src/content.config.ts
··· 4 4 import { z, defineCollection } from "astro:content"; 5 5 // Define a `loader` and `schema` for each collection 6 6 const blog = defineCollection({ 7 - loader: glob({ pattern: '**/[^_]*.md', base: "./src/blog" }), 8 - schema: z.object({ 9 - title: z.string(), 10 - pubDate: z.date(), 11 - description: z.string(), 12 - author: z.string(), 13 - tags: z.array(z.string()) 14 - }) 7 + loader: glob({ pattern: "**/[^_]*.md", base: "./src/blog" }), 8 + schema: z.object({ 9 + title: z.string(), 10 + pubDate: z.date(), 11 + description: z.string(), 12 + author: z.string(), 13 + tags: z.array(z.string()), 14 + }), 15 15 }); 16 16 // Export a single `collections` object to register your collection(s) 17 - export const collections = { blog }; 17 + export const collections = { blog };
+1 -1
src/layouts/BaseLayout.astro
··· 1 1 --- 2 - import NavHeader from "../components/NavHeader.astro" 2 + import NavHeader from "../components/NavHeader.astro"; 3 3 import Favicon from "../components/Favicon.astro"; 4 4 import Footer from "../components/Footer.astro"; 5 5 import "../styles/aria.css";
+14 -14
src/pages/about.astro
··· 7 7 const pageTitle = "About Aria"; 8 8 9 9 const identity = { 10 - firstName: "Aria", 11 - country: "Australia", 12 - occupation: "Phone & Computer Repair Tech", 13 - hobbies: ["gaming", "software/game development", "3D printing"], 10 + firstName: "Aria", 11 + country: "Australia", 12 + occupation: "Phone & Computer Repair Tech", 13 + hobbies: ["gaming", "software/game development", "3D printing"], 14 14 }; 15 15 16 16 const skills = ["Rust", "GDScript", "FFMPEG"]; 17 17 18 18 const currentSystem = { 19 - name: "I/O", 20 - operatingSystem: "EndeavourOS", 21 - host: "X570 Phantom Gaming 4", 22 - shell: "zsh", 23 - mainDisplay: "Gigabyte M27U", 24 - mainDisplayRtings: "https://www.rtings.com/monitor/reviews/gigabyte/m27u", 25 - cpu: "AMD Ryzen 9 5900X", 26 - gpu: "AMD Radeon RX 7800 XT", 27 - ram: "48GB", 28 - localIP: "192.168.20.2", 19 + name: "I/O", 20 + operatingSystem: "EndeavourOS", 21 + host: "X570 Phantom Gaming 4", 22 + shell: "zsh", 23 + mainDisplay: "Gigabyte M27U", 24 + mainDisplayRtings: "https://www.rtings.com/monitor/reviews/gigabyte/m27u", 25 + cpu: "AMD Ryzen 9 5900X", 26 + gpu: "AMD Radeon RX 7800 XT", 27 + ram: "48GB", 28 + localIP: "192.168.20.2", 29 29 }; 30 30 31 31 const skillColor = "#F5A8B7";
+7 -6
src/pages/posts/[...slug].astro
··· 1 1 --- 2 - import { getCollection, render } from 'astro:content'; 3 - import MarkdownPostLayout from '../../layouts/MarkdownPostLayout.astro'; 2 + import { getCollection, render } from "astro:content"; 3 + import MarkdownPostLayout from "../../layouts/MarkdownPostLayout.astro"; 4 4 5 5 export async function getStaticPaths() { 6 - const posts = await getCollection('blog'); 7 - return posts.map(post => ({ 8 - params: { slug: post.id }, props: { post }, 9 - })); 6 + const posts = await getCollection("blog"); 7 + return posts.map((post) => ({ 8 + params: { slug: post.id }, 9 + props: { post }, 10 + })); 10 11 } 11 12 12 13 const { post } = Astro.props;
+14 -14
src/pages/rss.xml.js
··· 1 - import rss from '@astrojs/rss'; 1 + import rss from "@astrojs/rss"; 2 2 import { getCollection } from "astro:content"; 3 3 4 4 export async function GET(context) { 5 - const posts = await getCollection("blog"); 6 - return rss({ 7 - title: "Aria | Blog", 8 - description: "Just me being a silly little thing", 9 - site: context.site, 10 - items: posts.map((post) => ({ 11 - title: post.data.title, 12 - pubDate: post.data.pubDate, 13 - description: post.data.description, 14 - link: `/posts/${post.id}/`, 15 - })), 16 - customData: `<language>en-us</language>`, 17 - }); 5 + const posts = await getCollection("blog"); 6 + return rss({ 7 + title: "Aria | Blog", 8 + description: "Just me being a silly little thing", 9 + site: context.site, 10 + items: posts.map((post) => ({ 11 + title: post.data.title, 12 + pubDate: post.data.pubDate, 13 + description: post.data.description, 14 + link: `/posts/${post.id}/`, 15 + })), 16 + customData: `<language>en-us</language>`, 17 + }); 18 18 }
+13 -13
src/pages/tags/[tag].astro
··· 6 6 import Partition from "../../components/Partition.astro"; 7 7 8 8 export async function getStaticPaths() { 9 - const allPosts = await getCollection("blog"); 9 + const allPosts = await getCollection("blog"); 10 10 11 - const uniqueTags = [ 12 - ...new Set(allPosts.map((post: any) => post.data.tags).flat()), 13 - ]; 11 + const uniqueTags = [ 12 + ...new Set(allPosts.map((post: any) => post.data.tags).flat()), 13 + ]; 14 14 15 - return uniqueTags.map((tag) => { 16 - const filteredPosts = allPosts.filter((post: any) => 17 - post.data.tags.includes(tag) 18 - ); 19 - return { 20 - params: { tag }, 21 - props: { posts: filteredPosts }, 22 - }; 23 - }); 15 + return uniqueTags.map((tag) => { 16 + const filteredPosts = allPosts.filter((post: any) => 17 + post.data.tags.includes(tag), 18 + ); 19 + return { 20 + params: { tag }, 21 + props: { posts: filteredPosts }, 22 + }; 23 + }); 24 24 } 25 25 26 26 const { tag } = Astro.params;
+1 -3
src/pages/tags/index.astro
··· 4 4 import BaseLayout from "../../layouts/BaseLayout.astro"; 5 5 import Partition from "../../components/Partition.astro"; 6 6 const allPosts = await getCollection("blog"); 7 - const tags = [ 8 - ...new Set(allPosts.map((post: any) => post.data.tags).flat()), 9 - ]; 7 + const tags = [...new Set(allPosts.map((post: any) => post.data.tags).flat())]; 10 8 const pageTitle = "Tag Index"; 11 9 --- 12 10
+73 -77
src/styles/aria.css
··· 1 1 @font-face { 2 - font-family: "Noto Sans"; 3 - src: 4 - local("Noto Sans"), 5 - url("/static/fonts/NotoSans-Regular.ttf") format("truetype"); 2 + font-family: "Noto Sans"; 3 + src: local("Noto Sans"), url("/static/fonts/NotoSans-Regular.ttf") 4 + format("truetype"); 6 5 } 7 6 8 7 @font-face { 9 - font-family: "Comic Shanns"; 10 - src: 11 - local("Comic Shanns Regular"), 12 - url("/static/fonts/comic shanns.otf") format("opentype"), 13 - url("/static/fonts/comic shanns 2.ttf") format("truetype"); 8 + font-family: "Comic Shanns"; 9 + src: local("Comic Shanns Regular"), url("/static/fonts/comic shanns.otf") 10 + format("opentype"), url("/static/fonts/comic shanns 2.ttf") 11 + format("truetype"); 14 12 } 15 13 16 14 @font-face { 17 - font-family: "Comic Mono"; 18 - src: 19 - local("Comic Mono"), 20 - url("/static/fonts/ComicMono.ttf") format("ttf"), 21 - url("https://dtinth.github.io/comic-mono-font/ComicMono.ttf") format("truetype") 15 + font-family: "Comic Mono"; 16 + src: local("Comic Mono"), url("/static/fonts/ComicMono.ttf") format("ttf"), 17 + url("https://dtinth.github.io/comic-mono-font/ComicMono.ttf") 18 + format("truetype"); 22 19 } 23 20 24 21 :root { 25 - --first-colour: #16111a; 26 - --second-colour: #21042c; 27 - --third-colour: #2E236C; 28 - --fourth-colour: #F5EFFF; 22 + --first-colour: #16111a; 23 + --second-colour: #21042c; 24 + --third-colour: #2e236c; 25 + --fourth-colour: #f5efff; 29 26 30 - --border: #27272a; 27 + --border: #27272a; 31 28 } 32 29 33 30 html { 34 - background-color: var(--first-colour); 35 - font-family: "Comic Mono", "Comic Shanns", "Comic Sans", "Comic Sans MS", "Chalkboard", "ChalkboardSE-Regular", "Noto Sans", sans-serif; 36 - font-size: larger; 37 - display: flex; 38 - flex-direction: column; 39 - align-items: center; 40 - justify-content: center; 31 + background-color: var(--first-colour); 32 + font-family: "Comic Mono", "Comic Shanns", "Comic Sans", "Comic Sans MS", 33 + "Chalkboard", "ChalkboardSE-Regular", "Noto Sans", sans-serif; 34 + font-size: larger; 35 + display: flex; 36 + flex-direction: column; 37 + align-items: center; 38 + justify-content: center; 41 39 } 42 40 43 41 body { 44 - /* margin: 0 auto; */ 45 - /* width: 100%; */ 46 - /* max-width: 40em; */ 47 - padding: 2em; 48 - /* padding: 1rem; */ 49 - /* line-height: 1.5; */ 50 - color: var(--fourth-colour); 42 + /* margin: 0 auto; */ 43 + /* width: 100%; */ 44 + /* max-width: 40em; */ 45 + padding: 2em; 46 + /* padding: 1rem; */ 47 + /* line-height: 1.5; */ 48 + color: var(--fourth-colour); 51 49 } 52 50 53 51 @media screen and (max-width: 899px) { 54 - body { 55 - width: 95%; 56 - padding-top: 0.5em; 57 - padding-left: 0; 58 - padding-right: 0; 59 - flex-wrap: wrap; 60 - } 52 + body { 53 + width: 95%; 54 + padding-top: 0.5em; 55 + padding-left: 0; 56 + padding-right: 0; 57 + flex-wrap: wrap; 58 + } 61 59 } 62 60 63 - 64 61 a { 65 - color: var(--fourth-colour); 66 - text-decoration: underline 2px; 67 - text-underline-offset: 2px; 68 - text-decoration-color: #00000000; 62 + color: var(--fourth-colour); 63 + text-decoration: underline 2px; 64 + text-underline-offset: 2px; 65 + text-decoration-color: #00000000; 69 66 } 70 - 71 67 72 68 a:hover { 73 - text-decoration-color: #fff; 74 - transition: text-decoration-color 0.25s; 69 + text-decoration-color: #fff; 70 + transition: text-decoration-color 0.25s; 75 71 } 76 72 77 73 /* h1 { */ 78 - /* margin: 1rem 0; */ 79 - /* font-size: 2.5rem; */ 74 + /* margin: 1rem 0; */ 75 + /* font-size: 2.5rem; */ 80 76 /* } */ 81 77 82 78 /* footer { */ 83 - /* display: flex; */ 84 - /* gap: 1rem; */ 85 - /* margin-top: 2rem; */ 86 - /* background-color: var(--third-colour); */ 87 - /* border-radius: 4px; */ 88 - /* padding: 0.5rem; */ 79 + /* display: flex; */ 80 + /* gap: 1rem; */ 81 + /* margin-top: 2rem; */ 82 + /* background-color: var(--third-colour); */ 83 + /* border-radius: 4px; */ 84 + /* padding: 0.5rem; */ 89 85 /* } */ 90 86 91 87 .badge { 92 - image-rendering: pixelated; 93 - min-width: 88px; 94 - min-height: 31px; 95 - padding: 4px; 88 + image-rendering: pixelated; 89 + min-width: 88px; 90 + min-height: 31px; 91 + padding: 4px; 96 92 } 97 93 98 94 .linked-buttons { 99 - outline-style: dashed; 100 - width:fit-content; 101 - display: inline-flex; 95 + outline-style: dashed; 96 + width: fit-content; 97 + display: inline-flex; 102 98 } 103 99 104 100 .container { 105 - background-color: var(--second-colour); 106 - border-radius: 8px; 107 - padding: 16px; 108 - display:flex; 109 - flex-direction: column; 110 - /* flex: content; */ 101 + background-color: var(--second-colour); 102 + border-radius: 8px; 103 + padding: 16px; 104 + display: flex; 105 + flex-direction: column; 106 + /* flex: content; */ 111 107 } 112 108 113 109 .greetButton { 114 - color: var(--fourth-colour); 115 - background-color: var(--second-colour); 116 - border-color: var(--second-colour); 117 - transition-duration: 0.4s; 110 + color: var(--fourth-colour); 111 + background-color: var(--second-colour); 112 + border-color: var(--second-colour); 113 + transition-duration: 0.4s; 118 114 } 119 115 120 116 .greetButton:hover { 121 - color: var(--third-colour); 122 - background-color: var(--fourth-colour); 123 - border-color: var(--fourth-colour); 124 - } 117 + color: var(--third-colour); 118 + background-color: var(--fourth-colour); 119 + border-color: var(--fourth-colour); 120 + }