- To use Screenshot to Code, you need an OpenAI API key with GPT4 vision
- access.{" "}
+ To use Screenshot to Code,{" "}
+
+ buy some credits (100 generations for $36)
+ {" "}
+ or use your own OpenAI API key with GPT4 vision access.{" "}
Follow these instructions to get yourself a key.
{" "}
- Then, paste it in the Settings dialog (gear icon above).
-
-
- Your key is only stored in your browser. Never stored on our servers. If
- you prefer, you can also run this app completely locally.{" "}
-
- See the Github project for instructions.
-
+ and paste it in the Settings dialog (gear icon above). Your key is only
+ stored in your browser. Never stored on our servers.
);
diff --git a/frontend/src/components/OutputSettingsSection.tsx b/frontend/src/components/OutputSettingsSection.tsx
index fd76281..43318f8 100644
--- a/frontend/src/components/OutputSettingsSection.tsx
+++ b/frontend/src/components/OutputSettingsSection.tsx
@@ -6,14 +6,10 @@ import {
SelectTrigger,
} from "./ui/select";
import { CSSOption, JSFrameworkOption, OutputSettings } from "../types";
-import {
- Accordion,
- AccordionContent,
- AccordionItem,
- AccordionTrigger,
-} from "./ui/accordion";
-import { capitalize } from "../lib/utils";
import toast from "react-hot-toast";
+import { Label } from "@radix-ui/react-label";
+import { Button } from "./ui/button";
+import { Popover, PopoverTrigger, PopoverContent } from "./ui/popover";
function displayCSSOption(option: CSSOption) {
switch (option) {
@@ -26,6 +22,17 @@ function displayCSSOption(option: CSSOption) {
}
}
+function displayJSOption(option: JSFrameworkOption) {
+ switch (option) {
+ case JSFrameworkOption.REACT:
+ return "React";
+ case JSFrameworkOption.NO_FRAMEWORK:
+ return "No Framework";
+ default:
+ return option;
+ }
+}
+
function convertStringToCSSOption(option: string) {
switch (option) {
case "tailwind":
@@ -37,18 +44,57 @@ function convertStringToCSSOption(option: string) {
}
}
+function generateDisplayString(settings: OutputSettings) {
+ if (
+ settings.js === JSFrameworkOption.REACT &&
+ settings.css === CSSOption.TAILWIND
+ ) {
+ return (
+