Skip to content

MichaelPaulukonis/michaelpaulukonis.github.io

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

122 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Michael Paulukonis - Personal Website

Website Screenshot, outdated as soon as it was captured

I don't feel the need to update this as often as I once did. It's a static site, portfolio, and blog, currently being modernized with the latest Nuxt stack.

🚀 Tech Stack

🏗️ Architecture

This is a Static Site Generator. Markdown files go into the content/ folder, and HTML is generated for deployment.

During development, Nuxt Content v3 processes content into a local SQLite database for querying. When building, it generates static JSON payloads so the site loads instantly on GitHub Pages without a backend.

Directory Structure

Standard Nuxt 4 setup:

/
├── app/                  # Source code
│   ├── components/       # Vue components
│   ├── layouts/          # Page layouts
│   ├── pages/            # Routes (File-system based)
│   └── app.vue           # Root component
├── content/              # Content (Markdown, JSON)
├── public/               # Static Assets (Images, Favicons)
├── content.config.ts     # Content Schema Definitions
└── nuxt.config.ts        # Nuxt Configuration

🛠️ Quick Start

To run locally:

Prerequisites

  • Node.js (LTS)
  • pnpm
  • SQLite (for the local dev database)

Installation

  1. Clone the repository:

    git clone https://github.com/michaelpaulukonis/michaelpaulukonis.github.io.git
    cd michaelpaulukonis.github.io
  2. Install dependencies:

    pnpm install
  3. Run it:

    pnpm dev

    Go to http://localhost:3000.

Testing

This project uses Vitest for testing. To run the tests:

pnpm test

📦 Deployment

This lives on GitHub Pages.

To build and deploy (if you are me):

pnpm publish

This script will:

  1. Clean the output directory.
  2. Generate the static site (pnpm generate).
  3. Deploy the .output/public folder to the gh-pages branch.

📝 Writing Content

  • Blog Posts: New .md files go in content/blog/.
  • Static Pages: New .md files go in content/.
  • Authors: Metadata in content/authors.json.
  • Schemas: Content structure is defined in content.config.ts.

📄 Documentation

Additional documentation can be found in the docs/ directory:

🤝 Contributing

Sure, why not. Just follow the existing mess patterns.


Maintained by Michael Paulukonis.

About

Simple bio page with links and posts, from a Nuxt project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •