This repository contains the source code and content for AKrekhovetskyi.github.io, a personal website and blog powered by Jekyll and the Chirpy theme, deployed via GitHub Pages.
The data used in the posts of this project was collected by the TechTrendStat project.
- Modern Jekyll Theme: Uses the Chirpy theme for a clean, responsive, and feature-rich blog.
- Automated Posts: Python scripts in
post_maker/generate and update posts, statistics, and diagrams from data sources. - Job Listings: Regularly updated job vacancy posts for Java, JavaScript, and Python in
_posts/. - Statistics & Diagrams: Technology trends visualized in statistics posts, with diagrams stored in
assets/diagrams/. - Custom Plugins: Ruby plugins in
_plugins/extend Jekyll functionality (e.g., last modified date for posts). - Self-hosted Assets: Static libraries managed in
assets/lib/for development and production.
.
├── _config.yml # Jekyll configuration
├── _posts/ # Blog posts (vacancies & statistics)
│ ├── Java/
│ ├── JavaScript/
│ └── Python/
├── _plugins/ # Custom Jekyll plugins
├── _tabs/ # Navigation tabs (About, Archives, etc.)
├── assets/ # Static assets (images, diagrams, libraries)
├── post_maker/ # Python scripts for post generation
├── index.html # Home page
├── Gemfile # Ruby dependencies
├── requirements.txt # Python dependencies
└── tools/ # Utility scripts (e.g., test.sh)
-
Install Ruby & Bundler:
gem install bundler
-
Install dependencies:
bundle install
-
Install Python dependencies (for post generation):
python3 -m venv .venv . .venv/bin/activate pip install -r requirements.txt -
Clone submodules for static assets:
git submodule update --init --recursive
-
Serve locally:
bundle exec jekyll serve
- Use the scripts in
post_maker/to generate or update job vacancy and statistics posts. - Example:
python3 -m post_maker.make_posts
- Run the test script to build and check the site:
bash tools/test.sh
- The site is automatically deployed via GitHub Pages on push to the
mainbranch. - Ensure submodules are updated in your GitHub Actions workflow if you self-host assets.
- Edit
_config.ymlto adjust site settings. - Add or modify posts in
_posts/. - Update navigation tabs in
_tabs/. - Customize plugins in
_plugins/.
This project is licensed under the MIT License.
References: