π Blog for my Google Summer of Code 2025 journey with GNOME, including progress updates, technical deep dives, and reflections.
π Live Blog: https://ahmedfatthi.pages.dev/
-
Install Hugo (if not already installed):
# Windows (using Chocolatey) choco install hugo-extended # Or download from https://github.com/gohugoio/hugo/releases
-
Clone and setup:
git clone <your-repo-url> cd gnome-gsoc-blog git submodule update --init --recursive
-
Run locally:
hugo server -D
Open http://localhost:1313 in your browser.
hugo new content posts/your-post-name.md
-
Connect to Cloudflare Pages:
- Go to Cloudflare Pages
- Connect your GitHub repository
- Choose "Hugo" as the framework preset
-
Build Configuration:
- Build command:
hugo --minify
- Build output directory:
public
- Root directory:
/
(leave empty)
- Build command:
-
Environment Variables:
HUGO_VERSION
:0.147.4
NODE_VERSION
:18
# Build the site
hugo --minify
# The public/ directory contains your built site
# Upload the contents to your hosting provider
content/
βββ posts/ # Blog posts
β βββ introduction.md
βββ about.md # About page
βββ _index.md # Homepage content (optional)
The blog uses the PaperMod theme. Key configuration options in hugo.toml
:
- Site info: Update
title
,description
,author
- Social links: Update the
[[params.socialIcons]]
sections - Menu: Customize the navigation menu in
[menu]
- Features: Enable/disable features like reading time, breadcrumbs, etc.
Update these sections in hugo.toml
:
- Change the
baseURL
to your actual domain - Update social media links
- Customize the home page welcome message
- Add your project-specific details
- β Fast & Secure: Built with Hugo static site generator
- β Responsive Design: Works on all devices
- β SEO Optimized: Meta tags, Open Graph, structured data
- β Syntax Highlighting: Code blocks with language detection
- β Dark/Light Theme: Automatic theme switching
- β Search: Built-in search functionality
- β RSS Feed: Automatic RSS generation
- β Performance: Optimized for Cloudflare Pages CDN
# Start development server with drafts
hugo server -D
# Build for production
hugo --minify
# Create new post
hugo new content posts/my-new-post.md
# Update theme
git submodule update --remote themes/PaperMod
gnome-gsoc-blog/
βββ content/ # Markdown content files
βββ static/ # Static assets (images, files)
βββ themes/ # Hugo themes (PaperMod)
βββ public/ # Generated site (git ignored)
βββ hugo.toml # Hugo configuration
βββ _headers # Cloudflare Pages headers
βββ _redirects # Cloudflare Pages redirects
βββ README.md # This file
This is a personal blog for my GSoC journey, but I welcome:
- Suggestions for improvements
- Bug reports
- Technical discussions
- GitHub: AhmedFatthy1040
- LinkedIn: Ahmed Fatthi Al-Khateeb
This blog content is licensed under Creative Commons Attribution 4.0.
The Hugo theme (PaperMod) is licensed under the MIT License.
Built with β€οΈ using Hugo and deployed on Cloudflare Pages