├── .env.example ├── .eslintrc.json ├── .gitignore ├── LICENSE ├── README.md ├── app ├── favicon.ico ├── globals.css ├── layout.tsx ├── opengraph-image.png └── page.tsx ├── components.json ├── components ├── card-grid-skeleton.tsx ├── deploy-button.tsx ├── error.tsx ├── image-card.tsx ├── image-search.tsx ├── loading-spinner.tsx ├── match-badge.tsx ├── no-images-found.tsx ├── search-box.tsx ├── suspended-image-search.tsx └── ui │ ├── alert.tsx │ ├── badge.tsx │ ├── button.tsx │ ├── card.tsx │ ├── input.tsx │ └── skeleton.tsx ├── drizzle.config.ts ├── lib ├── ai │ ├── 0-upload.ts │ ├── 1-generate-metadata.ts │ ├── 2-embed-and-save.ts │ └── utils.ts ├── db │ ├── api.ts │ ├── index.ts │ └── schema.ts ├── hooks │ └── use-shared-transition.tsx └── utils.ts ├── next.config.mjs ├── package.json ├── postcss.config.mjs ├── public ├── next.svg └── vercel.svg ├── tailwind.config.ts └── tsconfig.json /.env.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/.env.example -------------------------------------------------------------------------------- /.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "next/core-web-vitals" 3 | } 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/.gitignore -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/README.md -------------------------------------------------------------------------------- /app/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/app/favicon.ico -------------------------------------------------------------------------------- /app/globals.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/app/globals.css -------------------------------------------------------------------------------- /app/layout.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/app/layout.tsx -------------------------------------------------------------------------------- /app/opengraph-image.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/app/opengraph-image.png -------------------------------------------------------------------------------- /app/page.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/app/page.tsx -------------------------------------------------------------------------------- /components.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/components.json -------------------------------------------------------------------------------- /components/card-grid-skeleton.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/components/card-grid-skeleton.tsx -------------------------------------------------------------------------------- /components/deploy-button.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/components/deploy-button.tsx -------------------------------------------------------------------------------- /components/error.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/components/error.tsx -------------------------------------------------------------------------------- /components/image-card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/components/image-card.tsx -------------------------------------------------------------------------------- /components/image-search.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/components/image-search.tsx -------------------------------------------------------------------------------- /components/loading-spinner.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/components/loading-spinner.tsx -------------------------------------------------------------------------------- /components/match-badge.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/components/match-badge.tsx -------------------------------------------------------------------------------- /components/no-images-found.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/components/no-images-found.tsx -------------------------------------------------------------------------------- /components/search-box.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/components/search-box.tsx -------------------------------------------------------------------------------- /components/suspended-image-search.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/components/suspended-image-search.tsx -------------------------------------------------------------------------------- /components/ui/alert.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/components/ui/alert.tsx -------------------------------------------------------------------------------- /components/ui/badge.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/components/ui/badge.tsx -------------------------------------------------------------------------------- /components/ui/button.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/components/ui/button.tsx -------------------------------------------------------------------------------- /components/ui/card.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/components/ui/card.tsx -------------------------------------------------------------------------------- /components/ui/input.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/components/ui/input.tsx -------------------------------------------------------------------------------- /components/ui/skeleton.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/components/ui/skeleton.tsx -------------------------------------------------------------------------------- /drizzle.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/drizzle.config.ts -------------------------------------------------------------------------------- /lib/ai/0-upload.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/lib/ai/0-upload.ts -------------------------------------------------------------------------------- /lib/ai/1-generate-metadata.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/lib/ai/1-generate-metadata.ts -------------------------------------------------------------------------------- /lib/ai/2-embed-and-save.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/lib/ai/2-embed-and-save.ts -------------------------------------------------------------------------------- /lib/ai/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/lib/ai/utils.ts -------------------------------------------------------------------------------- /lib/db/api.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/lib/db/api.ts -------------------------------------------------------------------------------- /lib/db/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/lib/db/index.ts -------------------------------------------------------------------------------- /lib/db/schema.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/lib/db/schema.ts -------------------------------------------------------------------------------- /lib/hooks/use-shared-transition.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/lib/hooks/use-shared-transition.tsx -------------------------------------------------------------------------------- /lib/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/lib/utils.ts -------------------------------------------------------------------------------- /next.config.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/next.config.mjs -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/package.json -------------------------------------------------------------------------------- /postcss.config.mjs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/postcss.config.mjs -------------------------------------------------------------------------------- /public/next.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/public/next.svg -------------------------------------------------------------------------------- /public/vercel.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/public/vercel.svg -------------------------------------------------------------------------------- /tailwind.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/tailwind.config.ts -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vercel-labs/semantic-image-search/HEAD/tsconfig.json --------------------------------------------------------------------------------