172
173/**
174 * Get database statistics for the homepage
175 */
176export async function getSearchStats(): Promise<{
837 const offset = (page - 1) * pageSize;
838
839 // Start all database queries in parallel
840 // 1. Launch count queries
841 const countsPromise = Promise.all([
924 );
925
926 // Wait for all database operations to complete in parallel
927 const [
928 [totalFileResults, totalProjectResults, totalUserResults],
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/