Skip to content

Dorianspeed/website

Repository files navigation

Personal Website

This is a personal website to showcase my resume, my missions and my projects. There is also a contact form to get in touch.

This project is a monorepo, it uses Turborepo to handle it.

Table of Contents

Project Overview

This website serves as a portfolio to highlight my professional work and achievements. It includes:

  • A homepage with some funny quotes.
  • A resume section with my professional experiences, courses & certifications.
  • A missions section.
  • A projects section.
  • A contact form to get in touch.

Requirements

Recommended VS Code Extensions

Project Architecture

/.github                    # GitHub workflows
/.husky                     # Pre-commit hooks
/.yarn                      # Yarn releases
/apps
├── /web                    # Personal website project
│   ├── /public             # Static images
│   └── /src
│       ├── /app            # Routing
│       ├── /assets         # SVG icons
│       ├── /components     # Reusable components
│       ├── /constants      # Variables
│       ├── /hooks          # Custom hooks
│       ├── /styles         # Globals CSS
│       ├── /types          # Globals types
│       └── /utils          # Utils functions
/packages
├── /eslint-config          # Shared ESLint config
├── /make-coverage-badges   # Coverage badges script
│   └── /src                # Globals types
│       ├── /constants      # Variables
│       ├── /types          # Globals types
│       └── /utils          # Utils functions
├── /transactional          # Transactional emails
│   ├── /common             # Reusable components
│   ├── /constants          # Variables
│   ├── /emails             # Emails components
│   └── /types              # Globals types
└── /typescript-config      # Shared TSConfig

Getting Started

  1. Clone the repository:
git clone https://github.com/Dorianspeed/website.git
cd website
  1. Install dependencies:
yarn install
  1. Create .env.local file in /apps/web respecting the .env.example

  2. Start the development server:

yarn dev
  1. Open your browser and navigate to http://localhost:3000 (website) or http://localhost:3001 (transactional emails).

NB: Use filter to start specific project.

# Start website project
yarn dev --filter=web

# Start transactional project
yarn dev --filter=@website/transactional

Tests

This project use vitest for unit tests.

To run the tests, use the following command:

yarn test

To run the tests in watch mode, use:

yarn test:watch

To run the tests coverage, use:

yarn test:coverage

To run the tests for a specific package, use:

# Test website project
yarn test --filter=web

# Test make-coverage-badges project
yarn test --filter=@website/make-coverage-badges

# Test transactional project
yarn test --filter=@website/transactional

Tests coverages

@website/make-coverage-badges

Statements Branches Functions Lines
Statements Branches Functions Lines

@website/transactional

Statements Branches Functions Lines
Statements Branches Functions Lines

web

Statements Branches Functions Lines
Statements Branches Functions Lines

Other scripts

To build project, use:

yarn build

To check for circular dependencies, use:

yarn circular-deps

To lint project, use:

yarn lint

To generate coverage badges directly in README.md (automated process in GitHub Actions):

yarn make-coverage-badges

To start project in production mode (do not forget to yarn build and create a .env.production file before running this script), use:

yarn prod

To check if dependencies are synchronized, use:

yarn sync-deps

To check for unused dependencies, use:

yarn unused-deps

To check for unused exports and files, use:

yarn unused-exports-and-files

Contributing

Contributions are welcome! To contribute:

  1. Create a new branch for your feature or bug fix:
git checkout -b FEATURE/branch-name
  1. Make your changes and commit them (respecting the conventionnal commit)
git commit -m "feat: add new feature"
  1. Push your branch:
git push origin FEATURE/branch-name
  1. Open a pull request to the main repository

Please ensure your code follows the project's coding standards and includes appropriate tests where necessary.

About

Personal website

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •