This portfolio website showcases my work, skills, and projects, serving as a professional hub for potential employers, collaborators, and clients.
- Project Gallery: Displays selected projects with descriptions, technologies used, and links to demos and source code.
- Contact Form: Allows visitors to contact me directly.
- Theming: Offers four themes to enhance the visual appeal and user experience.
- Internationalization: Supports multiple languages (French and English) to reach a broader audience.
Built with modern web technologies for performance and maintainability:
- Frontend: Developed with Angular for a dynamic user interface.
- Testing: Uses Jest for reliable and high-quality code.
- Code Quality: SonarQube integration to maintain code standards.
- Hosting: Deployed on Firebase Hosting.
- CI/CD: Utilizes GitHub Actions for continuous integration and deployment.
Prerequisites
nvm
yarn
First, use the correct version of node (version 22) :
nvm use
To install the necessary dependencies, run the following command:
yarn
To run the application, use the following command:
yarn start
The application will be running on http://localhost:4200
.
To run tests, use the following command:
yarn run test
or to run tests with coverage, use the following command:
yarn run test:coverage
Prerequisites
docker
docker-compose
To launch sonarqube, use the following command:
docker-compose -f docker-compose.sonar.yml up -d
The application will be running on http://localhost:9000
.
Create a .env
file with the same content as .env.example
file and replace your_token
with your sonarqube token created from the Security
tab in the User
settings
Then scan the project using the following command:
./sonar.sh
This will scan the project and update the quality gate badge.
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
© Romain Frezier - 2024