Frequently Asked Questions
Find answers to common questions about CoderFolio
- Fork or clone the CoderFolio repository
- Update
_config.ymlwith your information (title, description, author, social links) - Configure your GitHub Pages settings in your repository
- Push to GitHub and your site will be live!
For detailed local development setup, see LOCAL_SETUP.md.
_config.yml file to customize:
- Site Information: title, description, author, email
- GitHub Pages: url and baseurl (set baseurl to "" if using username.github.io, or "/repo-name" if using a project repository)
- Social Media: Add your LinkedIn, GitHub, Twitter, and other social platform links
- Blog Settings: Permalink structure and default author
Important: After changing _config.yml, restart your Jekyll server if running locally.
- Create a new file in
_posts/with the format:YYYY-MM-DD-title.md - Add front matter at the top:
--- layout: post title: "Your Post Title" date: 2025-01-15 description: "Post description" tags: [tag1, tag2] categories: [category1] --- - Write your content in Markdown below the front matter
Posts will automatically appear on your blog page and be available at /blog/YYYY/MM/DD/title/
- Push your repository to GitHub
- Go to Settings → Pages in your repository
- Select your branch (usually
mainorgh-pages) - Select the root folder and click Save
- Your site will be available at
https://username.github.io/repo-name
Note: Make sure your baseurl in _config.yml matches your repository name (e.g., baseurl: "/repo-name").
- Create a new file in the
_pages/directory (e.g.,_pages/about.html) - Add front matter:
--- layout: default title: "About" permalink: /about/ --- - Add your HTML content below the front matter
The page will be automatically available at /about/. You can add it to your navigation in _includes/header.html.
social section in _config.yml:
- LinkedIn: Add your profile path (e.g.,
in/username) - GitHub: Add your username
- Other platforms: Add full URLs or usernames as specified in the comments
- Hide platforms: Set the value to
""(empty string) to hide a platform
Social links appear on the Connect page. Supported platforms include LinkedIn, GitHub, Twitter, Facebook, Upwork, Fiverr, Stack Overflow, and many more.
The theme uses a client-side contact form solution that works on GitHub Pages. However, the connect page has been redesigned to show social and professional network links instead of a form.
If you need a contact form, you can integrate services like FormSubmit or Formspree. See CONTACT_FORM_SETUP.md for instructions.
The blog search is a client-side search that works entirely in the browser, making it compatible with GitHub Pages:
- Jekyll generates a
search.jsonfile with all post data during build - The search box in the sidebar searches through post titles, content, tags, and categories
- Results are displayed instantly with highlighted search terms
- No server-side processing required - works perfectly on static hosting
The search is located in the blog sidebar and searches as you type (with a 300ms debounce).
You can customize the theme in several ways:
- Colors: Edit CSS variables in
assets/css/styles.css - Layouts: Modify files in
_layouts/directory - Navigation: Edit
_includes/header.html - Footer: Edit
_includes/footer.html - Page Content: Edit files in
_pages/directory
Tip: To override theme files, copy them to your repository and modify them. Your local files will override the theme defaults.
- Install Ruby (see
LOCAL_SETUP.mdfor platform-specific instructions) - Install Bundler:
gem install bundler - Install dependencies:
bundle install - Start the server:
bundle exec jekyll serve - Visit
http://localhost:4000(orhttp://localhost:4000/CoderFolioif using baseurl)
Note: On Windows, you may need to install RubyInstaller with DevKit. The site will auto-reload when you make changes.
Common issues and solutions:
- 404 errors: Check that your
baseurlin_config.ymlmatches your repository name - Missing posts: Ensure post files follow the naming convention
YYYY-MM-DD-title.md - Layout errors: Verify front matter includes
layout: postorlayout: default - GitHub Pages not updating: Wait a few minutes, clear cache, or check the Actions tab for build errors
- Local server issues: Restart Jekyll after changing
_config.yml
For more help, check the GitHub Issues or create a new issue.
Yes! Edit the permalink setting in _config.yml:
- Current:
/blog/:year/:month/:day/:title/ - Date only:
/blog/:year/:month/:day/:title.html - Title only:
/blog/:title/ - Category:
/blog/:categories/:title/
Note: Changing permalinks will break existing links. Consider setting up redirects if you have existing posts.
- Open
_includes/header.html - Find the navigation section with the
<ul class="navbar-nav">tags - Add, remove, or modify menu items:
<li class="nav-item"> <a class="nav-link" href="/CoderFolio/about/">About</a> </li> - Save and the changes will appear in your navigation
The navigation uses Bootstrap classes and is fully responsive. Make sure to use relative_url filter for proper URL generation.
You can get help through:
- GitHub Issues: Report bugs or ask questions
- Documentation: Check the
README.mdand other documentation files - Jekyll Docs: Jekyll documentation for general Jekyll questions
When reporting issues, please include your Jekyll version, Ruby version, and any error messages you're seeing.