More Premium Hugo Themes Premium Nuxt Themes

Portfolio

My personal portfolio website, built using nuxt.js and strapi

Portfolio

My personal portfolio website, built using nuxt.js and strapi

Github Stars Github Stars: 8
Last Commit Last Commit: Jan 11, 2026 -
First Commit Created: Dec 18, 2023 -
Portfolio screenshot

Overview

The personal portfolio website is built using Nuxt.JS and Strapi. It is deployed statically for simplicity, speed, cost, and security reasons. Development is done locally with the Nuxt.JS SSR project, and content editing takes place on a local Strapi server.

Features

  • Nuxt.JS SSR Project: Development is done using the Nuxt.JS SSR project, allowing for fast and efficient development.
  • Strapi CMS: Content editing is done on a local Strapi server, providing a sophisticated CMS for managing website content.
  • Static Deployment: The website is deployed statically, resulting in faster loading times, reduced cost, and improved security.

Installation

To install the theme, follow these steps:

  1. Make sure you have Node.js and npm installed on your machine.
  2. Clone the repository from GitHub.
  3. Navigate to the project directory and run npm install to install the dependencies.
  4. Start the Strapi server by running npm run strapiStart.
  5. In another terminal, run npm run generate in the project directory to statically generate the website.
  6. The generated website will be located in the /nuxt/dist directory.
  7. Use the nuxt/updatewebsite.js script to upload the dist folder to your web server through SSH and perform a git pull.
  8. You can also run all these steps at once by running npm run updatecontent, which will generate the website, push a commit to GitHub, and run the updatewebsite script.

Summary

The personal portfolio website is built using Nuxt.JS and Strapi and deployed statically. This method allows for fast and efficient development while keeping hosting extremely fast and cheap. However, it may not scale as well as a classic Nuxt+Strapi server and has some limitations in terms of complex API calls. Nevertheless, it offers the benefits of a sophisticated CMS without needing to run it 24/7 in production, thus reducing the attack surface.