1/** @jsxImportSource https://esm.sh/react@18.2.0 */
2import { sqlite } from "https://esm.town/v/std/sqlite?v=6";
3import { parseProject } from "https://esm.town/v/std/utils/index.ts";
4import { html } from "https://esm.town/v/stevekrouse/html";
5import { renderToString } from "npm:react-dom@18.2.0/server";
6import config from "./config.json" with { type: "json" };
7import { SparklineSVG } from "./sparklineSVG";
1/** @jsxImportSource https://esm.sh/react@18.2.0 */
2export function SparklineSVG({ strokeWidth = 2, data = [], fill = "none", stroke = "black" }) {
3 const padding = 2;
12โ โโโ index.ts # Main API entry point
13โโโ frontend/
14โ โโโ components/ # React components
15โ โโโ hooks/ # Custom React hooks
16โ โโโ pages/ # Page components
17โ โโโ styles/ # CSS styles
36## Technology Stack
37
38- **Frontend**: React, TypeScript, TailwindCSS
39- **Backend**: Deno, Hono
40- **Database**: SQLite (via Val Town)
1/** @jsxImportSource https://esm.sh/react@18.2.0 */
2import React, { useState } from 'https://esm.sh/react@18.2.0';
3import { BasicAgentFields, DetailedAgentFields } from './AgentFormFields.tsx';
4import { Button } from './FormElements.tsx';
1# SambaNovaBot UI Enhancement
2
3This project enhances the user interface of SambaNovaBot with a modern React + Tailwind + DaisyUI-based UI, replicating the "Create Agent" form from Jenova.ai.
4
5## Project Structure
71## Technologies Used
72
73- React 18.2.0
74- Tailwind CSS
75- DaisyUI
1/** @jsxImportSource https://esm.sh/react@18.2.0 */
2import React, { useState } from 'https://esm.sh/react@18.2.0';
3import {
4 InputField,
1/** @jsxImportSource https://esm.sh/react@18.2.0 */
2import React from 'https://esm.sh/react@18.2.0';
3import { SelectOption } from '../../shared/types.ts';
4
1/** @jsxImportSource https://esm.sh/react@18.2.0 */
2import React from 'https://esm.sh/react@18.2.0';
3import ReactDOM from 'https://esm.sh/react-dom@18.2.0/client';
4import { CreateAgentForm } from './components/CreateAgentForm.tsx';
5
35};
36
37const root = ReactDOM.createRoot(document.getElementById('root'));
38root.render(<App />);
13
14- **Backend**: TypeScript with Hono framework
15- **Frontend**: HTML, CSS (Tailwind), and TypeScript with React
16- **Database**: SQLite for storing resumes and job requirements
17- **NLP/ML**: OpenAI embeddings for semantic matching
2import { serveFile, readFile } from "https://esm.town/v/std/utils@85-main/index.ts";
3import { parseProject } from "https://esm.town/v/std/utils@85-main/index.ts";
4import { renderToString } from "https://esm.sh/react-dom@18.2.0/server?deps=react@18.2.0";
5import { createElement } from "https://esm.sh/react@18.2.0";
6
7// Import our components
29app.all("/api/history", c => historyHandler(c.req));
30
31// Main route - server-side render the React app
32app.get("/", async c => {
33 try {
34 // Render the React components to HTML
35 const pageContent = createElement(HomePage);
36 const pageHtml = renderToString(pageContent);