My personal portfolio website, built to showcase my profile, projects, and professional background β while also serving as a demonstration of clean, fully tested, and production-ready web development.
π You can visit the live portfolio here: antoinezanardi.fr or check out the staging version at antoinezanardi-fr.vercel.app.
- π Features
- π οΈ Tech Stack
- β Testing & Quality
- π Deployment Workflow
- ποΈ Getting Started
- π License
This portfolio is not just a website, but also a playground for professional-grade practices:
- Who I am β personal introduction & contact info.
- Technical skills β languages, frameworks, and tools I master.
- Portfolio β selected projects that Iβm most proud of.
- Professional experiences β my career journey.
- Education & certifications β my academic path and achievements.
- Nuxt 4 with TypeScript
- Vue.js for UI development
- Bootstrap for styling
- Vercel β pre-production deployments
- GCP (Google Cloud Platform) β production hosting
This repository demonstrates how I build reliable software with strong testing strategies:
- Unit tests β Vitest with 100% coverage.
- End-to-End tests β Playwright.
- Mutation tests β Stryker.
You can find the mutation testing report here. - Linting & formatting β ESLint, ActionLint.
- Code quality and coverage β SonarCloud.
- CI/CD pipelines β GitHub Actions.
This project is designed to be robust and handle various scenarios.
To achieve this, it is 100% unit tested with Vitest and has 100% code coverage.
End-to-End tests are implemented using Playwright to ensure the application works as expected from the user's perspective.
The code quality is continuously monitored using SonarCloud.
You can check the code quality by clicking on one of the badges below:
Also, CodeRabbit is used to ensure best practices are followed on each commit.
StrykerJS is used to ensure the code is resilient to mutations.
You can check the mutation testing results by clicking on the badges below:
- Staging β Automatically deployed to Vercel when merging into
develop. - Production β Automatically deployed to GCP when merging into
master.
Clone the repository:
git clone https://github.com/antoinezanardi/antoinezanardi.fr.git
cd antoinezanardi.frInstall dependencies:
pnpm installRun the development server:
pnpm run devBuild for production:
pnpm run build
pnpm run previewRun tests:
# Unit tests
pnpm run test:unit
# End-to-End tests
pnpm run test:cucumber
# Mutation tests
pnpm run test:strykerThis project is licensed under the MIT License. See the LICENSE file for details.