9import { readFile, serveFile } from "https://esm.town/v/std/utils@85-main/index.ts";
10import { routes } from "../shared/routes.ts";
11import { initializeDatabase } from "./database/migrations.ts";
12
13// Initialize the database
14await initializeDatabase();
15
16// Create the Hono app
17```
18โโโ backend/
19โ โโโ database/
20โ โ โโโ migrations.ts # Database schema
21โ โ โโโ queries.ts # Database queries
22โ โโโ index.ts # Server entry point
23โโโ frontend/
9import { readFile, serveFile } from "https://esm.town/v/std/utils@85-main/index.ts";
10import { routes } from "../shared/routes.ts";
11import { initializeDatabase } from "./database/migrations.ts";
12
13// Initialize the database
14await initializeDatabase();
15
16// Create the Hono app
1import { ActionFunctionArgs, redirect } from "https://esm.sh/react-router@7.5.0?deps=react@18.2.0,react-dom@18.2.0";
2import { createTopic } from "../backend/database/queries.ts";
3
4export async function action({ request }: ActionFunctionArgs) {
1import { LoaderFunctionArgs } from "https://esm.sh/react-router@7.5.0?deps=react@18.2.0,react-dom@18.2.0";
2import { getTopicById, getMessageById, getMessagesByTopicId } from "../backend/database/queries.ts";
3
4export async function loader({ params }: LoaderFunctionArgs) {
1import { LoaderFunctionArgs } from "https://esm.sh/react-router@7.5.0?deps=react@18.2.0,react-dom@18.2.0";
2import { getTopicById, getMessagesByTopicId } from "../backend/database/queries.ts";
3
4export async function loader({ params }: LoaderFunctionArgs) {
1import { ActionFunctionArgs } from "https://esm.sh/react-router@7.5.0?deps=react@18.2.0,react-dom@18.2.0";
2import { createMessage } from "../backend/database/queries.ts";
3
4export async function action({ request }: ActionFunctionArgs) {
1import { LoaderFunctionArgs } from "https://esm.sh/react-router@7.5.0?deps=react@18.2.0,react-dom@18.2.0";
2import { search } from "../backend/database/queries.ts";
3
4export async function loader({ request }: LoaderFunctionArgs) {
17```
18โโโ backend/
19โ โโโ database/
20โ โ โโโ migrations.ts # Database schema
21โ โ โโโ queries.ts # Database queries
22โ โโโ index.ts # Server entry point
23โโโ frontend/
6
7/**
8 * Initialize the database schema
9 */
10export async function initializeDatabase() {
11 // Create topics table
12 await sqlite.execute(`
44
45/**
46 * Seed the database with initial data for demonstration
47 */
48async function seedInitialData() {