π COMPLETE SETUP GUIDE
Installation & Setup
Step 1: Install Ruby Dependencies
cd /Users/kostapet/git/PetyoKostakov.github.io
bundle install
Step 2: Run Development Server
bundle exec jekyll serve
Step 3: Visit Your Site
Open browser β http://localhost:4000
π Creating Content
Blog Posts
Create a new file in _posts/ with format: YYYY-MM-DD-title.md
---
layout: post
title: "Your Post Title"
date: 2024-09-09 10:00:00 +0000
categories: [category]
tags: [tag1, tag2]
---
Your content here...
Courses
Create a new file in _courses/ with format: course-name.md
---
layout: page
title: "Course Title"
description: "Course description"
level: "Beginner"
topics:
- Topic 1
- Topic 2
permalink: /courses/course-url/
---
Course content...
π¨ Customization
Change Site Settings
Edit _config.yml:
title: Your Name
email: your-email@example.com
description: Your site description
github_username: your-github
linkedin_username: your-linkedin
Update Homepage
Edit index.md - Change title, description, and content
Update CV
Edit cv.md - Add your professional experience
Update About
Edit about.md - Write your bio
π Deployment
Deploy to GitHub Pages
- Commit your changes:
git add . git commit -m "Update portfolio" git push origin main - Enable GitHub Pages in settings:
- Go to GitHub repository settings
- Scroll to βGitHub Pagesβ
- Select βDeploy from a branchβ
- Choose βmainβ branch
- Save
- Your site goes live at: https://petyokostakov.github.io
π Troubleshooting
Port 4000 Already in Use
bundle exec jekyll serve --port 4001
Bundle Issues
bundle clean --force
bundle install
bundle exec jekyll serve
Clear Cache
bundle exec jekyll clean
π Project Structure
.
βββ index.md β Homepage
βββ cv.md β CV page
βββ blog.md β Blog listing
βββ courses.md β Courses
βββ about.md β About page
βββ 404.md β Error page
βββ _posts/ β Blog posts
βββ _courses/ β Courses
βββ _layouts/ β Templates
βββ _includes/ β Components
βββ assets/ β CSS & media
βββ _config.yml β Configuration
βββ Gemfile β Dependencies
βββ .gitignore β Git rules
β Commands Reference
| Command | Purpose |
|---|---|
bundle install |
Install dependencies |
bundle update |
Update gems |
bundle exec jekyll serve |
Run development server |
bundle exec jekyll build |
Build for production |
bundle exec jekyll clean |
Clear build cache |
JEKYLL_ENV=production bundle exec jekyll build |
Production build |
π Plugin Features
jekyll-feed
- Automatically generates RSS feed at
/feed.xml - Allows readers to subscribe to your blog
jekyll-seo-tag
- Adds SEO meta tags
- Improves search engine visibility
- Open Graph support
jekyll-sitemap
- Generates
sitemap.xml - Helps search engines crawl your site
- Better SEO
π― Next Steps
- Customize Configuration - Update
_config.yml - Write Your CV - Edit
cv.md - Update About - Edit
about.md - Create Blog Posts - Add to
_posts/ - Create Courses - Add to
_courses/ - Test Locally - Run the server and verify
- Deploy - Push to GitHub
π Resources
Your professional Jekyll portfolio is complete and ready to use!
Start with bundle exec jekyll serve and visit http://localhost:4000
Good luck! π