Changelog

What's new

Track updates, improvements, and changes across the Impacta RED platform

Bug Fix Storefront

Workshop times now stay in Chile time

Workshop session times are now saved and displayed consistently in Chile time across the admin, Shopify, and the storefront. Workshops created before this fix may need to be opened and republished once to update their stored session time.

#storefront #sessions #timezone
Esteban
Security Admin

Documented admin app usage of Shopify Storefront API token

The secret rotation runbook now reflects that the admin app uses the Shopify Storefront API token (not just the storefront). Rotating this token in Shopify without updating the admin project's Vercel environment variables caused the "Regenerar páginas del storefront" admin action to fail with a 401 Unauthorized error. The runbook now lists both apps and both env vars to update, plus a redeploy reminder and a verification step for the admin action.

#admin #shopify #security #runbook
Esteban
Improvement Storefront

Ticket quantity now shown in booking, gift, and reminder emails

Workshop purchase and gift emails now display "Cantidad de tickets: X" when a booking includes more than one ticket. The quantity also appears on the ticket page and the order confirmation screen. Single-ticket bookings continue to render without the line to keep the layout clean.

#email #tickets #gifts #bookings
Esteban
Improvement Admin

Unified actividades and borradores tabs in tallerista editor

The tallerista editor and profile view no longer split workshops into separate "Actividades" and "Borradores" tabs. A single "Actividades" tab now shows all workshops with their Shopify sync status clearly indicated — synced, pending changes, not synced, or archived — using the same status badges as the main actividades list. Edit links route to the right editor based on sync state. Over 2,000 lines of dead code were removed in the process.

#admin #talleristas #workshops #ux
Esteban
Bug Fix Infrastructure

Supabase backup workflow repaired

Fixed the scheduled database backup workflow, which was failing because the Supabase CLI's pooler routing could not reach the database. Backups now use a direct database connection, removing the broken `supabase link` step and the access-token dependency. Also corrected the stale database password and GitHub backup repo configuration that were preventing backups from running and being listed in the admin UI.

#supabase #backups #ci
Esteban
Feature Admin

Focal point picker for workshop images

Admins can now set a focal point on each workshop image so that automatic cropping preserves the most important part of the photo. The focal point picker is available in the Imagenes tab of the workshop editor, and the selected point is used across the storefront — workshop cards, tallerista profile pages, and hero sections — ensuring consistent framing at every aspect ratio.

#admin #workshops #images #storefront
Esteban
Feature Shopify

Shopify order webhook activated for gift workshop email flow

Activated the Shopify `orders/create` webhook so workshop purchases automatically create bookings and trigger gift emails. Gift recipients now receive a `BookingConfirmationEmail` with a QR code attachment, and the buyer receives a `GiftSentEmail` confirmation. Added an idempotent webhook registration script and a diagnostic status endpoint to verify the subscription is active.

#shopify #webhook #email #gifts #resend
Esteban
Improvement Storefront

Unified storefront contact form with the shared admin pipeline

The `/nosotros` contact form now submits through the same internal pipeline used by `/ayuda` and `/postular`, with its subject routed as `contactanos` behind the scenes. This ensures every storefront contact and tallerista application is persisted consistently and confirmation emails are logged end-to-end.

#forms #contact #storefront
Esteban
Bug Fix Storefront

Guard photo URLs to prevent broken images

Photo URLs in tallerista profiles and workshop listings are now validated before rendering, preventing broken images caused by malformed or missing URLs.

#storefront #images #talleristas
Esteban
Improvement Admin

Per-tallerista bucket creation with auto-ensure on upload

Each tallerista now gets their own storage bucket, created automatically when images are uploaded. This isolates assets per profile and improves the admin workflow when managing tallerista photos.

#admin #storage #talleristas
Esteban
Feature Admin

Read-only mode for workshop managers and draft manager

Added read-only access mode for workshop managers, plus a dedicated draft management interface for coordinating workshops before they go live.

#admin #workshops #permissions
Esteban
Infrastructure Infrastructure

Email templates moved to shared package

All transactional email templates were moved from individual apps into the shared package, plus new sales email templates were added. This removes duplication and ensures consistent branding across all email communications.

#email #shared #refactor
Esteban
Feature Admin

Draft workshop linking in tallerista detail

Tallerista profiles now support linking draft workshops directly from the detail view, streamlining the process of assigning workshops to instructors.

#admin #workshops #talleristas
Esteban
Feature Admin

Publish draft workshops to Shopify

Draft workshops can now be published directly to the Shopify store from the admin panel. Once published, they appear on the public storefront automatically.

#admin #shopify #publishing
Esteban
Improvement Infrastructure

CSV utilities extracted to shared library

Common CSV processing logic was extracted from individual scripts into a shared library, making it reusable across seed scripts, data imports, and future reporting tools.

#shared #csv #scripts
Esteban
Bug Fix Infrastructure

Unified all contact emails

Contact forms, email templates, and configuration across all apps now point to a single contact address. This ensures no messages are missed across different channels.

#email #configuration #contact
Esteban
Feature Scripts

Auto-map tallerista folders to database slugs

A new script automatically maps tallerista image folders to database slugs, removing the need for manual folder-to-ID mapping during tallerista onboarding and image uploads.

#scripts #talleristas #onboarding
Esteban
Improvement Admin

Live preview updates on tallerista edit page

Changes made on the tallerista edit page now show a live preview in real time, reducing the back-and-forth needed to verify edits before saving.

#admin #talleristas #ux
Esteban
Infrastructure Infrastructure

Database migrations squashed and cleaned

Consolidated 11 incremental database migrations into 5 clean, logical migration files. This simplifies new developer onboarding and makes the schema easier to reason about.

#database #migrations #supabase
Esteban
Security Shopify

Auto-refresh OAuth tokens for Shopify API

Replaced the static admin API token with automatic OAuth token refresh for Shopify. Admin operations now use a secure, automatically rotating token cycle instead of a manually configured static key.

#shopify #oauth #security
Esteban
Feature Admin

Workshop selection added to tallerista edit page

Admin users can now select and manage which workshops a tallerista is associated with directly from the edit page, replacing the previous manual workflow.

#admin #workshops #talleristas
Esteban
Infrastructure Infrastructure

Seed infrastructure for local dev and testing

Organized seed scripts and test data to work across local, staging, and CI environments. Added seed commands to package.json for easy test data generation.

#database #seeds #testing
Esteban
Feature Storefront

Feature flags for stats and testimonials

Added feature flags to control the visibility of stats and testimonial sections across the storefront, allowing the marketing team to toggle content without code changes.

#storefront #features #content
Esteban
Improvement Admin

Optimistic updates for draft workshop linking

Draft workshop linking operations in the admin panel now use optimistic UI updates, making the interface feel instant even when waiting for Shopify API confirmation.

#admin #shopify #ux #performance
Esteban
Improvement Admin

Replaced date picker with shadcn/ui Calendar

Migrated all date inputs from react-datepicker to the shadcn/ui Calendar component, improving consistency with the rest of the admin UI and reducing bundle size.

#admin #ui #dependencies
Esteban
Improvement Infrastructure

Actividades seed with soft codes and multi-line fix

Added a comprehensive seed script for actividades with soft code support, fixing an issue where multi-line CSV data was incorrectly parsed.

#database #seeds #csv
Esteban
Feature Storefront

Draft workshops on public tallerista profiles

Tallerista public profiles now show their draft workshops with a bookmark-style indicator, helping visitors discover upcoming workshops before they are fully published.

#storefront #talleristas #workshops
Esteban
Feature Admin

Draft workshops edit and tallerista-workshop linking

Added full CRUD for draft workshops in the admin panel, including the ability to link workshops to talleristas during editing.

#admin #workshops #talleristas
Esteban
Improvement Infrastructure

ISO datetime storage for sessions

Session datetimes are now stored as ISO 8601 strings instead of display-formatted text, enabling proper date comparisons, sorting, and timezone handling across the platform.

#database #sessions #data-model
Esteban
Improvement Admin

Draft workshops visible in admin actividades list

The admin actividades list now shows draft workshops alongside published ones, with clear status indicators so the team can plan upcoming offerings.

#admin #workshops #actividades
Esteban
Security Infrastructure

Environment files encrypted with dotenvx for secure sharing

Encrypted all application environment files using dotenvx public-key cryptography. Eliminated insecure secret sharing via Slack/email. Private keys distributed via Bitwarden password manager. Enables committed .env files with encrypted secrets while keeping private keys gitignored.

#security #dotenvx #encryption
Esteban
Infrastructure Infrastructure

Turborepo adopted for monorepo task orchestration

Adopted Turborepo as the monorepo task runner. Single `pnpm dev` command now starts all applications concurrently. Build caching significantly speeds up CI and local rebuilds. Dependency-aware builds ensure shared packages compile before applications.

#turbo #monorepo #build
Esteban
Improvement Infrastructure

Storybook consolidated into dedicated monorepo app

Consolidated Storybook into a dedicated apps/storybook/ application. Single Storybook instance now serves all packages across the monorepo including storefront, admin, and shared components. Stories remain co-located with components for discoverability.

#storybook #monorepo #ui
Esteban
Improvement Storefront

FAQ content migrated to Markdown for easier editing

Migrated FAQ content from Shopify Pages JSON to Markdown format. Non-technical stakeholders can now edit FAQ copy directly in Google Docs and convert to Markdown. Eliminated bidirectional sync complexity and enabled rich formatting (links, bullet lists, bold text) in answers.

#faq #markdown #content
Esteban
Infrastructure Infrastructure

Email infrastructure designed with Resend and React Email

Designed the email architecture using Resend for transactional emails with React Email templates. Planned migration path to Amazon SES for scale. Configured SPF, DKIM, and DMARC for mail.impacta.red deliverability.

#email #resend #react-email
Esteban
Infrastructure Infrastructure

Gitmoji conventions established for commit message standardization

Established gitmoji + Conventional Commits standard for all repository commits. Defined emoji-to-type mapping for features, fixes, refactoring, docs, and more. Created the /commit skill to automate properly formatted commits across AI agents.

#gitmoji #conventions #git
Esteban
Infrastructure Infrastructure

GSD workflow framework adopted for AI-driven development

Adopted the GSD (Get Shit Done) framework to structure AI-driven development. Established phase-based planning with research, execution, and verification loops. Created persistent state management across sessions via .planning directory with PROJECT.md, ROADMAP.md, and STATE.md.

#gsd #workflow #ai
Esteban
Infrastructure Infrastructure

MCP tools adopted for enhanced AI agent capabilities

Adopted Model Context Protocol (MCP) tools including Serena for semantic code operations and Context7 for documentation retrieval. Enhanced AI agent capabilities with symbol manipulation, find references, and project memory management.

#mcp #serena #context7 #ai
Esteban
Infrastructure Infrastructure

Platform foundation and technology stack defined

Established the core technology foundation for IMPACTA.red with a TypeScript monorepo using Next.js, React, and Tailwind CSS. Defined the monorepo structure with pnpm workspaces to support three applications (storefront, admin, docs) and shared packages. Selected Auth.js for authentication with Google OAuth, email/password, and magic links. Chose Vercel for hosting with a clear migration path to self-managed infrastructure as we scale.

#architecture #stack #monorepo
Esteban
Feature Shopify

Shopify headless commerce selected for workshop marketplace

Selected Shopify as the headless commerce engine for the workshop marketplace. This enables robust product management, inventory tracking, and checkout flows while maintaining full control over the frontend experience. Integrated Shopify Storefront API for product catalog and cart management.

#shopify #headless #ecommerce
Esteban
Feature Storefront

Initial storefront UI scaffolded with AI-generated components

Generated the initial storefront UI using Rocket.new, creating 15+ pages including homepage, workshop catalog, tallerista profiles, checkout flow, and admin dashboard. Established the design system with turquoise (#00A19B) as the primary brand color, Inter typography, and dual visual intensity for student vs teacher experiences.

#ui #rocket-new #mvp
Esteban

Category

App

Month