- Light / Dark Themes
- Headless CMS
- Cool background
- Profile page
- Skills page
- Projects page
- Contact form
- Download Resume
- Typescript
- React
- Next.js
- Tailwind
- Next.js
- Strapi CMS
- Clone the project:
git clone https://github.com/bastien-pruvost/portfolio.git
- Go to the project directory:
cd portfolio
- Copy
.env.example
to.env.local
and update environment variables
cp .env.example .env.local
- Install dependencies:
pnpm install
# or
yarn install
# or
npm install
- Run the development server:
pnpm dev
# or
yarn dev
# or
npm run dev
Open http://localhost:3000 with your browser to see the result.
API Routes can be accessed on http://localhost:3000/api
To build the project for production usage, run the following command:
pnpm build
# or
yarn build
# or
npm run build
It will create a .next
folder in root folder with all static files.
To start the app in production, make sure you have built the project with the build command from the previous section, then run the following command:
pnpm start
# or
yarn start
# or
npm start
This project use Next.js 13 App Router built on top of React Server Components.
Client Routes are located in the folder src/app
.
API Routes are located in the folder src/pages/api
.
To report a bug or get help open an issue.
If you have any suggestion, feel free to open an issue with the tag "enhancement"
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and open a pull request.
- Fork the project
- Create your feature branch (
git checkout -b feature/my-feature
) - Code your feature
- Commit your changes (
git commit -m 'feat: add amazing feature'
) - Push to the branch (
git push origin feature/my-feature
) - Open a pull request
You can also simply open an issue with the tag "enhancement".
Don't forget to give the project a star! Thanks again!
Distributed under the MIT License.
See LICENSE
file for more information.