Tokyo Theme Content Sections Customization
Table of Contents
The Tokyo theme’s content is managed through data files in the _data/ directory. This guide explains how to customize each section’s content.
Site Data File
All main content is stored in _data/site_data.yml. This file contains data for all major sections of your site.
File Structure
home: # Home section data
about: # About section data
portfolio: # Portfolio section data
news: # News section data
contact: # Contact section data
Home Section Customization
The home section displays your profile information and social links.
Configuration in _data/site_data.yml
home:
profile_name: ADRIANO <span>SMITH</span>
profile_img: "/assets/img/slider/1.jpg"
bio: "Creative Photographer based in New York and happy to travel all over Europe to capture photos."
social:
facebook: "http://facebook.com"
twitter: "http://twitter.com"
instagram: "http://instagram.com"
dribbble: "http://dribble.com"
tiktok: "http://tiktok.com"
Customization Options
Profile Name:
- Use HTML tags for styling (e.g.,
<span>for different colors) - Supports any valid HTML
- Keep it concise (2-3 words recommended)
Profile Image:
- Path relative to site root
- Recommended size: 500x500px or square
- Format: JPG, PNG, or WebP
- Place in
assets/img/slider/or custom folder
Bio/Description:
- Short professional tagline
- 1-2 sentences recommended
- Can include emojis or special characters
Social Links:
- Add or remove social platforms
- Use full URLs (including http:// or https://)
- Supported platforms: Facebook, Twitter, Instagram, Dribbble, TikTok
Example Customization
home:
profile_name: JOHN <span>DOE</span>
profile_img: "/assets/img/profile/my-photo.jpg"
bio: "Full-stack developer passionate about creating beautiful web experiences."
social:
facebook: "https://facebook.com/johndoe"
twitter: "https://twitter.com/johndoe"
instagram: "https://instagram.com/johndoe"
dribbble: "https://dribbble.com/johndoe"
tiktok: "https://tiktok.com/@johndoe"
linkedin: "https://linkedin.com/in/johndoe" # Custom addition
About Section Customization
The about section includes personal information, skills, and statistics.
Configuration in _data/site_data.yml
about:
title: "Adriano Smith & <span>Photographer</span>"
description: "Hello, I am a creative photographer based in New York and happy to travel all over Europe to capture your big day in candid and authentic photos. I will create a lasting memory of the people."
img_src: "/assets/img/slider/1.jpg"
learn_more: Learn More
lm_url: #
birthday: "01.07.1990"
age: 31
address: Ave 11, New York, USA
email: mail@gmail.com
phone: +77 022 177 05 05
study: Univercity of Texas
freelance: Available
photography:
- title: Wedding Photography
expertise: 95
- title: Lifestyle Photography
expertise: 85
- title: Family Photography
expertise: 90
languages:
- title: English
expertise: 95
- title: Japanese
expertise: 85
- title: Arabic
expertise: 90
project_completed: 777+
happy_clients: 3k+
lines_of_code: 9k+
our_partners:
- name: one
img_src: "/assets/img/partners/1.png"
url: #
# ... more partners
Customization Options
Basic Information:
title: About section heading with HTML supportdescription: Detailed about text (2-3 paragraphs)img_src: Profile image pathlearn_more: Button textlm_url: Button link destination
Personal Details:
birthday: Date format: DD.MM.YYYYage: Current ageaddress: Full addressemail: Contact emailphone: Phone number with country codestudy: Education/degreefreelance: Availability status (Available/Busy/etc.)
Skills (Photography/Languages):
title: Skill nameexpertise: Percentage (0-100)- Add or remove skills as needed
Statistics:
project_completed: Number of completed projectshappy_clients: Number of satisfied clientslines_of_code: Any metric relevant to your field
Partners/Clients:
name: Partner nameimg_src: Logo image pathurl: Partner website link- Add unlimited partners
Example Customization
about:
title: "John Doe & <span>Web Developer</span>"
description: "I'm a passionate web developer with 5+ years of experience creating modern, responsive websites. I specialize in JavaScript frameworks and love turning complex problems into simple, beautiful solutions."
img_src: "/assets/img/about/profile.jpg"
learn_more: View Resume
lm_url: "/resume"
birthday: "15.03.1992"
age: 32
address: 123 Main St, San Francisco, CA
email: john@example.com
phone: +1 555 123 4567
study: Stanford University
freelance: Available for Projects
photography:
- title: Frontend Development
expertise: 95
- title: Backend Development
expertise: 85
- title: UI/UX Design
expertise: 75
languages:
- title: JavaScript
expertise: 95
- title: Python
expertise: 80
- title: PHP
expertise: 70
project_completed: 150+
happy_clients: 50+
lines_of_code: 100k+
our_partners:
- name: Google
img_src: "/assets/img/partners/google.png"
url: https://google.com
- name: Microsoft
img_src: "/assets/img/partners/microsoft.png"
url: https://microsoft.com
Portfolio Section Customization
The portfolio section is managed separately in _data/portfolio.yml.
Configuration in _data/portfolio.yml
- name: Joss Butler
img_src: /assets/img/portfolio/1.jpg
project_url: https://vimeo.com/312334044
filter_classes: 'vimeo'
cat: Vimeo
- name: Ross Taylor
img_src: /assets/img/portfolio/2.jpg
project_url: https://www.youtube.com/watch?v=Amq-qlqbjYA
filter_classes: 'youtube'
cat: YouTube
- name: David Smith
img_src: /assets/img/portfolio/3.jpg
project_url: https://w.soundcloud.com/player/?url=https%3A//api.soundcloud.com/tracks/252739311&color=%23ff5500&auto_play=true&hide_related=false&show_comments=true&show_user=true&show_reposts=false&show_teaser=true&visual=true
filter_classes: 'soundcloud'
cat: SoundCloud
- name: Kiron Polard
img_src: /assets/img/portfolio/4.jpg
project_url: /assets/img/portfolio/3.jpg
filter_classes: 'image'
cat: Image
Customization Options
Portfolio Item Properties:
name: Project titleimg_src: Thumbnail image pathproject_url: Link to project (video URL, image path, or website)filter_classes: Category for filtering (vimeo, youtube, soundcloud, image)cat: Display category name
Supported Media Types:
- Vimeo Videos:
filter_classes: 'vimeo' project_url: https://vimeo.com/VIDEO_ID - YouTube Videos:
filter_classes: 'youtube' project_url: https://www.youtube.com/watch?v=VIDEO_ID - SoundCloud Audio:
filter_classes: 'soundcloud' project_url: https://w.soundcloud.com/player/?url=TRACK_URL - Images:
filter_classes: 'image' project_url: /path/to/full-size-image.jpg
Example Customization
- name: E-Commerce Website
img_src: /assets/img/portfolio/ecommerce.jpg
project_url: https://example-project.com
filter_classes: 'image'
cat: Web Design
- name: Mobile App Demo
img_src: /assets/img/portfolio/mobile-app.jpg
project_url: https://www.youtube.com/watch?v=dQw4w9WgXcQ
filter_classes: 'youtube'
cat: App Development
- name: Brand Identity
img_src: /assets/img/portfolio/branding.jpg
project_url: /assets/img/portfolio/branding-full.jpg
filter_classes: 'image'
cat: Branding
- name: Photography Portfolio
img_src: /assets/img/portfolio/photo.jpg
project_url: https://vimeo.com/123456789
filter_classes: 'vimeo'
cat: Photography
News Section Customization
The news section displays blog posts from the _posts/ folder.
Configuration in _data/site_data.yml
news:
title: Latest News
Creating Blog Posts
Create new posts in the _posts/ folder with the following format:
File Naming: YYYY-MM-DD-post-title.md
Example: 2026-01-20-my-first-post.md
Post Front Matter:
---
layout: post
title: "Your Post Title"
date: 2026-01-20 10:00:00 +0600
post_image: /assets/img/news/1.jpg
tags: [tag1, tag2, tag3]
categories: [category-name]
author_id: 1
comments: true
excerpt: "Brief description of your post..."
---
Post Properties
layout: Use “post” for blog poststitle: Post titledate: Publication date and timepost_image: Featured image pathtags: Array of tagscategories: Array of categoriesauthor_id: Link to author profilecomments: Enable/disable commentsexcerpt: Short description for post cards
Example Post
---
layout: post
title: "Getting Started with Jekyll"
date: 2026-01-20 10:00:00 +0600
post_image: /assets/img/news/jekyll.jpg
tags: [Jekyll, Tutorial, Web Development]
categories: [Tutorials]
author_id: 1
comments: true
excerpt: "Learn how to set up your first Jekyll site and start creating static websites."
---
# Getting Started with Jekyll
Jekyll is a static site generator that's perfect for blogs and portfolios. In this post, we'll cover...
[Your post content here]
Contact Section Customization
The contact section configuration in _data/site_data.yml:
contact:
title: Get in Touch
Customization Options
Title: Contact section heading
Additional Contact Information:
You can add more fields to the contact section by modifying the include file _includes/right-parts/tk-contact.html.
Contact Form Configuration
The contact form typically uses a service like Formspree or Netlify Forms. To configure:
- Formspree:
<form action="https://formspree.io/f/YOUR_FORM_ID" method="POST"> <!-- Form fields --> </form> - Netlify Forms:
<form name="contact" method="POST" data-netlify="true"> <!-- Form fields --> </form>
Adding Custom Content Sections
To add a new content section:
- Add data to
_data/site_data.yml:custom_section: title: "Custom Section" description: "Your custom content" # Add more fields as needed - Create include file in
_includes/right-parts/:<div id="custom" class="tokyo_tm_section"> <div class="container"> <h3></h3> <p></p> </div> </div> - Add to
index.html:include right-parts/tk-custom.html - Add navigation item to
_data/navigation.yml: ```yaml- text: Custom url: custom ```
Best Practices
- Use descriptive names for all data fields
- Keep images optimized (compress before uploading)
- Test all links before publishing
- Use consistent formatting in YAML files
- Backup your data files before making changes
- Validate YAML syntax using online validators
- Use relative paths for images and assets
- Keep descriptions concise for better readability
Troubleshooting
Content not displaying
Solution:
- Check YAML syntax in data files
- Verify variable names match between data and templates
- Ensure data files are in the correct location
Images not loading
Solution:
- Verify image paths are correct
- Check that images exist in the specified folders
- Ensure proper file permissions
Portfolio filtering not working
Solution:
- Verify
filter_classesvalues match filter buttons - Check JavaScript is loading properly
- Ensure portfolio items have correct categories
Blog posts not appearing
Solution:
- Verify post filename format (YYYY-MM-DD-title.md)
- Check front matter is properly formatted
- Ensure posts are in the
_posts/folder
The Tokyo theme’s data-driven approach makes it easy to customize content without touching any code. Simply update the YAML files and your changes will be reflected immediately.