feat: phase 1 public site skeleton — layout, routes, CSS, logo pipeline
Ship base Jinja layout (header/nav/main/footer with skip link and aria-current), mobile-first single-file CSS using the ROADMAP palette tokens, and four public routes: /, /about, /contact, /shop. Blog index renders via a stable PostService.list_published() stub returning [] — Phase 2 only swaps the body. About is static placeholder copy, /contact ships an inert form plus a mailto: link driven by ADMIN_CONTACT_EMAIL, /shop shows a "Coming soon" card. Adds a Pillow-based scripts/generate_static_assets.py producing resized logo PNG + WebP, multi-size favicon.ico, and a 180x180 apple-touch-icon on a cream background. Outputs committed for a reproducible build. Also ship docs/MANUAL_TESTING.md with per-route / responsive / a11y / static- asset checklists, and mark Phase 1 complete in docs/ROADMAP.md.
This commit is contained in:
35
app/templates/public/home.html
Normal file
35
app/templates/public/home.html
Normal file
@@ -0,0 +1,35 @@
|
||||
{#
|
||||
Home page / blog index.
|
||||
|
||||
Receives:
|
||||
- posts : list[PostSummary] (empty in Phase 1)
|
||||
- active_nav : str "home"
|
||||
#}
|
||||
{% extends "public/base.html" %}
|
||||
|
||||
{% block title %}Chicken Babies R Us — Home{% endblock %}
|
||||
{% block meta_description %}Updates from Chicken Babies R Us — a small family farm in Morrison, Tennessee.{% endblock %}
|
||||
|
||||
{% block content %}
|
||||
<section class="page-intro">
|
||||
<h1 class="page-intro__title">Welcome to Chicken Babies R Us</h1>
|
||||
<p class="page-intro__lede">
|
||||
A tiny family farm in Morrison, Tennessee. Follow along for updates
|
||||
on our flock, hatching plans, and whatever Head Hen is up to this week.
|
||||
</p>
|
||||
</section>
|
||||
|
||||
<section class="post-list" aria-label="Latest posts">
|
||||
{% if posts %}
|
||||
{% for post in posts %}
|
||||
{% include "public/partials/_post_card.html" %}
|
||||
{% endfor %}
|
||||
{% else %}
|
||||
{# Empty-state copy. Phase 2 seeds a welcome post so this state only
|
||||
ever shows up in unseeded dev databases and tests. #}
|
||||
<div class="post-list__empty">
|
||||
<p>No posts yet — check back soon!</p>
|
||||
</div>
|
||||
{% endif %}
|
||||
</section>
|
||||
{% endblock %}
|
||||
Reference in New Issue
Block a user