{"repo":"kachkaev/website","free":true,"listed":false,"github":"https://github.com/kachkaev/website","clone":"git clone https://github.com/kachkaev/website.git","description":"Personal mini-website built with Next.js, React, TypeScript, TailwindCSS and Playwright","language":"TypeScript","stars":13,"topics":["nextjs","nextjs-app","nextjs-appdir","react-app","playwright","tailwind","tailwind-applications","tailwindcss","typescript-app","next-intl"],"license":"BSD-3-Clause","category":"scrapers-browser-automation","readme_excerpt":"kachkaev.uk / .ru This repository contains the source code of my personal mini-website. It represents a simple instance of a&nbsp;Next.js app with server components, route handlers and domain-based internationalization. Feel free to explore this repository to learn something new or even to reuse its code in your own projects. Key ingredients - Next.js (App Router with Cache Components) as the architecture framework - React to define the UI (server and client components) - Tailwind CSS to style the UI (including dark/light themes) - next-intl to handle internationalization (ICU plurals, rich text etc.) - Google Analytics to track website usage - Playwright to scrape profile infos from third-party websites - Zod to validate environment variables and scraped data - CSpell , ESLint , Knip , Markdownlint , Prettier and TypeScript to statically check and autocorrect source files - Husky and lint-staged to format files before they are committed - pnpm to manage dependencies - Renovate to keep dependencies up to date - Docker to generate a deployable production artifact - Kubernetes to run the app in production - GitHub Actions to run CI/CD pipelines Project structure Because each locale is served from its own domain (see Playing with i18n), the whole app lives under a single [locale] segment, which proxy.ts picks based on the request host. Pages and route handlers are kept next to the components and helpers they use: - [ app/[locale]/layout.tsx ](app/[locale]/layout.tsx) — the shell","default_branch":null,"files":null,"tree":[],"storefront":"/r/kachkaev","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/kachkaev/website/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}