App 1:
App 2:
.env
-0
+11
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
.env.example
-0
+1
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/app.css
-0
+16
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/components/footer.tsx
-0
+109
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/components/header.tsx
-0
+133
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/components/product-card.tsx
-0
+54
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/db.server.ts
-0
+9
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/domain/brand.server.ts
-0
+9
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/domain/category.server.ts
-0
+16
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/domain/products.server.ts
-0
+207
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/hooks/use-intersection-observer.ts
-0
+28
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/root.tsx
-6
+30
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/routes/_landing._index/categories-section.tsx
-0
+45
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/routes/_landing._index/featured-products.section.tsx
-0
+43
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/routes/_landing._index/features-section.tsx
-0
+51
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/routes/_landing._index/hero-section.tsx
-0
+61
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/routes/_landing._index/newsletter-section.tsx
-0
+25
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/routes/_landing._index/route.tsx
-3
+36
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/routes/_landing.about.tsx
-3
+217
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/routes/_landing.cart.tsx
-7
+263
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/routes/_landing.contact.tsx
-3
+321
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/routes/_landing.products.$productId.tsx
-7
+403
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/routes/_landing.products._index/product-filters.tsx
-0
+109
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/routes/_landing.products._index/route.tsx
-0
+211
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/routes/_landing.products._index/use-infinite-product-fetcher.ts
-0
+50
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/routes/_landing.products._index.tsx
-7
+0
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/routes/_landing.products.tsx
-9
+0
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/routes/_landing.terms-of-service.tsx
-5
+192
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/routes/_landing.terms-of-use.tsx
-3
+203
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/routes/_landing.tsx
-11
+15
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/routes.ts
-32
+4
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
app/utils/metadata.ts
-0
+40
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
package.json
-32
+47
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
prisma/migrations/20251002111449_init_project/migration.sql
-0
+67
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
prisma/migrations/20251003085813_add_comments_to_product_review/migration.sql
-0
+2
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
prisma/migrations/20251004101747_add_category_images_to_categories/migration.sql
-0
+22
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
prisma/migrations/migration_lock.toml
-0
+3
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
prisma/schema.prisma
-0
+86
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
prisma/seed.ts
-0
+156
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
prisma.config.ts
-0
+13
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
tests/e2e/metadata.test.ts
-0
+34
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
tests/e2e/routing.test.ts
-48
+49
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
tests/e2e/styling.test.ts
-0
+24
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2
vite.config.ts
-10
+16
App 1
Copy app 2 file to app 1 (Option+Command to sync without opening)
Copy app 1 file to app 2 (Option+Command to sync without opening)
App 2