From 03c2871cbd6ecb9fc4eb178635d2cb01409ff389 Mon Sep 17 00:00:00 2001 From: imnyang Date: Mon, 20 Jan 2025 18:19:41 +0900 Subject: [PATCH] asdf --- app/components/README.tsx | 42 +++++++++++++ app/components/TimeCounter.tsx | 83 -------------------------- app/components/TimelineComponents.tsx | 1 + app/components/Top.tsx | 20 +++++++ app/routes/home.tsx | 81 ++++++++++++++++++------- app/routes/timeline.tsx | 41 ++----------- bun.lockb | Bin 145958 -> 186009 bytes package.json | 7 +++ 8 files changed, 134 insertions(+), 141 deletions(-) create mode 100644 app/components/README.tsx delete mode 100644 app/components/TimeCounter.tsx create mode 100644 app/components/Top.tsx diff --git a/app/components/README.tsx b/app/components/README.tsx new file mode 100644 index 0000000..12b365e --- /dev/null +++ b/app/components/README.tsx @@ -0,0 +1,42 @@ +import React from 'react'; +import { remark } from 'remark'; +import html from 'remark-html'; +import rehypeStringify from 'rehype-stringify' +import remarkFrontmatter from 'remark-frontmatter' +import remarkGfm from 'remark-gfm' +import remarkParse from 'remark-parse' +import remarkRehype from 'remark-rehype' + +const readmeUrl = 'https://raw.githubusercontent.com/imnyang/imnyang/refs/heads/main/README.md'; + +const markdownToHtml = async (markdown: string) => { + const result = await remark() + .use(remarkParse) + .use(remarkFrontmatter) + .use(remarkGfm) + .use(remarkRehype) + .use(rehypeStringify) + .use(html) + .process(markdown); + return result.toString(); +}; + +const README = () => { + const [content, setContent] = React.useState(''); + + React.useEffect(() => { + const fetchAndConvertMarkdown = async () => { + const response = await fetch(readmeUrl); + const markdown = await response.text(); + const htmlContent = await markdownToHtml(markdown); + setContent(htmlContent); + }; + fetchAndConvertMarkdown(); + }, []); + + return ( +
+ ); +}; + +export default README; diff --git a/app/components/TimeCounter.tsx b/app/components/TimeCounter.tsx deleted file mode 100644 index 16dbf1a..0000000 --- a/app/components/TimeCounter.tsx +++ /dev/null @@ -1,83 +0,0 @@ -/* - All rights reserved to NY0510 (As Known As NY64), 2024 - https://github.com/NY0510/ny64.kr/blob/main/src/components/ProfileSection.tsx -*/ - -import { useState, useEffect } from 'react'; -import { useMotionValue, motion, useMotionTemplate } from "framer-motion"; - -const birthday = new Date('2021-11-14'); - -export function TimeCounter() { - const mouseX = useMotionValue(0); - const mouseY = useMotionValue(0); - - const background = useMotionTemplate`radial-gradient(200px circle at ${mouseX}px ${mouseY}px, rgba(38, 38, 38, 0.4), transparent 80%)`; - - const [afterBirth, setAfterBirth] = useState(''); - const [tenThousands, setTenThousands] = useState(0); - const [animate, setAnimate] = useState(false); - - - useEffect(() => { - const interval = setInterval(() => { - const elapsed = new Date().getTime() - birthday.getTime(); - setAfterBirth(elapsed.toLocaleString()); - - const newTenThousands = Math.floor(elapsed / 10000); - if (newTenThousands !== tenThousands) { - setTenThousands(newTenThousands); - setAnimate(true); - setTimeout(() => setAnimate(false), 200); - } - }, 1); - - return () => clearInterval(interval); - }, [tenThousands]); - - return ( -
{ - const { left, top } = e.currentTarget.getBoundingClientRect(); - - mouseX.set(e.clientX - left); - mouseY.set(e.clientY - top); - }} - className="group relative w-full max-w-[350px] overflow-hidden rounded-xl bg-neutral-950" - title='암냥으로 활동한지' - > -
- -
-
- 암냥 ~ -

- {afterBirth} ms -

-
-
-
- ); - - /* - return ( -
- - - - - - 암냥으로 활동한지 - - {afterBirth} ms - - -
- );*/ - } - \ No newline at end of file diff --git a/app/components/TimelineComponents.tsx b/app/components/TimelineComponents.tsx index 27dbc35..56fa982 100644 --- a/app/components/TimelineComponents.tsx +++ b/app/components/TimelineComponents.tsx @@ -182,6 +182,7 @@ export default function TimelineComponents() { {event.description} )}
+

{event.category}

))} diff --git a/app/components/Top.tsx b/app/components/Top.tsx new file mode 100644 index 0000000..22c8a63 --- /dev/null +++ b/app/components/Top.tsx @@ -0,0 +1,20 @@ +export default function Top() { + return ( +
+ imnyang +
+

암냥

+

@imnyang

+
+
+ ); +} \ No newline at end of file diff --git a/app/routes/home.tsx b/app/routes/home.tsx index 20f0744..6a03570 100644 --- a/app/routes/home.tsx +++ b/app/routes/home.tsx @@ -1,9 +1,11 @@ import type { Route } from "./+types/home"; -import React, { useState } from "react"; +import React, { useEffect, useState } from "react"; import { Link, useNavigate } from "react-router"; import { AnimatedTabs } from "~/components/AnimatedTabs"; -import { TimeCounter } from "~/components/TimeCounter"; +import Readme from "~/components/README"; +import TimelineComponents from "~/components/TimelineComponents"; +import Top from "~/components/Top"; export function meta({}: Route.MetaArgs) { return [ @@ -13,16 +15,24 @@ export function meta({}: Route.MetaArgs) { } export default function Home() { + const navigate = useNavigate(); const [activeTab, setActiveTab] = useState("Home"); const ref = React.useRef(null); - const navigate = useNavigate(); - React.useEffect(() => { - if (activeTab === "Timeline") { - navigate("/timeline"); + useEffect(() => { + if (activeTab === "Home") { + navigate("/"); + } else if (activeTab === "Timeline") { + navigate("/#timeline"); } }, [activeTab, navigate]); + useEffect(() => { + if (window.location.hash === "#timeline") { + setActiveTab("Timeline"); + } + }, []); + return (
@@ -33,23 +43,48 @@ export default function Home() {
-
- imnyang -
-

암냥

-

@imnyang

-
- -

{`Tab: ${activeTab}`}

+ + {/* ActivatedTab */} +
+ {activeTab === "Home" && ( +
+

+ {/* Read README.md with remark */} +
+

+ + 암냥 & 남냥 + +

+
+

+ + + + + +

+

+

Normal Student Developer

+ + Team. Sqlare + +
+ )} + {activeTab === "Timeline" && ( +
+ +
+ )}
); diff --git a/app/routes/timeline.tsx b/app/routes/timeline.tsx index 9e2479d..f40e2d5 100644 --- a/app/routes/timeline.tsx +++ b/app/routes/timeline.tsx @@ -1,11 +1,6 @@ -import type { Route } from "./+types/home"; -import React, { useState } from "react"; -import { Link, useNavigate } from "react-router"; - -import { AnimatedTabs } from "~/components/AnimatedTabs"; -import { TimeCounter } from "~/components/TimeCounter"; - -import TimelineComponents from "~/components/TimelineComponents"; +import type { Route } from "./+types/timeline"; +import React from "react"; +import { useNavigate } from "react-router"; export function meta({}: Route.MetaArgs) { return [ @@ -15,37 +10,13 @@ export function meta({}: Route.MetaArgs) { } export default function Timeline() { - const [activeTab, setActiveTab] = useState("Timeline"); - const ref = React.useRef(null); const navigate = useNavigate(); React.useEffect(() => { - if (activeTab === "Home") { - navigate("/"); - } - }, [activeTab, navigate]); + navigate("/#timeline"); + }, [navigate]); return ( -
-
- 💕 -
- -
-
-
- imnyang -
-

암냥

-

@imnyang

-
- -
-

Timeline

-
- -
- -
+

Redirecting

); } diff --git a/bun.lockb b/bun.lockb index 85b74d9e8b60cb4b9fe12d35b664ce49c31ca9b7..083ccc315c85f6fda15262c55d5071a253db27da 100755 GIT binary patch delta 53055 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 KYdm877Y+bjc8LuD delta 27908 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 O322IC`}8^{rU(ErLgqdI diff --git a/package.json b/package.json index d4dba4d..4e2331f 100644 --- a/package.json +++ b/package.json @@ -18,6 +18,13 @@ "react": "^19.0.0", "react-dom": "^19.0.0", "react-router": "^7.1.1", + "rehype-stringify": "^10.0.1", + "remark": "^15.0.1", + "remark-frontmatter": "^5.0.0", + "remark-gfm": "^4.0.0", + "remark-html": "^16.0.1", + "remark-parse": "^11.0.0", + "remark-rehype": "^11.1.1", "tailwind-merge": "^2.6.0" }, "devDependencies": {