Atridad Lahiji 0d43c3af47
Some checks failed
Docker Deploy / build-and-push (push) Has been cancelled
Fixed resume gen
2025-06-26 23:41:29 -06:00
2025-05-17 22:42:48 -06:00
2025-06-26 23:41:29 -06:00
2025-06-26 23:41:29 -06:00
2025-06-03 14:31:38 -06:00
2025-05-17 22:42:48 -06:00
2025-06-03 14:31:38 -06:00
??
2025-06-26 18:57:46 -06:00
2025-06-26 16:06:15 -06:00
2025-06-26 16:06:15 -06:00
2025-06-26 23:41:29 -06:00
2025-05-17 22:42:48 -06:00

Personal Website

My personal website built with Astro and Preact!

Features

  • Resume Management
  • Blog Posts
  • Projects
  • Talks
  • Terminal View

Resume Configuration

The resume system supports multiple sections that can be enabled, disabled, and customized.

Available Resume Sections

Section Required Fields
basics name, email, profiles
summary content
experience company, position, location, date, description
education institution, degree, field, date
skills name, level (1-5)
volunteer organization, position, date
awards title, organization, date
profiles network, username, url

Section Configuration

Each section can be configured in src/config/data.ts:

export const resumeConfig: ResumeConfig = {
  tomlFile: "/files/resume.toml",
  layout: {
    leftColumn: ["experience", "volunteer", "awards"],
    rightColumn: ["skills", "education"],
  },
  sections: {
    summary: {
      title: "Professional Summary",
      enabled: true,
    },
    experience: {
      title: "Work Experience",
      enabled: true,
    },
    awards: {
      title: "Awards & Recognition",
      enabled: true,
    },
    // ... other sections
  },
};

Layout Configuration

The resume layout is fully customizable. You can control which sections appear in which column and their order:

layout: {
  leftColumn: ["experience", "volunteer", "awards"],
  rightColumn: ["skills", "education"],
}

Available sections for layout:

  • experience - Work experience
  • education - Educational background
  • skills - Technical and professional skills
  • volunteer - Volunteer work
  • awards - Awards and recognition

Layout Rules:

  • Sections can be placed in either column
  • Order within each column is determined by array order
  • Missing sections are automatically excluded
  • The summary section always appears at the top (full width)
  • The profiles section appears in the header area

Example Layouts:

Skills-focused layout:

layout: {
  leftColumn: ["skills", "education"],
  rightColumn: ["experience", "awards", "volunteer"],
}

Experience-heavy layout:

layout: {
  leftColumn: ["experience"],
  rightColumn: ["skills", "education", "volunteer", "awards"],
}

Resume Data Format (TOML)

Create a resume.toml file in the public/files/ directory:

[basics]
name = "Your Name"
email = "your.email@example.com"

[[basics.profiles]]
network = "GitHub"
username = "yourusername"
url = "https://github.com/yourusername"

[[basics.profiles]]
network = "LinkedIn"
username = "yourname"
url = "https://linkedin.com/in/yourname"

[summary]
content = "Your professional summary here..."

[[experience]]
company = "Company Name"
position = "Job Title"
location = "City, State"
date = "2020 - Present"
description = [
  "Achievement or responsibility 1",
  "Achievement or responsibility 2"
]
url = "https://company.com"

[[education]]
institution = "University Name"
degree = "Bachelor of Science"
field = "Computer Science"
date = "2016 - 2020"
details = [
  "Relevant coursework or achievements"
]

[[skills]]
name = "JavaScript"
level = 4

[[skills]]
name = "Python"
level = 5

[[volunteer]]
organization = "Organization Name"
position = "Volunteer Position"
date = "2019 - Present"

[[awards]]
title = "Award Title"
organization = "Awarding Organization"
date = "2023"
description = "Brief description of the award"

Development

# Install dependencies
pnpm i

# Start development server
pnpm dev

# Build for production
pnpm build
Description
No description provided
Readme 260 MiB
Languages
TypeScript 66.3%
Astro 28.5%
JavaScript 1.7%
CSS 1.4%
Nix 1.1%
Other 1%