The key to finding your perfect property should be in your hands. We empower you with valuable insights & tools, and let you be in control of your home search.
CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
Development Commands
This is a Jekyll-based website for Singapore property investment content. Common commands:
bundle install
- Install Ruby gems
bundle exec jekyll serve
- Run local development server
bundle exec jekyll build
- Build the site
marp _slides/filename.md -o slides/filename.html -w
- Generate slides from Markdown using Marp
Site Architecture
Content Structure
Jekyll Collections : Uses several collections including _authors
, _pages
, _posts
, _archives
, _slides
Data Files : Key data in _data/
including condos.json
, launches.json
, reviews.json
Categories : Uses categories instead of tags - News, Tips, Guide, HDB, EC, Condo, Landed
URL Structure : Posts use /blog/:year/:month/:day/:title
format
Key Directories
_pages/
- Static pages (collection without path prefix)
_posts/
- Blog posts with date-based URLs
condo/
- Individual condo property pages with subdirectories for each property
launch/
- Property launch information pages
_includes/
- Reusable Jekyll components
_layouts/
- Page templates
_data/
- JSON data files for condos, launches, and reviews
Special Features
Launch Pages : Two systems - official launches from launches.json
and unofficial/upcoming from launches-upcoming.json
Search : Uses search.json
for client-side search functionality
Images : Enlargeable images via `<div class="post-gallery light-gallery-wrapper pt-10 pb-20">
</div>` component
Videos : YouTube embeds via `<iframe width="560" height="315" src="https://www.youtube.com/embed/" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>
`
Galleries : Photo galleries with post_format: "gallery"
Tooltips : Bootstrap tooltips with data-toggle="tooltip"
Content Management
New Pages : Duplicate existing pages from _pages/
collection
Popular Posts : Use trending: 100
front matter (higher values = more trending)
Image Captions : Use `<div class="post-gallery light-gallery-wrapper pt-10 pb-20">
Caption
</div>`
Dropcap : Use <span class="dropcap circle bg-yellow">C</span>
for article styling
Tables : Must add Bootstrap classes like {:.table .table-striped}
SEO & Configuration
Uses jekyll-seo-tag plugin
Timezone: Asia/Singapore
Disqus comments enabled
Jekyll Archives for category pages
Sitemap generation enabled
Content Creation Workflows
Blog Post Creation
File naming : Use format YYYY-MM-DD-title-slug.md
- filename date must match frontmatter date
Frontmatter format :
date : YYYY-MM-DD HH:MM +0800
description : " SEO-friendly description"
categories : News # Use existing categories without brackets
Available categories : News, Tips, Guide, HDB, EC, Condo, Landed
Writing style : Target 20-50 year old savvy Singapore investors, casual yet professional with wit
Article structure : Use <span class="dropcap circle bg-yellow">T</span>
for openings
Image Management
Optimization : Convert to JPEG with 80% quality, max 1200px width, target <300KB
Hero images : Referenced in frontmatter image:
field
Mid-article images : Use `<div class="post-gallery light-gallery-wrapper pt-10 pb-20">
...
</div>`
Gallery images : Set post_format: "gallery"
and add images to gallery:
array in frontmatter
Storage : Place in /img/
directory with descriptive filenames
Command : sips -s format jpeg -s formatOptions 80 input.png --out output.jpg -Z 1200
Note : macOS screenshots may contain Unicode spaces - use find
command to rename if needed
Data Structure Notes
Condos and launches data is managed in JSON files in _data/
When adding new condos/launches, update the corresponding JSON file
Search functionality requires manual updates to search.json
when adding new data sources
Writing Style Guidelines
When writing blog posts, use a casual and direct style, targeting 20-50 years old young and savvy investors in Singapore
Incorporate bits of wit and humour while maintaining a professional tone
Write from the perspective of an all-rounded property agent who invests diversely and smartly
Image Generation Guidelines
When generate prompt for generating images, specify the aspect, for most cases a landscape aspect is most suitable
Image Processing Guidelines
When resizing image for the website, use jpg for better compression