better
This commit is contained in:
@@ -317,11 +317,17 @@ export default function PostPage() {
|
||||
</div>
|
||||
<div class="flex max-w-105 flex-wrap justify-center italic md:justify-start md:pl-24">
|
||||
<For each={postData.tags as any[]}>
|
||||
{(tag) => (
|
||||
<div class="group relative m-1 h-fit w-fit rounded-xl bg-purple-600 px-2 py-1 text-sm">
|
||||
<div class="text-white">{tag.value}</div>
|
||||
</div>
|
||||
)}
|
||||
{(tag) => {
|
||||
const tagValue = tag.value;
|
||||
return tagValue ? (
|
||||
<A
|
||||
href={`/blog?include=${encodeURIComponent(tagValue.split("#")[1])}`}
|
||||
class="group bg-rosewater relative m-1 h-fit w-fit rounded-xl px-2 py-1 text-sm transition-all duration-200 hover:brightness-110 active:scale-95"
|
||||
>
|
||||
<div class="text-white">{tagValue}</div>
|
||||
</A>
|
||||
) : null;
|
||||
}}
|
||||
</For>
|
||||
</div>
|
||||
</div>
|
||||
@@ -333,7 +339,7 @@ export default function PostPage() {
|
||||
<Fire
|
||||
height={32}
|
||||
width={32}
|
||||
color="var(--color-text)"
|
||||
color="var(--color-red)"
|
||||
/>
|
||||
</div>
|
||||
<div class="text-text my-auto pt-0.5 pl-2 text-sm">
|
||||
@@ -344,7 +350,14 @@ export default function PostPage() {
|
||||
</div>
|
||||
|
||||
<a href="#comments" class="mx-2">
|
||||
<div class="tooltip flex flex-col">
|
||||
<button
|
||||
onClick={() => {
|
||||
document
|
||||
.getElementById("comments")
|
||||
?.scrollIntoView({ behavior: "smooth" });
|
||||
}}
|
||||
class="tooltip flex flex-col"
|
||||
>
|
||||
<div class="mx-auto hover:brightness-125">
|
||||
<CommentIcon
|
||||
strokeWidth={1}
|
||||
@@ -358,7 +371,7 @@ export default function PostPage() {
|
||||
? "Comment"
|
||||
: "Comments"}
|
||||
</div>
|
||||
</div>
|
||||
</button>
|
||||
</a>
|
||||
|
||||
<div class="mx-2">
|
||||
|
||||
@@ -77,6 +77,7 @@ export default function BlogIndex() {
|
||||
|
||||
const sort = () => searchParams.sort || "newest";
|
||||
const filters = () => searchParams.filter || "";
|
||||
const include = () => searchParams.include || "";
|
||||
|
||||
const data = createAsync(() => getPosts(), { deferStream: true });
|
||||
|
||||
@@ -84,7 +85,7 @@ export default function BlogIndex() {
|
||||
<>
|
||||
<Title>Blog | Michael Freno</Title>
|
||||
|
||||
<div class="mx-auto pt-8 pb-24">
|
||||
<div class="mx-auto py-16 pb-24">
|
||||
<Show when={data()} fallback={<TerminalSplash />}>
|
||||
{(loadedData) => (
|
||||
<>
|
||||
@@ -118,6 +119,7 @@ export default function BlogIndex() {
|
||||
privilegeLevel={loadedData().privilegeLevel}
|
||||
filters={filters()}
|
||||
sort={sort()}
|
||||
include={include()}
|
||||
/>
|
||||
</div>
|
||||
</Show>
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
import { Title, Meta } from "@solidjs/meta";
|
||||
import { A } from "@solidjs/router";
|
||||
import DownloadOnAppStore from "~/components/icons/DownloadOnAppStore";
|
||||
import GitHub from "~/components/icons/GitHub";
|
||||
import LinkedIn from "~/components/icons/LinkedIn";
|
||||
|
||||
export default function DownloadsPage() {
|
||||
const download = (assetName: string) => {
|
||||
@@ -15,12 +13,6 @@ export default function DownloadsPage() {
|
||||
.catch((error) => console.error(error));
|
||||
};
|
||||
|
||||
const joinBetaPrompt = () => {
|
||||
window.alert(
|
||||
"This isn't released yet, if you would like to help test, please go the contact page and include the game and platform you would like to help test in the message. Otherwise the apk is available for direct install. Thanks!"
|
||||
);
|
||||
};
|
||||
|
||||
return (
|
||||
<>
|
||||
<Title>Downloads | Michael Freno</Title>
|
||||
@@ -40,12 +32,12 @@ export default function DownloadsPage() {
|
||||
<br />
|
||||
</div>
|
||||
|
||||
<div class="flex justify-evenly md:mx-[25vw]">
|
||||
<div class="flex justify-evenly">
|
||||
<div class="flex w-1/3 flex-col">
|
||||
<div class="text-center text-lg">Android (apk only)</div>
|
||||
<div class="text-center text-lg">Android</div>
|
||||
<button
|
||||
onClick={() => download("lineage")}
|
||||
class="bg-blue mt-2 rounded-md px-4 py-2 text-base shadow-lg transition-all duration-200 ease-out hover:brightness-125 active:scale-95"
|
||||
class="bg-blue mx-auto mt-2 rounded-md px-4 py-2 text-base shadow-lg transition-all duration-200 ease-out hover:brightness-125 active:scale-95"
|
||||
>
|
||||
Download APK
|
||||
</button>
|
||||
@@ -53,20 +45,6 @@ export default function DownloadsPage() {
|
||||
Note the android version is not well tested, and has performance
|
||||
issues.
|
||||
</div>
|
||||
<div class="rule-around">Or</div>
|
||||
|
||||
<div class="mx-auto italic">(Coming soon)</div>
|
||||
<button
|
||||
onClick={joinBetaPrompt}
|
||||
class="mx-auto transition-all duration-200 ease-out active:scale-95"
|
||||
>
|
||||
<img
|
||||
src="/google-play-badge.png"
|
||||
alt="google-play"
|
||||
width={180}
|
||||
height={60}
|
||||
/>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-col">
|
||||
@@ -88,28 +66,15 @@ export default function DownloadsPage() {
|
||||
(apk and iOS)
|
||||
</div>
|
||||
|
||||
<div class="flex justify-evenly md:mx-[25vw]">
|
||||
<div class="flex justify-evenly">
|
||||
<div class="flex flex-col">
|
||||
<div class="text-center text-lg">Android</div>
|
||||
<button
|
||||
onClick={() => download("shapes-with-abigail")}
|
||||
class="bg-blue mt-2 rounded-md px-4 py-2 text-base shadow-lg transition-all duration-200 ease-out hover:brightness-125 active:scale-95"
|
||||
class="bg-blue mx-auto mt-2 rounded-md px-4 py-2 text-base shadow-lg transition-all duration-200 ease-out hover:brightness-125 active:scale-95"
|
||||
>
|
||||
Download APK
|
||||
</button>
|
||||
<div class="rule-around">Or</div>
|
||||
<div class="mx-auto italic">(Coming soon)</div>
|
||||
<button
|
||||
onClick={joinBetaPrompt}
|
||||
class="transition-all duration-200 ease-out active:scale-95"
|
||||
>
|
||||
<img
|
||||
src="/google-play-badge.png"
|
||||
alt="google-play"
|
||||
width={180}
|
||||
height={60}
|
||||
/>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-col">
|
||||
@@ -142,33 +107,6 @@ export default function DownloadsPage() {
|
||||
Just unzip and drag into 'Applications' folder
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<ul class="icons flex justify-center gap-4 pt-24 pb-6">
|
||||
<li>
|
||||
<A
|
||||
href="https://github.com/MikeFreno/"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
class="shaker border-text inline-block rounded-full border transition-transform hover:scale-110"
|
||||
>
|
||||
<span class="m-auto block p-2">
|
||||
<GitHub height={24} width={24} fill={undefined} />
|
||||
</span>
|
||||
</A>
|
||||
</li>
|
||||
<li>
|
||||
<A
|
||||
href="https://www.linkedin.com/in/michael-freno-176001256/"
|
||||
target="_blank"
|
||||
rel="noreferrer"
|
||||
class="shaker border-text inline-block rounded-full border transition-transform hover:scale-110"
|
||||
>
|
||||
<span class="m-auto block rounded-md p-2">
|
||||
<LinkedIn height={24} width={24} fill={undefined} />
|
||||
</span>
|
||||
</A>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</>
|
||||
|
||||
@@ -11,7 +11,7 @@ export default function Home() {
|
||||
content="Michael Freno - Software Engineer based in Brooklyn, NY"
|
||||
/>
|
||||
|
||||
<main class="flex h-full flex-col gap-8 px-4 text-xl">
|
||||
<main class="flex h-full flex-col gap-8 px-4 py-16 text-xl">
|
||||
<div class="flex-1">
|
||||
<Typewriter speed={30} keepAlive={2000}>
|
||||
<div class="text-4xl">Hey!</div>
|
||||
@@ -153,39 +153,40 @@ export default function Home() {
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<Typewriter speed={120} class="mx-auto max-w-3/4 pt-8 md:max-w-1/2">
|
||||
And if you love the color schemes of this site
|
||||
<div class="mx-auto w-fit">
|
||||
<DarkModeToggle />
|
||||
<div class="flex justify-between">
|
||||
<Typewriter speed={120} class="mx-auto max-w-3/4 pt-8 md:max-w-1/2">
|
||||
And if you love the color schemes of this site
|
||||
<div class="mx-auto w-fit">
|
||||
<DarkModeToggle />
|
||||
</div>
|
||||
(which of course you do), you can see{" "}
|
||||
<a
|
||||
href="https://github.com/mikefreno/dots/blob/master/mac/nvim/lua/colors.lua"
|
||||
class="text-blue hover-underline-animation"
|
||||
>
|
||||
here
|
||||
</a>{" "}
|
||||
- and also see the rest of my various dot files idk. There's a
|
||||
macos and arch linux rice in there if you're into that kinda thing
|
||||
and a home server setup too. Which I will write about soon™.
|
||||
</Typewriter>
|
||||
<div class="flex flex-col items-end justify-center gap-4 pr-4">
|
||||
<Typewriter speed={30} keepAlive={false}>
|
||||
<div>
|
||||
My Collection of
|
||||
<br />
|
||||
By-the-ways:
|
||||
</div>
|
||||
</Typewriter>
|
||||
<Typewriter speed={30} keepAlive={false}>
|
||||
<ul class="list-disc">
|
||||
<li>I use Neovim</li>
|
||||
<li>I use Arch Linux</li>
|
||||
<li>I use Rust</li>
|
||||
</ul>
|
||||
</Typewriter>
|
||||
</div>
|
||||
(which of course you do), you can see{" "}
|
||||
<a
|
||||
href="https://github.com/mikefreno/dots/blob/master/mac/nvim/lua/colors.lua"
|
||||
class="text-blue hover-underline-animation"
|
||||
>
|
||||
here
|
||||
</a>{" "}
|
||||
- and also see the rest of my various dot files idk. There's a macos
|
||||
and arch linux rice in there if you're into that kinda thing and a
|
||||
home server setup too. Which I will write about soon™.
|
||||
</Typewriter>
|
||||
</div>
|
||||
|
||||
<div class="flex flex-col items-end gap-4 pr-4">
|
||||
<Typewriter speed={50} keepAlive={false}>
|
||||
<div>
|
||||
My Collection of
|
||||
<br />
|
||||
By-the-ways:
|
||||
</div>
|
||||
</Typewriter>
|
||||
<Typewriter speed={50} keepAlive={false}>
|
||||
<ul class="list-disc">
|
||||
<li>I use Neovim</li>
|
||||
<li>I use Arch Linux</li>
|
||||
<li>I use Rust</li>
|
||||
</ul>
|
||||
</Typewriter>
|
||||
</div>
|
||||
</div>
|
||||
</main>
|
||||
</>
|
||||
|
||||
Reference in New Issue
Block a user