{"id":50045205,"url":"https://github.com/landerox/landerox.github.io","last_synced_at":"2026-06-08T06:01:38.514Z","repository":{"id":332285666,"uuid":"1131510261","full_name":"landerox/landerox.github.io","owner":"landerox","description":"Personal site focused on data platforms, cloud architecture, automation, and Production AI.","archived":false,"fork":false,"pushed_at":"2026-06-04T08:16:52.000Z","size":175,"stargazers_count":1,"open_issues_count":3,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-06-04T09:18:01.982Z","etag":null,"topics":["aws","bilingual","cloud-architecture","conventional-commits","data-engineering","engineering-blog","github-pages","google-cloud","mlops","personal-website","platform-engineering","production-ai","python","static-site","technology-radar","zensical"],"latest_commit_sha":null,"homepage":"https://landerox.com","language":"CSS","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/landerox.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":".github/CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":".github/SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-01-10T06:32:47.000Z","updated_at":"2026-06-04T08:16:58.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/landerox/landerox.github.io","commit_stats":null,"previous_names":["landerox/landerox.github.io"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/landerox/landerox.github.io","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/landerox%2Flanderox.github.io","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/landerox%2Flanderox.github.io/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/landerox%2Flanderox.github.io/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/landerox%2Flanderox.github.io/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/landerox","download_url":"https://codeload.github.com/landerox/landerox.github.io/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/landerox%2Flanderox.github.io/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34050225,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-08T02:00:07.615Z","response_time":111,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aws","bilingual","cloud-architecture","conventional-commits","data-engineering","engineering-blog","github-pages","google-cloud","mlops","personal-website","platform-engineering","production-ai","python","static-site","technology-radar","zensical"],"created_at":"2026-05-21T05:18:39.107Z","updated_at":"2026-06-08T06:01:38.508Z","avatar_url":"https://github.com/landerox.png","language":"CSS","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!-- markdownlint-disable MD041 MD033 --\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg\n    src=\"./content/en/assets/images/banner.svg\"\n    width=\"380\"\n    alt=\"landerox.com Banner\"\n  /\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003c!-- markdownlint-disable MD013 --\u003e\n  \u003ca href=\"https://landerox.com\"\u003e\u003cimg src=\"https://img.shields.io/website?url=https%3A%2F%2Flanderox.com\u0026label=landerox.com\" alt=\"Website\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/landerox/landerox.github.io/actions/workflows/deploy.yml\"\u003e\u003cimg src=\"https://github.com/landerox/landerox.github.io/actions/workflows/deploy.yml/badge.svg\" alt=\"Deploy\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/landerox/landerox.github.io/actions/workflows/lint.yml\"\u003e\u003cimg src=\"https://github.com/landerox/landerox.github.io/actions/workflows/lint.yml/badge.svg\" alt=\"Lint\" /\u003e\u003c/a\u003e\n  \u003ca href=\"pyproject.toml\"\u003e\u003cimg src=\"https://img.shields.io/badge/python-3.13%2B-blue?logo=python\u0026logoColor=white\" alt=\"Python\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/astral-sh/uv\"\u003e\u003cimg src=\"https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/uv/main/assets/badge/v0.json\" alt=\"uv\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/zensical/zensical\"\u003e\u003cimg src=\"https://img.shields.io/badge/Zensical-0.0.44-FF9100\" alt=\"Zensical\" /\u003e\u003c/a\u003e\n  \u003cbr /\u003e\n  \u003ca href=\"https://scorecard.dev/viewer/?uri=github.com/landerox/landerox.github.io\"\u003e\u003cimg src=\"https://api.securityscorecards.dev/projects/github.com/landerox/landerox.github.io/badge\" alt=\"OpenSSF Scorecard\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://www.bestpractices.dev/projects/12835\"\u003e\u003cimg src=\"https://www.bestpractices.dev/projects/12835/badge\" alt=\"OpenSSF Best Practices\" /\u003e\u003c/a\u003e\n  \u003ca href=\"https://www.bestpractices.dev/projects/12835\"\u003e\u003cimg src=\"https://www.bestpractices.dev/projects/12835/baseline\" alt=\"OpenSSF Baseline\" /\u003e\u003c/a\u003e\n  \u003ca href=\"LICENSE-CONTENT\"\u003e\u003cimg src=\"https://img.shields.io/badge/content%20license-CC%20BY%204.0-lightgrey\" alt=\"Content License: CC BY 4.0\" /\u003e\u003c/a\u003e\n  \u003c!-- markdownlint-enable MD013 --\u003e\n\u003c/p\u003e\n\n\u003c!-- markdownlint-enable MD033 --\u003e\n\nWelcome to the source code of my personal and professional digital space.\n\nThis repository powers [landerox.com](https://landerox.com) (and its [Spanish\nversion](https://landerox.com/es/)), a bilingual platform dedicated to **Data\nPlatforms, Cloud Architecture, and Data \u0026 AI Engineering**.\n\nMy goal in making this repository public is to provide transparency into my\nengineering practices. You are welcome to explore the codebase to review the\nCI/CD pipelines, understand the site's architecture, or use my workflows as a\nreference for your own projects.\n\n\u003e [!TIP]\n\u003e **Looking to build your own personal site with this theme?**\n\u003e Instead of using this repository as a starting point (which contains my\n\u003e personal copy, bio, and branding), please use the official, unbranded, and\n\u003e ready-to-use template:\n\u003e 👉 **[Zensical Slate Theme Template](https://github.com/landerox/zensical-slate-theme)**\n\n---\n\n## 🔍 What's Inside\n\nThe site's content is structured to provide value on both technical and\nstrategic levels:\n\n1. **Personal Positioning**: An overview of my professional background,\n   technical focus areas, and how I collaborate with engineering teams to\n   build scalable architectures.\n2. **Engineering Projects**: Detailed breakdowns of reference implementations,\n   architectural patterns, and real-world solutions I have developed.\n3. **Technology Radar**: A curated, opinionated tracking of tools, ecosystems,\n   and frameworks, categorized by their current maturity and adoption level.\n\n## 🛠️ Architecture \u0026 Tech Stack\n\nThis project is built with a focus on speed, strict dependency management, and\nlong-term maintainability, leveraging modern tools from the Python ecosystem:\n\n- **Static Generation**: [Zensical](https://zensical.org) — A highly extensible\n  and minimalist Python static site generator.\n- **Environment Management**: [`uv`](https://github.com/astral-sh/uv) — Used\n  for deterministic and exceptionally fast dependency resolution.\n- **Task Automation**: [`just`](https://github.com/casey/just) — Serves as the\n  central command runner for local development workflows.\n- **Infrastructure**: Continuous deployment to **GitHub Pages** orchestrated via\n  **GitHub Actions**.\n\n\u003e **Note on Architecture:** I maintain a detailed log of my architectural\n\u003e choices. If you are curious about the reasoning behind this stack, please\n\u003e refer to [`docs/decisions.md`](docs/decisions.md) and\n\u003e [`docs/tooling.md`](docs/tooling.md).\n\n## 🚀 Local Development\n\nIf you wish to explore the development environment or run the site locally, the\nsetup is designed to be frictionless.\n\n### 📦 Option A: Dev Container (Recommended)\n\nThis is the cleanest approach, ensuring your local environment remains isolated:\n\n1. Open this repository in **VS Code** with the **Dev Containers** extension\n   installed (or use GitHub Codespaces).\n2. The environment will automatically provision Python 3.13, `uv`, `just`, and\n   all necessary linting/validation tools.\n\n### 💻 Option B: Bare-Metal Installation\n\nIf you prefer running it directly on your machine, ensure you have **Python\n3.13+**, [`uv`](https://github.com/astral-sh/uv), and\n[`just`](https://github.com/casey/just) installed:\n\n```bash\n# 1. Clone the repository\ngit clone https://github.com/landerox/landerox.github.io.git\ncd landerox.github.io\n\n# 2. Install dependencies via uv\njust sync\n\n# 3. Start the development server\njust serve               # English server (http://127.0.0.1:8000)\njust serve-es            # Spanish server (http://127.0.0.1:8001)\n```\n\n*Tip: Running `just` in your terminal with no arguments will display a full list\nof available automated tasks (e.g., building, linting, link validation).*\n\n## 📂 Repository Structure\n\nKey directories and files to help you navigate the codebase:\n\n- `content/en/` \u0026 `content/es/` — The markdown source files containing the\n  bilingual content.\n- `zensical*.toml` — The core configuration files for the static site generator.\n- `.github/workflows/` — CI/CD pipelines governing deployments, security scans\n  (OpenSSF), and code quality.\n- `docs/` — Internal documentation, including style guidelines, repository\n  structure, and maintenance runbooks.\n- `CHANGELOG.md` — Manually curated release notes following the Keep a Changelog\n  standard.\n\n## 🤝 Contributing\n\nWhile this is a personal site, technical corrections, bug reports, or\nsuggestions are highly appreciated. Please refer to the [Contributing\nGuidelines](.github/CONTRIBUTING.md) before opening an Issue or submitting a\nPull Request.\n\n## 📄 License\n\nTo maintain a clear boundary between the open-source engine and my personal\nintellectual property, this repository operates under a dual-license model:\n\n- **Source Code** (`pyproject.toml`, `.github/`, scripts, tooling\n  configurations) is released under the [MIT License](LICENSE).\n- **Site Content** (Markdown files under `content/`, images, and authored prose)\n  is released under the [Creative Commons Attribution 4.0 International License\n  (CC-BY-4.0)](LICENSE-CONTENT).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flanderox%2Flanderox.github.io","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flanderox%2Flanderox.github.io","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flanderox%2Flanderox.github.io/lists"}