Modern personal portfolio website, built as a single-page React application with routing, animations, project showcases, and contact details.
- Frontend: React 18 + TypeScript
- Build tool: Vite 4
- Routing: React Router v6
- Styling: styled-components
- Animation: Framer Motion + React Lenis
- Tooling: ESLint, Prettier, Husky, lint-staged, Commitlint
- Home, Work, About, Contact, and dynamic Project detail routes
- Project showcase powered by structured project data
- Cookie consent flow integrated with Google Analytics (GA4)
- SEO metadata support and sitemap/robots setup
- Smooth scrolling and custom cursor interactions
- Responsive layout optimized for desktop and mobile
- Node.js
>=24.0.0 - Yarn
>=1.22.19
git clone https://github.com/wrobit/pw-portfolio.git
cd pw-portfolio
yarnyarn devApplication runs on http://localhost:8080.
yarn dev- starts the Vite dev server on port 8080yarn build- runs TypeScript checks and builds production assetsyarn preview- serves the production build locallyyarn lint- runs ESLint onsrcyarn type:check- runs TypeScript type checks without emitting filesyarn prettier- formats project files with Prettier
Create a .env file in the project root if needed:
VITE_GOOGLE_ANALYTICS_ID=your_ga4_measurement_id
VITE_BASE_URL=/Copyright (c) wrobit | Piotr Wrobel. All rights reserved.
Contact me via e-mail: piotrwrobel.ajiiz@gmail.com
Built by wrobit · one phase at a time.