Local Development Guide for danieldizzy.github.io

πŸš€ Quick Start

Your Jekyll blog is now set up for local development! Here’s everything you need to know.

πŸ“ Project Structure

danieldizzy.github.io/
β”œβ”€β”€ _config.yml          # Site configuration
β”œβ”€β”€ _posts/              # Blog posts (YYYY-MM-DD-title.md)
β”œβ”€β”€ _layouts/            # Page templates
β”œβ”€β”€ _templates/          # Blog post templates
β”œβ”€β”€ Gemfile              # Ruby dependencies
β”œβ”€β”€ new-post.sh          # Script to create new posts
└── LOCAL_DEVELOPMENT_GUIDE.md

πŸ› οΈ Development Workflow

1. Start Local Server

cd danieldizzy.github.io
bundle exec jekyll serve

Your site will be available at: http://localhost:4000

2. Create a New Blog Post

./new-post.sh "Your Amazing Post Title"

This will:

3. Edit Your Post

4. Publish to GitHub Pages

git add .
git commit -m "Add new post: Your Post Title"
git push origin master

πŸ“ Blog Post Front Matter Template

Every blog post should start with:

---
layout: post
title: "Your Post Title"
date: 2025-05-28 12:00:00 +0900
author: Daniel Dizzy
categories: [cybersecurity, tutorial, analysis, personal]
tags: [security, pentesting, compliance, wireless]
---

🎯 Content Categories & Tags

Categories (choose 1-2):

Common Tags:

πŸ”§ Useful Commands

Development

# Start server with live reload
bundle exec jekyll serve

# Start server accessible from other devices
bundle exec jekyll serve --host 0.0.0.0

# Build site without serving
bundle exec jekyll build

# Update dependencies
bundle update

Git Workflow

# Check status
git status

# Add all changes
git add .

# Commit with message
git commit -m "Your commit message"

# Push to GitHub
git push origin master

# Pull latest changes
git pull origin master

Install these extensions for better Markdown editing:

🎨 Writing Tips

Markdown Syntax

# H1 Header
## H2 Header
### H3 Header

**Bold text**
*Italic text*
`Inline code`

```bash
# Code block
echo "Hello World"

Link text

Image alt text

  1. Numbered list
  2. Second item ```

Code Highlighting

Supported languages: bash, python, javascript, yaml, json, html, css, sql

🚨 Common Issues & Solutions

Issue: β€œLayout β€˜post’ does not exist”

Solution: Make sure you have a _layouts/post.html file or use layout: default

Issue: Post not showing up

Solution: Check the date format in front matter: YYYY-MM-DD HH:MM:SS +0900

Issue: Server won’t start

Solution:

bundle install
bundle exec jekyll serve

Issue: Changes not reflecting

Solution: Hard refresh browser (Ctrl+F5 / Cmd+Shift+R)

πŸ“Š Performance Tips

  1. Optimize images before adding them
  2. Use descriptive filenames for SEO
  3. Add alt text to all images
  4. Use proper heading hierarchy (H1 β†’ H2 β†’ H3)
  5. Include meta descriptions in front matter

πŸ”— Useful Resources

🎯 Next Steps

  1. Customize your theme by editing _layouts/ files
  2. Add an About page with your professional background
  3. Set up Google Analytics for visitor tracking
  4. Add social media links to your site
  5. Create a contact form for reader engagement

Happy blogging! πŸš€