refactor: relocate landing page directory to guacamalla-landing/landing - #32
Merged
Merged
Conversation
There was a problem hiding this comment.
Pull request overview
This PR relocates the marketing/landing SPA into guacamalla-landing/landing, updates root scripts/build wiring, and keeps the backend serving the compiled static landing at GET /.
Changes:
- Updated root scripts/workspaces and Docker build steps to use
guacamalla-landing/landinginstead of the previous landing path. - Added a new Vite + React + Tailwind landing app (including site sections, styling, and UI primitives).
- Updated backend static-file serving path to point at the new landing
distoutput.
Reviewed changes
Copilot reviewed 3 out of 88 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| package.json | Update workspace list and scripts to run landing from guacamalla-landing/landing. |
| guacamalla-landing/landing/vite.config.ts | New Vite config (React/Tailwind plugins + dev proxy to backend). |
| guacamalla-landing/landing/tsconfig.json | New TS config for the landing app. |
| guacamalla-landing/landing/src/styles.css | New Tailwind v4-based global styles + custom animations/utilities. |
| guacamalla-landing/landing/src/main.tsx | New React entrypoint mounting <App />. |
| guacamalla-landing/landing/src/App.tsx | New landing page composition (Nav/Hero/etc.). |
| guacamalla-landing/landing/src/lib/utils.ts | cn() helper (clsx + tailwind-merge). |
| guacamalla-landing/landing/src/lib/reveal.ts | IntersectionObserver-based reveal-on-scroll hook. |
| guacamalla-landing/landing/src/lib/i18n.ts | Lightweight module-level i18n store + translations (es/en). |
| guacamalla-landing/landing/src/hooks/use-mobile.tsx | Mobile breakpoint hook. |
| guacamalla-landing/landing/src/components/ui/accordion.tsx | New UI primitive (accordion). |
| guacamalla-landing/landing/src/components/ui/alert-dialog.tsx | New UI primitive (alert dialog). |
| guacamalla-landing/landing/src/components/ui/alert.tsx | New UI primitive (alert). |
| guacamalla-landing/landing/src/components/ui/aspect-ratio.tsx | New UI primitive (aspect ratio). |
| guacamalla-landing/landing/src/components/ui/avatar.tsx | New UI primitive (avatar). |
| guacamalla-landing/landing/src/components/ui/badge.tsx | New UI primitive (badge). |
| guacamalla-landing/landing/src/components/ui/breadcrumb.tsx | New UI primitive (breadcrumb). |
| guacamalla-landing/landing/src/components/ui/button.tsx | New UI primitive (button + variants). |
| guacamalla-landing/landing/src/components/ui/calendar.tsx | New UI primitive (calendar/day-picker wrapper). |
| guacamalla-landing/landing/src/components/ui/card.tsx | New UI primitive (card). |
| guacamalla-landing/landing/src/components/ui/carousel.tsx | New UI primitive (Embla carousel wrapper). |
| guacamalla-landing/landing/src/components/ui/chart.tsx | New UI primitive (Recharts wrapper + theming). |
| guacamalla-landing/landing/src/components/ui/checkbox.tsx | New UI primitive (checkbox). |
| guacamalla-landing/landing/src/components/ui/collapsible.tsx | New UI primitive (collapsible). |
| guacamalla-landing/landing/src/components/ui/command.tsx | New UI primitive (cmdk command palette wrapper). |
| guacamalla-landing/landing/src/components/ui/context-menu.tsx | New UI primitive (context menu). |
| guacamalla-landing/landing/src/components/ui/dialog.tsx | New UI primitive (dialog). |
| guacamalla-landing/landing/src/components/ui/drawer.tsx | New UI primitive (drawer). |
| guacamalla-landing/landing/src/components/ui/dropdown-menu.tsx | New UI primitive (dropdown menu). |
| guacamalla-landing/landing/src/components/ui/form.tsx | New UI primitive (react-hook-form helpers). |
| guacamalla-landing/landing/src/components/ui/hover-card.tsx | New UI primitive (hover card). |
| guacamalla-landing/landing/src/components/ui/input-otp.tsx | New UI primitive (OTP input wrapper). |
| guacamalla-landing/landing/src/components/ui/input.tsx | New UI primitive (input). |
| guacamalla-landing/landing/src/components/ui/label.tsx | New UI primitive (label). |
| guacamalla-landing/landing/src/components/ui/menubar.tsx | New UI primitive (menubar). |
| guacamalla-landing/landing/src/components/ui/navigation-menu.tsx | New UI primitive (navigation menu). |
| guacamalla-landing/landing/src/components/ui/pagination.tsx | New UI primitive (pagination). |
| guacamalla-landing/landing/src/components/ui/popover.tsx | New UI primitive (popover). |
| guacamalla-landing/landing/src/components/ui/progress.tsx | New UI primitive (progress). |
| guacamalla-landing/landing/src/components/ui/radio-group.tsx | New UI primitive (radio group). |
| guacamalla-landing/landing/src/components/ui/resizable.tsx | New UI primitive (resizable panels wrapper). |
| guacamalla-landing/landing/src/components/ui/scroll-area.tsx | New UI primitive (scroll area). |
| guacamalla-landing/landing/src/components/ui/select.tsx | New UI primitive (select). |
| guacamalla-landing/landing/src/components/ui/separator.tsx | New UI primitive (separator). |
| guacamalla-landing/landing/src/components/ui/sheet.tsx | New UI primitive (sheet/dialog wrapper). |
| guacamalla-landing/landing/src/components/ui/sidebar.tsx | New UI primitive (sidebar system). |
| guacamalla-landing/landing/src/components/ui/skeleton.tsx | New UI primitive (skeleton). |
| guacamalla-landing/landing/src/components/ui/slider.tsx | New UI primitive (slider). |
| guacamalla-landing/landing/src/components/ui/sonner.tsx | New UI primitive (toast wrapper). |
| guacamalla-landing/landing/src/components/ui/switch.tsx | New UI primitive (switch). |
| guacamalla-landing/landing/src/components/ui/table.tsx | New UI primitive (table). |
| guacamalla-landing/landing/src/components/ui/tabs.tsx | New UI primitive (tabs). |
| guacamalla-landing/landing/src/components/ui/textarea.tsx | New UI primitive (textarea). |
| guacamalla-landing/landing/src/components/ui/toggle-group.tsx | New UI primitive (toggle group). |
| guacamalla-landing/landing/src/components/ui/toggle.tsx | New UI primitive (toggle). |
| guacamalla-landing/landing/src/components/ui/tooltip.tsx | New UI primitive (tooltip). |
| guacamalla-landing/landing/src/components/site/Asterisk.tsx | New site section asset/icon component. |
| guacamalla-landing/landing/src/components/site/Architecture.tsx | New site section (architecture). |
| guacamalla-landing/landing/src/components/site/Footer.tsx | New site footer section. |
| guacamalla-landing/landing/src/components/site/Hero.tsx | New hero section (uses MagicRings). |
| guacamalla-landing/landing/src/components/site/HowItWorks.tsx | New “How it works” section (mesh viz). |
| guacamalla-landing/landing/src/components/site/Logo.tsx | New logo component (mask-image SVG). |
| guacamalla-landing/landing/src/components/site/Nav.tsx | New nav bar + language toggle. |
| guacamalla-landing/landing/src/components/site/ProofBand.tsx | New proof/stat band section. |
| guacamalla-landing/landing/src/components/site/ProofPacket.tsx | New proof packet section. |
| guacamalla-landing/landing/src/components/site/Showcase.tsx | New app showcase section (screenshot). |
| guacamalla-landing/landing/src/components/site/Waitlist.tsx | New waitlist form + API POST. |
| guacamalla-landing/landing/src/components/MagicRings.jsx | New Three.js shader effect background component. |
| guacamalla-landing/landing/src/components/MagicRings.css | Styling for MagicRings container/canvas. |
| guacamalla-landing/landing/src/components/MagicRings.d.ts | Type declarations for MagicRings JS component. |
| guacamalla-landing/landing/package.json | Landing app dependencies/scripts (Vite build). |
| guacamalla-landing/landing/index.html | Landing HTML shell + meta tags. |
| guacamalla-landing/landing/eslint.config.js | Landing ESLint setup. |
| guacamalla-landing/landing/components.json | shadcn/ui config for the landing app. |
| guacamalla-landing/landing/bunfig.toml | Bun install guard configuration for the landing app. |
| guacamalla-landing/landing/AGENTS.md | Agent note about avoiding history rewrites (Lovable sync). |
| guacamalla-landing/landing/.prettierrc | Prettier configuration for the landing app. |
| guacamalla-landing/landing/.prettierignore | Prettier ignore list for the landing app. |
| guacamalla-landing/landing/.gitignore | Landing-local ignores (dist/node_modules/etc.). |
| guacamalla-landing/landing/.env.example | Example env var for waitlist endpoint override. |
| guacamalla-landing/landing/.claude/settings.json | Claude/Lovable plugin settings for the landing app. |
| Dockerfile | Update build to install/build the relocated landing app. |
| backend/src/index.ts | Serve static landing from new guacamalla-landing/landing/dist path. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Collaborator
There was a problem hiding this comment.
why to chance the path 'web/landing' to 'guacamalla-landing/landing', seems unnecessary redundant (?)
RodrigoRivasCo
approved these changes
Jul 3, 2026
RodrigoRivasCo
left a comment
Collaborator
There was a problem hiding this comment.
My only honest doubt: the renaming "web/landing" -> "guacamalla-landing/landing" is on purpose or the path could remain simplier? Reply that whenever you can.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
¿Qué hace este PR?
Permite acceder a la nueva la landing page de el proyecto centralizando todo
¿Por qué?
nuevo feature
¿Cómo probarlo?
correr el BE y entrar a la ruta /
Checklist
./gradlew testDebugUnitTest/bun test)/ingesto la firma Ed25519, se verificó el cascade de rechazo