Skip to content
/ canvas Public template
forked from HugoRCD/canvas

Portfolio template made with Nuxt 3, Nuxt Content and TailwindCSS

License

Notifications You must be signed in to change notification settings

ayoub-laaouaoucha/canvas

 
 

Repository files navigation

Portfolio Social Preview

Canvas template

This is a fully customizable portfolio template built with Nuxt.js and Tailwind CSS. Use it to showcase your work, testimonials and other information to your clients.

Demo

You can see a live demo at canvas.hrcd.fr.

Deploy with Vercel

Deploy with Vercel

Features

Quick Setup

  1. Clone this repository if you have access or download it from the store
git clone [email protected]:HugoRCD/canvas.git
  1. Install dependencies
bun install
  1. Copy the .env.example file to .env and fill in the values
cp .env.exemple .env
  1. Start development server
bun dev
  1. Generate static project
bun generate
  1. Start production server
bun start

How to Modify the Portfolio Content

This portfolio uses Nuxt Content to manage the content. Here's how you can modify it:

First check the app.config.ts file to change the global configuration of the portfolio, there is a lot of stuff you can change here.

Writing

  1. Navigate to the content/2.articles directory.
  2. Here, you'll find Markdown files for each article. To modify an article, simply open its Markdown file and make your changes.
  3. To add a new article, create a new Markdown file in this directory. The name of the file will be used as the URL slug for the article.

Works

  1. Navigate to the content/1.works/ directory.
  2. Here, you'll find Markdown files for each article. To modify an article, simply open its Markdown file and make your changes.
  3. To add a new project, add a new JSON file in this directory.

Featured Works

To change the featured works on the homepage, simply add the featured: true key to front matter of the markdown file.

Other Content

Simply go to the content/ directory and edit any of the Markdown or JSON files to modify the content.

Setup the Contact Form

This portfolio uses Resend to handle the contact form. To set it up, follow these steps:

  • Get your api key from Resend here your api key
  • Add your api key in the .env file
  • change the from key in the sendEmail route in the server/api/ folder, you can customize everything you want in this route
  • That's it, you're good to go!

Setup the Open Graph Image

To change the main open graph image, go to the app.config.ts file and change the openGrapImage key. For the blog open graph image, go to the content/articles directory and change the image key in the Markdown file of the article.

Contributing

To start contributing, you can follow these steps:

  1. First raise an issue to discuss the changes you would like to make.
  2. Fork the repository.
  3. Create a branch using conventional commits and the issue number as the branch name. For example, feat/123 or fix/456.
  4. Make changes following the local development steps.
  5. Commit your changes following the Conventional Commits specification.
  6. If your changes affect the code, run tests using bun run test.
  7. Create a pull request following the Pull Request Template.
    • To be merged, the pull request must pass the tests/workflow and have at least one approval.
    • If your changes affect the documentation, make sure to update it.
    • If your changes affect the code, make sure to update the tests.
  8. Wait for the maintainers to review your pull request.
  9. Once approved, the pull request will be merged in the next release !
Local development
  • Clone this repository
  • Install latest LTS version of Node.js
  • Enable Corepack using corepack enable
  • Install dependencies using bun install
  • Start development server using bun dev
  • Open http://localhost:3000 in your browser

Published under the APACHE license. Made by @HugoRCD and community 💛


🤖 auto updated with automd (last updated: Sun Aug 25 2024)

About

Portfolio template made with Nuxt 3, Nuxt Content and TailwindCSS

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Vue 81.8%
  • TypeScript 13.5%
  • CSS 4.4%
  • JavaScript 0.3%