You can access it online at www.igorstar.com.
Personal blog and portfolio. Feel free to use it as a template.
- 🌿 Static site based on NextJS
- 🎞 Contentful CMS integrated
- ⚙️ AWS Amplify deployment ready (static export)
- 🤩 Page Transitions with
framer-motion - 💅
styled-components - 💯 Optimized with Google Lighthouse (including test)
- 🔥 Code Splitting of CSS and JS (component based)
- 🔪 Inline SVG support
- ⚙️ One config file for site-wide settings
- 💙 Most social + meta tags in one component
- 🖼 All favicons generated, only one icon file needed
- 🌐 Offline support
- 📄 Manifest support
- 🗺 Sitemap autogenerated
- 😎 Prettier for code style
- 👨🏫 ESLint (based on
next/core-web-vitals) - 🌅 Responsive gallery with
react-photo-album - 🤖 Agent skills for usage, best practices and AWS Amplify workflows
Do you have suggestions or feedback? Open an issue!
# Clone repo
git clone https://github.com/igor-starostenko/igorstar.git
cd igorstar
# If you need to enable yarn
npm install -g corepack
corepack enable
yarn install
# To develop
yarn dev
# To build (output to out/ directory)
yarn build
# To preview production build locally
yarn start
# To test
yarn test
# To run Lighthouse tests (customizable via `SITE_URL` env variable)
yarn test:lighthouse
# Default: uses `siteUrl` from [`site-config.cjs`](./site-config.cjs)
# Override: `SITE_URL=http://localhost:3000 yarn test:lighthouse`
# To verify code style
yarn lint
# To format JS (precommit)
yarn format
# To generate favicons (included in `build`)
yarn build:favicons
# To generate sitemap (included in `build`)
yarn build:sitemap
# To backup contentful content by content type
yarn contentful:backup
# To export all data from contentful
yarn contentful:exportSet these environment variables in a .env file at the project root:
CONTENTFUL_SPACE_ID=your_space_id
CONTENTFUL_ACCESS_TOKEN=your_delivery_tokenCONTENTFUL_SPACE_ID: Your Contentful space ID (Settings → Spaces)CONTENTFUL_ACCESS_TOKEN: Delivery token for reading content (Settings → API keys → Content delivery tokens)
To get your credentials:
- Log in to Contentful
- Select your space
- Go to Settings → API keys
- Create or copy an existing Content delivery token (type: read-only)
- Copy your Space ID from Settings → General settings
Note: The project uses
CONTENTFUL_ACCESS_TOKENfor the delivery token only. No PAT (Personal Access Token) is required.
- Igor Starostenko (contact@igorstar.com)
