Skip to content

deploy to prod#428

Merged
rasca merged 8 commits intomainfrom
dev
Mar 17, 2026
Merged

deploy to prod#428
rasca merged 8 commits intomainfrom
dev

Conversation

@rasca
Copy link
Contributor

@rasca rasca commented Mar 17, 2026

No description provided.

rasca added 8 commits March 17, 2026 09:19
….foundation

- Create /builders/resources page with docs, AI tools, Bradbury dev links, ecosystem projects, hackathon CTA, portal steps, and track ideas
- Add central data file at src/data/resources.js as single source of truth
- Fix referral links from points.genlayer.com to portal.genlayer.foundation
- Fix OG/Twitter meta tags from points.genlayer.foundation to portal.genlayer.foundation
- Replace video placeholder with Cloudinary-hosted hackathon ad video
- Add 64px vertical spacing to Build Once, Earn Forever section
- Combine Requirements and Details into side-by-side layout matching Figma
- Update DoraHacks link to genlayer-bradbury
- Center video vertically and remove border
- Add Chutes, Pathrock Network, Stakeme, and Crouton Digital logos
- Each sponsor card links to their website
- Background color matches each logo's background
- Sponsors display in random order on each page load
- Update DoraHacks link to genlayer-bradbury
The hero banner now supports separate images per breakpoint. Content
managers can upload tablet and mobile variants in the admin, with
automatic fallback to the desktop image. The banner layout also
adjusts on mobile — taller height with top-aligned content card for
better readability.

## Claude Implementation Notes
- backend/contributions/models.py: Added hero_image_tablet, hero_image_mobile
  ImageFields to FeaturedContent (nullable, fallback help text)
- backend/contributions/serializers.py: Extracted shared _build_image_url
  helper, added hero_image_url_tablet and hero_image_url_mobile fields
- backend/contributions/admin.py: Added tablet/mobile fields to Links & Media
  fieldset with fallback description
- backend/contributions/migrations/0039_add_responsive_hero_images.py: Migration
  for new image fields
- frontend/src/components/portal/HeroBanner.svelte: Replaced <img> with <picture>
  element using <source> media queries (1024px, 768px breakpoints). Mobile-first
  layout: items-start + min-h-[480px] on mobile, items-end + min-h-[300px] on
  desktop. Applied same responsive changes to validator banner and loading skeleton.
Basic test coverage for the validator profile CRUD endpoints:
create, read, update for both Asimov and Bradbury node versions.

## Claude Implementation Notes
- backend/validators/tests/test_api.py: New test file with 5 tests covering
  GET/PATCH /api/v1/validators/me/ for profile creation, update, and retrieval
Introduces a commit skill that produces 3-layer commit messages
(product summary, architecture notes, implementation details) and
maintains a human-facing changelog. Also sets git pull to rebase
by default for clean linear history.

## Claude Implementation Notes
- .claude/commands/commit.md: New commit skill with 3-layer message format,
  changelog update step, git history management, and learned preferences section
- CHANGELOG.md: Initialized with Unreleased section
- CLAUDE.md: Replaced attribution section with pointer to commit workflow file
The FeaturedContent model previously used Django ImageField for local file
storage, inconsistent with the rest of the project which uses Cloudinary.
All image fields now use URLField + public_id CharField, matching the
User model pattern.

## Claude Implementation Notes
- backend/contributions/models.py: Replace 4 ImageFields with URLField + public_id pairs (hero, tablet, mobile, avatar)
- backend/contributions/serializers.py: Remove SerializerMethodField helpers, read URL fields directly from model
- backend/contributions/admin.py: Show URL fields instead of file uploads, public_ids as read-only collapsed section
- backend/contributions/management/commands/seed_featured_content.py: Remove local file copy logic, simplified to just create records
- backend/contributions/migrations/0040_convert_featured_images_to_cloudinary.py: Migration for the field conversion
@rasca rasca merged commit 5dcc13a into main Mar 17, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant