├── .env.local
├── metadata.json
├── index.css
├── index.tsx
├── .gitignore
├── server
├── package.json
├── public
│ ├── websocket-interceptor.js
│ └── service-worker.js
└── server.js
├── index.html
├── package.json
├── tsconfig.json
├── vite.config.ts
├── Dockerfile
├── README.md
├── LICENSE
└── Home.tsx
/.env.local:
--------------------------------------------------------------------------------
1 | GEMINI_API_KEY=PLACEHOLDER_API_KEY
2 |
--------------------------------------------------------------------------------
/metadata.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "Banana Zoom",
3 | "description": "lossless zoom app powered by nano banana.",
4 | "requestFramePermissions": []
5 | }
--------------------------------------------------------------------------------
/index.css:
--------------------------------------------------------------------------------
1 | html {
2 | color-scheme: dark;
3 | background-color: black;
4 | }
5 | .pixelated {
6 | image-rendering: pixelated;
7 | image-rendering: -moz-crisp-edges;
8 | image-rendering: crisp-edges;
9 | }
--------------------------------------------------------------------------------
/index.tsx:
--------------------------------------------------------------------------------
1 | /**
2 | * @license
3 | * SPDX-License-Identifier: Apache-2.0
4 | */
5 | import '@tailwindcss/browser';
6 |
7 | import ReactDOM from 'react-dom/client';
8 | import Home from './Home';
9 |
10 | const root = ReactDOM.createRoot(document.getElementById('root'));
11 | root.render(
Awaiting Image Input...
351 |Drag & Drop an image file or
352 | 358 |Drag and drop a new image or click on the current one to begin
745 | 751 |{message}
758 |PROCESSING...
767 |