https://github.com/andreivcodes/andreiv.com
my website
https://github.com/andreivcodes/andreiv.com
Last synced: 4 months ago
JSON representation
my website
- Host: GitHub
- URL: https://github.com/andreivcodes/andreiv.com
- Owner: andreivcodes
- License: mit
- Created: 2022-03-07T17:25:16.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2025-10-07T20:01:11.000Z (9 months ago)
- Last Synced: 2025-10-07T22:07:43.837Z (9 months ago)
- Language: TypeScript
- Homepage: https://andreiv.com
- Size: 63 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# andreiv.com
A modern, performant personal portfolio and blog built with Astro, showcasing projects, professional experience, and technical writing.
## Features
### Content Management
- **Blog System** - Markdown-based technical blog with reading progress, table of contents, and estimated reading time
- **Project Showcase** - Portfolio with featured images, tech stacks, and live/repository links
- **Professional Timeline** - Interactive career and education history
- **Slide Presentations** - Built-in markdown-based presentation system
### Technical Features
- **Static Site Generation** - Lightning-fast performance with Astro's SSG
- **PDF Resume Generation** - Dynamic PDF creation from content data
- **Enhanced Markdown** - Support for math equations (KaTeX), diagrams (Mermaid), and syntax highlighting
- **Responsive Design** - Mobile-first approach with tailored layouts
- **Type Safety** - TypeScript with content collection schemas
## Tech Stack
- **Framework**: [Astro](https://astro.build) 5.11.1
- **UI**: React 19.1.0
- **Styling**: Tailwind CSS v4
- **Components**: Radix UI primitives
- **Fonts**: Geist Sans & Mono
- **Language**: TypeScript
## Quick Start
```bash
# Install dependencies
pnpm install
# Start development server
pnpm dev
# Build for production
pnpm build
# Preview production build
pnpm preview
```
## Project Structure
```
src/
├── components/ # Reusable UI components
├── content/ # Markdown content collections
│ ├── blog/ # Blog posts
│ ├── projects/ # Portfolio projects
│ └── slides/ # Presentations
├── layouts/ # Page layouts
├── pages/ # File-based routing
└── styles/ # Global styles
```
## Key Commands
| Command | Description |
| -------------- | ------------------------ |
| `pnpm dev` | Start development server |
| `pnpm build` | Build for production |
| `pnpm preview` | Preview production build |
| `pnpm check` | Run type checking |
## Content Management
Add content by creating markdown files in the appropriate directories:
- **Blog posts**: `src/content/blog/[slug].md`
- **Projects**: `src/content/projects/[slug].md`
- **Slides**: `src/content/slides/[slug].md`
Each content type has a defined schema in `src/content/config.ts`.
## Configuration
Site metadata and personal information can be updated in:
- `src/lib/personalInfo.ts` - Personal details and skills
## License
This project is a personal portfolio website. Feel free to use it as inspiration for your own portfolio.