This repository contains the source code for my personal blog, built using the Hugo static site generator. The live site is available at rishikeshs.com.
- Custom Theme: The blog utilizes a heavily customized version of the Hugo PaperMod Theme to suit my workflow and design preferences.
- Content Organization: Structured content management with archetypes and a clear directory structure for posts, pages, and other content types.
- Automation Scripts: Includes scripts for generating assets and managing site builds.
- Git Hooks: Custom Git hooks for automated tasks like changelog generation and versioning.
To set up the project locally:
-
Clone the Repository:
git clone https://github.com/rishikeshsreehari/personal-blog.git cd personal-blog
-
Install Hugo:
Ensure you have Hugo installed. Follow the official installation guide for your operating system. -
Run the Development Server:
hugo server
This will start a local server at
http://localhost:1313/
, where you can view the site.
The site requires some scripts to be run for generating assets. Use the following:
- Run
scripts/build.py
to generate all required assets. - A GitHub Action is set up to automatically generate these assets when changes are pushed to the
main
branch.
The site is currently hosted on Cloudflare Pages. To host on Cloudflare, set the build command to:
hugo
This repository includes custom Git hooks defined in the hooks
directory:
- Pre-Push Hook: The pre-push hook automatically generates a version number and changelog before pushing.
To set up the hooks directory instead of.git/hooks
, run:./setup-hooks.sh
- Detailed Site Information: Visit the Colophon for more details about this site.
- Changelog: The site’s changelog is available at rishikeshs.com/log.
Contributions are welcome! Feel free to fork the repository, make changes, and submit a pull request.
This project is licensed under the AGPL-3.0 License. See the LICENSE file for details.
- Hugo for the static site generation framework.
- Hugo PaperMod Theme for the base theme.
For more information, visit rishikeshs.com.