$ show remote-jp/remote-in-japan
This repository operates as a static website (remotein.jp) that curates and displays a list of Japanese tech companies offering remote work. The core data source is two markdown tables in README.md (Japanese) and README.en.md (English). A Ruby script (`docs/upsert_data_by_readme.rb`) parses these tables, extracts company details (name, description, full-remote flag), generates Jekyll posts with front-matter and redirects, and produces bilingual search index JSON files. Jekyll builds the site using a custom theme with responsive design, dark mode, JSON-LD structured data for SEO, and client-side search via Simple-Jekyll-Search. The site is deployed via GitHub Pages with CI/CD through GitHub Actions. The architecture is a content pipeline: manual edits to README → script → Jekyll build → static hosting. There is no server-side logic or dynamic API. The repository is primarily a curation and presentation tool, not a software application in the traditional sense, but its automated data ingestion and site generation pipeline demonstrate solid engineering practices.
The LLM identified 2 files worth highlighting for reuse:
A self-contained Ruby script that parses markdown tables from README files, extracts company metadata, and generates Jekyll post files with front-matter. It uses Kramdown for table parsing, Sanitize for description cleaning, Git for commit provenance (blame), and PublicSuffix for domain parsing. The script creates bilingual posts, search index JSON, and redirect entries. It is reusable as a pattern for any project that needs to convert a markdown table of entries into a Jekyll site, demonstrating non-obvious skill in handling edge cases (date deduplication, emoji detection, redirect mappings) and producing structured output with minimal manual intervention.
A GitHub Actions workflow that automatically tests and builds the Jekyll site. It runs htmlproofer with custom checks (including a JSON-LD validation script in `docs/_tests/json_ld_check.rb`), builds the site, and deploys to GitHub Pages. The workflow is well-structured with explicit Ruby version setup, dependency caching, and separate jobs for testing and deployment. It serves as a reusable CI template for any Jekyll-based static site project, incorporating best practices like artifact handling and environment-specific deployment.