+ If you are not redirected automatically in the next 5 seconds, + please click the button below +
+ {showButton ? ( + + + + ) : ( ++ Please wait, we are logging you in... +
+ )} +diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..5ef6a520780202a1d6addd833d800ccb1ecac0bb --- /dev/null +++ b/.gitignore @@ -0,0 +1,41 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules +/.pnp +.pnp.* +.yarn/* +!.yarn/patches +!.yarn/plugins +!.yarn/releases +!.yarn/versions + +# testing +/coverage + +# next.js +/.next/ +/out/ + +# production +/build + +# misc +.DS_Store +*.pem + +# debug +npm-debug.log* +yarn-debug.log* +yarn-error.log* +.pnpm-debug.log* + +# env files (can opt-in for committing if needed) +.env* + +# vercel +.vercel + +# typescript +*.tsbuildinfo +next-env.d.ts diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000000000000000000000000000000000000..cbe0188aaee92186937765d2c85d76f7b212c537 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,19 @@ +FROM node:20-alpine +USER root + +USER 1000 +WORKDIR /usr/src/app +# Copy package.json and package-lock.json to the container +COPY --chown=1000 package.json package-lock.json ./ + +# Copy the rest of the application files to the container +COPY --chown=1000 . . + +RUN npm install +RUN npm run build + +# Expose the application port (assuming your app runs on port 3000) +EXPOSE 3000 + +# Start the application +CMD ["npm", "start"] \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000000000000000000000000000000000000..12f9f1029000356fe03939f0e2eb635631e90136 Binary files /dev/null and b/README.md differ diff --git a/app/(public)/layout.tsx b/app/(public)/layout.tsx new file mode 100644 index 0000000000000000000000000000000000000000..4a4ec57d2609c783602beb6c06c8dca6a1e6192d --- /dev/null +++ b/app/(public)/layout.tsx @@ -0,0 +1,15 @@ +import Navigation from "@/components/public/navigation"; + +export default async function PublicLayout({ + children, +}: Readonly<{ + children: React.ReactNode; +}>) { + return ( +
+ Vibe Coding has never been so easy. +
++ Login In Progress... +
++ Wait a moment while we log you in with your code. +
++ If you are not redirected automatically in the next 5 seconds, + please click the button below +
+ {showButton ? ( + + + + ) : ( ++ Please wait, we are logging you in... +
+ )} ++ An error occurred while trying to log in. Please try again later. +
++ ⚡ Faster, Smarter Updates +
++ Using the Diff-Patch system, allow DeepSite to intelligently update + your project without rewritting the entire codebase. +
++ This means faster updates, less data usage, and a more efficient + development process. +
++ {isThinking ? "DeepSite is thinking..." : "DeepSite's plan"} +
++ {think} +
++ {isUploading ? ( + "Uploading images..." + ) : isAiWorking && !isSameHtml ? ( + "AI is working..." + ) : ( + + {[ + "D", + "e", + "e", + "p", + "S", + "i", + "t", + "e", + " ", + "i", + "s", + " ", + "T", + "h", + "i", + "n", + "k", + "i", + "n", + "g", + ".", + ".", + ".", + " ", + "W", + "a", + "i", + "t", + " ", + "a", + " ", + "m", + "o", + "m", + "e", + "n", + "t", + ".", + ".", + ".", + ].map((char, index) => ( + + {char === " " ? "\u00A0" : char} + + ))} + + )} +
++ DeepSite can now create multiple pages at once. Try it! +
+
+ + {element.textContent?.trim().split(/\s+/)[0]} {htmlTagToText(tagName)} +
++ ID: {element.id || "No ID"} +
++ Classes:{" "} + {element.className || "No classes"} +
++ {error} +
+ )} + + {isFollowUp && ( ++ Use auto-provider +
++ We'll automatically select the best provider for you + based on your prompt. +
++ Publish as Space! +
++ {options?.description ?? + "Save and Publish your project to a Space on the Hub. Spaces are a way to share your project with the world."} +
++ Choose a title for your space: +
+ setConfig({ ...config, title: e.target.value })} + className="!bg-white !border-neutral-300 !text-neutral-800 !placeholder:text-neutral-400 selection:!bg-blue-100" + /> ++ Then, let's publish it! +
+ ++ DeepSite + + {" "} + v2 + +
+ ++ Create, manage, and explore your DeepSite projects. +
++ {project.space_id} +
++ Updated{" "} + {formatDistance( + new Date(project._updatedAt || Date.now()), + new Date(), + { + addSuffix: true, + } + )} +
++ Unfortunately you cannot access DeepSite without being logged + through your Hugging Face account. +
+