MolinoPro

molino-critical-viability-snapshot

Master Codebase Guidebook
Markdown + HTML Dev-Docs Renderer - Frontend Client Module

Default Index
Open README.md
Root: README.md_PRD
Milestones
H1Molino Critical Viability Snapshot

Date: 2026-05-02 | Code-Verified Status + New Viability Paths

H2Tech Stack (Verified)

Next.js 16.1.6, React 19.2.3, Prisma 7.7.0, Better-SQLite3, Vercel-ready

H2Code Structure

Routes: /trips, /experiences, /magazine, /milestones, /products, /pricing, /assets, /studio, /documents, /sponsor
Prisma Models (partial): User, Trip, Experience, Product, BookingBundle, BookingItem, Document, Project, Order, Offer, LineItem
Key Dependencies: @prisma/client, openai, @react-pdf/renderer, lucide-react, tailwindcss 4, next-auth, qrcode

H2Verified Implemented Features
  • Public trip/experience browsing (app/trips/page.tsx, app/experiences/page.tsx)
  • FareHarbor Lightframe modal integration (hook-useFareHarborBookButton.tsx)
  • Magazine with static/flipbook layouts (app/magazine/components/)
  • Milestone tracking UI (app/(milestones)/milestones/)
  • Product pricing engine (app/products/actions/product-engine/)
  • Asset generation (poster, skill cards)
  • AI assistant integration (OpenAI dep present)
  • Trip→Offer→Order flow: createOfferFromTrip(), checkoutOffer() (manual payment)
  • Etsy PDF generation: generate-etsy-pdf.ts, /api/trips/[tripId]/export/etsy-pdf
  • DB seeding: Studio journeys seeded via npm run seed:studio-journeys
H2Partial/In-Progress (Code Exists)
  • Commercial pipeline: Trip→Offer→Order ✅ DONE (actions in app/trips/actions/, app/orders/actions/)
  • Booking execution: BookingBundle/BookingItem models defined in schema, migration not deployed
  • Payment processing: Manual payment ✅ ACTIVE (bank transfer/PayPal/cash, no Stripe needed)
  • Document projection: Exists in app/documents/, relation to commercial pipeline incomplete
  • Etsy PDF extraction: ✅ READY (generate-etsy-pdf.ts, 3 product types)
H2External Resources (Code-Verified)
ResourceStatusUsageCode Ref
FareHarbor✅ IntegratedBooking buttons/modalsapp/lib/fareharbor/config.ts
OpenAI✅ IntegratedTrip planner assistantapp/assistant/lib/openai.ts
Google Apps Script⏳ PlannedSheet sync, exportsdev-docs/_PRD/platform/
Etsy🚀 Manual soonPDF outlet storeNot in code yet
Stripe❌ BlockedUse manual payment firstLegacy only (bookings.ts)
Shopify⚪ FutureGlobal storefrontNot started
Vercel✅ ActiveDeploymentnpm run ship
H3External Resource Details

FareHarbor:

  • Account: alandalus-experience
  • Flow IDs: Main 1361158, Group Trip 1362489, City tours 1610878, 1610879, 1610876, 1610877
  • Lightframe API: https://fareharbor.com/embeds/api/v1/?autolightframe=yes
  • Status: ✅ Integrated, next: calendar validation (Phase 7)

OpenAI:

  • Model: gpt-4.1
  • Usage: Trip planner assistant, structured prompts
  • Status: ✅ Integrated, next: Maestro de Ritmos persona (Silk Route)

Google Apps Script:

  • Production API: https://script.google.com/macros/s/AKfycbwVZ_iZYachR-Yy5O2dKvD7eExkPZR1Bpg-_YE7ceIjkK8zV5a-i4VFaj4fpdwq4vvDZg/exec
  • Staging API: https://script.google.com/macros/s/AKfycbxfUsPGiRHwM5n3gnnWYEdVZ2xw4OIcnaqmWPmpiqjqzpzv0IXFFfjQctr9cOJFkCKm/exec
  • Usage: Sheet sync, document generation, email campaigns
  • Status: ⏳ Planned (Phase 6 - Apps Script exports)

Etsy:

  • Status: 🚀 Not yet integrated (manual listing first, no API yet)
  • Future: API integration after 30-50 products, consistent sales
  • Strategy: PDF → app upgrade path (/trips/new, /products/<slug>)
H2New Viability Paths (Added 2026-05-02)
H3Etsy/Asset Extraction Path (Parallel, Low Effort)
  • Extract 3-5 PDFs from existing trips/docs (code exists: /trips/[tripId]/export/pdf)
  • Manual Etsy listings (no API integration needed, zero friction)
  • Link PDF → app upgrade path (existing routes /trips/new, /products/<slug>)
  • Target: First €20 sale within 7-14 days
  • Constraint: Pause Etsy if it slows core pipeline
  • External needed: Etsy seller account (create manually)
  • Time allocation: 20% of weekly dev time (70% core pipeline, 10% content)

First 3 products (high probability of sale):

  1. Granada 3-Day Itinerary
  2. Andalusia Route Planner (multi-city)
  3. Travel Pricing Template (simplified system version)
H3Core Revenue Path (Primary)
  • Complete Trip→Offer→Order (partial code exists in app/trips/actions/)
  • Deploy Prisma migration (BookingBundle/BookingItem models ready in schema)
  • Manual payment first (no Stripe dep needed, skip payment processing setup)
  • Target: First €500+ sale within 14-30 days
  • External needed: None (use bank transfer/PayPal/cash)
  • Execution order:
    1. Run npx prisma migrate deploy (deploy BookingBundle models)
    2. Complete checkoutOffer() action in app/trips/actions/
    3. Wire "Confirm Booking" UI to confirmBookingItem() action
    4. Test full flow: Trip → Quote → Offer → Order (manual payment)
H2Dual Cash Flow Strategy
PathSpeedValueEffortExternal Resources
Etsy extractionFast (days)€20Near-zeroEtsy account
Trip→Offer→OrderSlower€500+In progressNone (manual payment)
Stripe (later)MediumBothNew depStripe account
H2Current Operational Reality (2026-05-02)
  • Project is in active full-time build phase
  • Ongoing financial contribution partially covers living/working capacity
  • System is close to commercial activation (core pipeline nearly complete)
  • Existing work already produces structured outputs (documents, pricing, flows) that can be reused
H2Strategic Shift (Integrated Model)

One unified engine, not separate ideas

Core Engine (final form):

Walk & Talk → PDF Product (entry) → Molino System (core)
→ Module/Upgrade → Service/License → Repeat

Every piece of work produces two outputs:

  • A. Core Commercial Flow (primary): Trip/System → Offer → Order → Payment → Service
  • B. Product Flow (secondary, extracted): Document (Folio) → Structured asset → PDF → Etsy (entry) → Link to Molino → Upgrade
H2Key Insight
  • The system already produces value in multiple forms
  • The constraint is NOT opportunity - it is focused execution under stable conditions to reach revenue
  • PDF-to-system ladder strengthens model by: enabling early validation, creating entry points, building repeatable revenue structure
H2Missing for Viability Activation
  1. ✅ Offer→Order flow complete (manual payment)
  2. 🚀 Browser test full flow with real trip data
  3. 🚀 Generate and list first Etsy PDF (target: 7-14 days)
  4. 🚀 Get first client conversation started (target: 14-30 days)
  5. 🚀 Close first transaction (target: 30-60 days)
H2Decision Point (60-90 days)

Can current conditions sustain 60-90 days to reach revenue?

  • YES → Continue with integrated model
  • NO → Reduce scope, maintain continuity, extend timeline
  1. Verify FareHarbor booking flow in browser
  2. Connect pricing engine to Order commit
  3. Create Etsy seller account for parallel path
H2Viability Assessment
ComponentCode StatusViability Gap
Content browsingBuilt/LockedNone
Booking flowPartialPayment dep + migration
Commercial pipelinePartialComplete Offer→Order
Revenue generationNot startedPayment processing
H2Revised Viability Assessment (With Dual Path)
  • Before: Single path dependency (high pressure, all-or-nothing)
  • Now: Dual path (reduces pressure, same work output monetized twice)
  • Constraint: Etsy must stay subordinate to core pipeline
  • Execution: 70% core pipeline, 20% Etsy extraction, 10% content (per reality check)
  • External resources: All identified, most already integrated or blocked intentionally
H2Summary

Functional content platform with partial commercial infrastructure. Viability achievable by:

  1. Completing in-progress server actions (Trip→Offer→Order)
  2. Deploying pending schema changes (BookingBundle migration)
  3. Using manual payment for first sales (skip Stripe setup)
  4. Extracting 3-5 PDFs for parallel Etsy path (same work, dual monetization)

H2🔮 Future Scope (Post-Revenue, Not Blocking Ship)
H3External Channel Tracking & Sync

For later development (NOT current priority):

ChannelTracking MethodPurposeTimeline
FareHarborManual entry or API webhookReconcile FH bookings with Molino Orders60-90 days
EtsyManual or API (after 30-50 sales)Track Etsy orders, link to PDF products90-120 days
ShopifyAPI integrationReplace manual Etsy, centralize storefront120+ days

Current Critical Path (DO NOT ADD THESE TO SHIP LIST):

  1. ✅ Activate Trip→Offer→Order (manual payment)
  2. ✅ Generate 3 Etsy PDFs
  3. ✅ Close first transaction (€20+ from Etsy or €500+ from trip)
  4. 🛑 STOP → Test all workflows manually for 1-2 months

Principle: External channel tracking is NOT part of current urgent shipping features. These are operational nice-to-haves after revenue proves the system works.

Next build cycle (post-revenue):

  • Add externalRef field to Order model
  • Build FH webhook endpoint
  • Build Etsy API integration (if justified by sales volume)
  • Migrate from Etsy manual → Shopify (if volume warrants)