Generate code from description, create project structure, and take a photo of the result
{
"title": "React Calculator",
"language": "html",
"code": "<!DOCTYPE html>\n<html>\n<head>\n <title>React Calculator</title>\n <script src=\"https://unpkg.com/react@18/umd/react.development.js\"></script>\n <script src=\"https://unpkg.com/react-dom@18/umd/react-dom.development.js\"></script>\n <script src=\"https://unpkg.com/@babel/standalone/babel.min.js\"></script>\n <style>\n body {\n font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\n display: flex;\n justify-content: center;\n align-items: center;\n min-height: 100vh;\n background-color: #e0e5ec;\n margin: 0;\n }\n .calculator {\n border: none;\n border-radius: 15px;\n box-shadow: 9px 9px 16px rgba(163,177,198,0.6), -9px -9px 16px rgba(255,255,255, 0.5);\n width: 320px;\n background-color: #e0e5ec;\
{
"title": "React Calculator",
"language": "html",
"code": "<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n <title>React Calculator</title>\n <script src=\"https://unpkg.com/react@18/umd/react.development.js\"></script>\n <script src=\"https://unpkg.com/react-dom@18/umd/react-dom.development.js\"></script>\n <script src=\"https://unpkg.com/@babel/standalone/babel.min.js\"></script>\n <style>\n body {\n font-family: Arial, sans-serif;\n display: flex;\n justify-content: center;\n align-items: center;\n min-height: 100vh;\n background-color: #f0f0f0;\n margin: 0;\n }\n .calculator {\n border: 1px solid #ccc;\n border-radius: 8px;\n box-shadow: 0 4px 8px rgba(0,0,0,0.1);\n width: 300px;\n background-color: #fff;\n overflow: hidden;\n }\n .display {\n background-color: #222;\n color: #fff;\n font-size: 2.5em;\n padding: 20px;\n text-align: right;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n }\n .buttons {\n display: grid;\n grid-template-columns: repeat(4, 1fr);\n gap: 1px;\n background-color: #eee;\n }\n .button {\n background-color: #f9f9f9;\n border: none;\n padding: 20px;\n font-size: 1.5em;\n cursor: pointer;\n transition: background-color 0.2s;\n }\n .button:hover {\n background-color: #e0e0e0;\n }\n .button.operator {\n background-color: #f09a36;\n color: #fff;\n }\n .button.operator:hover {\n background-color: #e68a2e;\n }\n .button.equals {\n background-color: #4CAF50;\n color: #fff;\n grid-column: span 2;\n }\n .button.equals:hover {\n background-color: #45a049;\n }\n .button.clear {\n background-color: #d9534f;\n color: #fff;\n }\n .button.clear:hover {\n background-color: #c9302c;\n }\n </style>\n</head>\n<body>\n <div id=\"root\"></div>\n\n <script type=\"text/babel\">\n const { useState } = React;\n\n function Calculator() {\n const [displayValue, setDisplayValue] = useState('0');\n const [firstOperand, setFirstOperand] = useState(null);\n const [operator, setOperator] = useState(null);\n const [waitingForSecondOperand, setWaitingForSecondOperand] = useState(false);\n\n const inputDigit = (digit) => {\n if (waitingForSecondOperand) {\n setDisplayVa