Init NextJS #4

Merged
imnyang merged 11 commits from nextjs into main 2025-10-23 20:20:18 +09:00

11 commits

Author SHA1 Message Date
c90543f12f chore(deps): upgrade Next/React ecosystem, sync lockfile, and add CI/docker configs
- bump next to 16.0.0, react/react-dom to 19.2.0 and update related deps (react-day-picker, react-hook-form, zod, lightningcss, scheduler, typescript, @types/*, tailwind tooling, etc.) in package.json and bun.lock
- add overrides for @types/react and @types/react-dom
- remove --turbopack flags from package.json scripts and configure turbopack root in next.config.ts
- tighten tsconfig (jsx -> react-jsx, include extra .next dev types, formatting)
- add GitHub Actions workflow for Docker build/push (.github/workflows/main.yml)
- add Dockerfile and compose.yml for building/running containerized app
2025-10-23 20:17:55 +09:00
9e2577ea36 좀 깔끔해짐 2025-10-23 19:37:08 +09:00
9a7c07b3a8 refactor(timeline): remove obsolete server action createPost (route.ts) 2025-10-22 22:37:26 +09:00
ab8c576c6c refactor(timeline): replace client-side hash navigation with server action createPost that redirects to /#timeline 2025-10-22 22:35:55 +09:00
96a43a9a3c feat(ui/ux): add timeline, hero, and NeoFetch components + data/hooks
- Add timeline route helper
  - src/app/timeline/route.ts
  - simple helper to navigate to #timeline

- Add NeoFetch component (client)
  - src/components/NeoFetch.tsx
  - Displays avatar iframe, uptime calculation, experience count, WakaTime stats, terminal/ip, locale and colour palette
  - Uses custom hooks useIpData and useWakaTimeData, and events data

- Add Top (hero) component (client)
  - src/components/Top.tsx
  - Full-screen hero with randomized background, parallax on mouse, device orientation & motion handlers, requestPermission trigger on image click
  - Includes Sidebar import and optimized Image usage

- Add Timeline UI component (client)
  - src/components/timeline.tsx
  - Year selector + filtered event list with links and icons
  - Handles initial selection and rendering grouped by year

- Add reusable Timeline primitives (client)
  - src/components/ui/timeline.tsx
  - Timeline context and composable parts: Timeline, TimelineItem, Indicator, Separator, Date, Title, Content, Header
  - Orientation support and controlled/uncontrolled API

- Add data & hooks
  - src/lib/events.ts
    - Seeded events array (education/awards/conference entries) used by timeline and NeoFetch
  - src/hooks/use-ip-data.ts
    - Fetches terminal/ip info from https://api.imnya.ng/ip
  - src/hooks/use-wakatime-data.ts
    - Fetches WakaTime summary from https://api.imnya.ng/wakatime

Notes:
- All new components are client-side ("use client")
- Adds device motion/orientation listeners with cleanup
- Provides basic error handling for network hooks
- Improves homepage/UX with interactive hero and timeline data visualization
2025-10-22 22:33:40 +09:00
2e1f6a7ec4 Enhance About section with title and description 2025-10-09 21:19:31 +09:00
356c9e93f2 이건 뭐야 2025-10-09 01:45:39 +09:00
e4de43b26f 아니 계속 커밋 푸쉬가 아니라 커밋 뭐시기를 누르는데 개빡침 2025-10-09 01:45:31 +09:00
fbd8fd0c6a Init shadcn, Make Sidebar 2025-10-09 01:43:14 +09:00
05fe03f7de Add shadcn and imnyang's color palette 2025-09-28 15:50:16 +09:00
7fee80308c Init NextJS 2025-09-28 14:52:22 +09:00