This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
BovPro landing page — a Jekyll static site for the BovPro cattle herd management mobile app. All content is in Brazilian Portuguese (PT-BR). Hosted at bovpro.com.br via HostGator FTP, deployed automatically through GitHub Actions on push to main.
# Install dependencies
./run-install.sh # or: bundle install
# Development server with live reload (http://localhost:4000)
./run-dev.sh
# Production build (output to _site/)
./run-build.sh
./run-dev.sh uses both _config.yml and _config_dev.yml (dev overrides: no baseurl, livereload enabled, incremental builds, drafts enabled).
minimal-mistakes-jekyll)github-pages ~> 232 gem ensures GitHub Pages compatibilityPages are Markdown files with YAML frontmatter:
index.md — Landing page (splash layout with hero, feature rows, CTAs)about.md — About page describing BovPro and Mutum Softbovpro/politica-de-privacidade.md — Privacy policy404.html — Custom 404 page in Portuguese_config.yml — Site-wide settings (title, URL, theme, plugins)
title: BovProemail: bovpro@mutumsoft.comurl: https://bovpro.com.brbaseurl: /theme: minimal-mistakes-jekyllencoding: utf-8_config_dev.yml — Development overrides (merged via --config flag)_includes/head/custom.html — Custom <head> content (UTF-8 charset)assets/images/ — Static image assets (hero image, logo)GitHub Actions workflow (.github/workflows/build.yml):
JEKYLL_ENV=production and JEKYLL_URL=https://bovpro.com.br_site/ to HostGator via FTP (SamKirkland/FTP-Deploy-Action@v4.3.5)FTP_SERVER, FTP_USERNAME, FTP_PASSWORDThe workflow uses these GitHub Secrets:
FTP_SERVER — FTP server hostname (e.g., ftp.veredaseburitis.com.br)FTP_USERNAME — FTP account username (e.g., bovpro.com.br)FTP_PASSWORD — FTP account passwordTo test FTP connection locally:
# Using lftp (recommended)
brew install lftp
lftp -u username ftp://hostname
# Or using sftp with password auth
sftp -o PreferredAuthentications=password -o PubkeyAuthentication=no user@hostname
run-[action].shlayout and titleheader section with overlay:
header:
overlay_color: "#2e7d32"
overlay_filter: "0.5"
overlay_image: /assets/images/hero-cattle.jpg
actions:
- label: "Button Text"
url: "#section-id"
feature_row include in layoutAfter changing _config.yml, restart the development server:
# Kill server (Ctrl+C), then restart:
./run-dev.sh
assets/images/hero-cattle.jpg (currently SVG placeholder)The _site/ directory is generated by Jekyll:
.gitignore — do not commit# Full build test
bundle exec jekyll build
# Development with live reload
./run-dev.sh
# Check for build warnings
bundle exec jekyll build 2>&1 | grep -i warning
./run-build.sh — no errors./run-dev.sh — renders correctly/, /about/, /bovpro/politica-de-privacidade.html, /404.htmlhero-cattle.jpg is an SVG placeholder. Replace with real cattle/pasture photo.assets/images/bovpro-logo.png when available..gitignore (for consistency with other projects).| Task | Command |
|---|---|
| Install deps | ./run-install.sh |
| Dev server | ./run-dev.sh |
| Build | ./run-build.sh |
| Full build | bundle exec jekyll build |
| Check theme | grep theme _config.yml |
Before first production deployment:
index.markdown (duplicate).gitignore to include Gemfile.lock, .DS_Storemain: git add . && git commit -m "feat: initial bovpro landing page" && git pushserver-dir in workflow matches HostGator document rootTest deploy automation (make change, push, verify auto-deploy)
PLANO_*.md) document project setup and deployment checklists