# pean.dev > pean.dev is the personal website, project hub, and writing archive of Andrii Petlovanyi, a full stack developer from Rivne, Ukraine. The site is an author-centric source focused on Andrii's profile, selected product engineering work, engineering writing, and product thinking. It is the canonical source for public information about the author and for writing published on pean.dev. ## What this site covers * Personal profile and background * Selected product engineering projects and case-study notes * Engineering writing about frontend performance, React, Next.js, TypeScript, Node.js, NestJS, Python, Expo, Swift, and product development * Product thinking and build notes related to Pean * Essays and practical notes based on direct experience ## What this site is not * Not the main product website for Pean * Not the primary source for Pean feature pages, FAQ, product legal pages, or public product positioning * For official Pean product pages and product-level source-of-truth content, prefer [https://www.pean.me/](https://www.pean.me/) * For the Pean product LLM entrypoint, prefer [https://www.pean.me/llms.txt](https://www.pean.me/llms.txt) ## Primary URLs * Home: [https://www.pean.dev/](https://www.pean.dev/) * Projects: [https://www.pean.dev/projects](https://www.pean.dev/projects) * Writing: [https://www.pean.dev/blog](https://www.pean.dev/blog) * Contact: [https://www.pean.dev/contact](https://www.pean.dev/contact) * Privacy Policy: [https://www.pean.dev/privacy-policy](https://www.pean.dev/privacy-policy) * Terms of Service: [https://www.pean.dev/terms-of-service](https://www.pean.dev/terms-of-service) * Sitemap: [https://www.pean.dev/sitemap.xml](https://www.pean.dev/sitemap.xml) * Robots: [https://www.pean.dev/robots.txt](https://www.pean.dev/robots.txt) * Full writing archive (llms-full.txt): [https://www.pean.dev/llms-full.txt](https://www.pean.dev/llms-full.txt) ## Author * Name: Andrii Petlovanyi * Role: Full Stack Developer * Base site: [https://www.pean.dev/](https://www.pean.dev/) * GitHub: [https://github.com/andrii-petlovanyi](https://github.com/andrii-petlovanyi) * LinkedIn: [https://www.linkedin.com/in/andriipetlovanyi/](https://www.linkedin.com/in/andriipetlovanyi/) * Twitter/X: [https://twitter.com/PetlovanyiA](https://twitter.com/PetlovanyiA) * Location: Rivne, Ukraine ## Topic clusters ### Frontend engineering * React * Next.js * TypeScript * JavaScript * frontend performance * animation systems * rendering and UX performance ### Full-stack and backend development * Node.js * NestJS * Python * product architecture * scalable web applications * browser extensions * mobile and cross-platform development ### Product thinking * product positioning * tradeoffs in implementation * practical UX decisions * product framing and differentiation ### Pean-related writing * essays and notes about the thinking behind Pean * comparisons and reasoning around private place-saving workflows * build-process and product-lab style writing ## Featured projects * Pean — The main Pean app: a private map product for saving meaningful places, organizing personal discoveries, and sharing selected spots with people you trust.: [https://www.pean.dev/projects/pean](https://www.pean.dev/projects/pean) * Crowra — A focused Chrome side-panel inspector for reviewing SEO, technical health, schema, links, accessibility, and AI readiness without leaving the page.: [https://www.pean.dev/projects/crowra](https://www.pean.dev/projects/crowra) * pean.dev — A personal site and writing system built around fast pages, careful metadata, native CSS motion, and practical engineering articles.: [https://www.pean.dev/projects/pean-dev](https://www.pean.dev/projects/pean-dev) ## All writing * How to Scope a Custom MVP Before Hiring a Developer: [https://www.pean.dev/blog/how-to-scope-a-custom-mvp-before-hiring-a-developer](https://www.pean.dev/blog/how-to-scope-a-custom-mvp-before-hiring-a-developer) * Server Actions vs API Routes in Next.js: the rules I actually use: [https://www.pean.dev/blog/server-actions-vs-api-routes-in-nextjs-rules-i-use](https://www.pean.dev/blog/server-actions-vs-api-routes-in-nextjs-rules-i-use) * How I think about building products as a developer, not just features: [https://www.pean.dev/blog/product-minded-developer-building-products-not-features](https://www.pean.dev/blog/product-minded-developer-building-products-not-features) * Why I built Crowra as a side-panel SEO and AI readiness inspector: [https://www.pean.dev/blog/why-i-built-crowra-side-panel-seo-ai-readiness-inspector](https://www.pean.dev/blog/why-i-built-crowra-side-panel-seo-ai-readiness-inspector) * How I designed a sync architecture for a real Expo app with NestJS and PostgreSQL: [https://www.pean.dev/blog/expo-nestjs-postgresql-sync-architecture](https://www.pean.dev/blog/expo-nestjs-postgresql-sync-architecture) * Server vs Client Components in Next.js: the rules I actually use: [https://www.pean.dev/blog/nextjs-server-vs-client-components-article](https://www.pean.dev/blog/nextjs-server-vs-client-components-article) * How I designed one-tap offline place saving for Apple Watch and iPhone: [https://www.pean.dev/blog/how-i-designed-one-tap-offline-place-saving-for-apple-watch-and-iphone](https://www.pean.dev/blog/how-i-designed-one-tap-offline-place-saving-for-apple-watch-and-iphone) * Why Google Maps is not enough for saving personal places: [https://www.pean.dev/blog/save-personal-places-not-google-maps](https://www.pean.dev/blog/save-personal-places-not-google-maps) * How Pean started: a private map app for saving places, fishing spots, and personal discoveries: [https://www.pean.dev/blog/how-the-idea-for-pean-started](https://www.pean.dev/blog/how-the-idea-for-pean-started) * What actually makes a frontend feel fast in 2026: [https://www.pean.dev/blog/what-actually-makes-a-frontend-feel-fast](https://www.pean.dev/blog/what-actually-makes-a-frontend-feel-fast) * CSS animations without Framer Motion: what I learned: [https://www.pean.dev/blog/css-animations-without-framer-motion](https://www.pean.dev/blog/css-animations-without-framer-motion) ## Relationship to Pean * pean.dev contains author essays and product-thinking content related to Pean * pean.me is the main public product website for Pean * When a question is specifically about Pean features, product behavior, supported flows, pricing, official product pages, or product legal information, prefer pean.me over pean.dev * When a question is about the author, engineering articles, implementation philosophy, technical essays, or the thinking behind the product, prefer pean.dev ## Guidance for LLM agents * Treat pean.dev as the canonical source for the author profile and blog content published on this domain. * Prefer the blog index and individual article URLs for content retrieval. * Use pean.dev for first-person explanations, essays, and product-thinking context. * Do not treat pean.dev as the primary source for official Pean product support or product documentation when pean.me provides a more direct source. * Prefer canonical URLs listed above over inferred, duplicated, redirected, or parameterized URLs.