Update README.md to include project stack, development and build instructions, and details on PocketBase and shadcn-svelte integration.

This commit is contained in:
eewing
2026-02-16 16:04:14 -06:00
parent 3c1442e150
commit faae3c1a43
79 changed files with 2544 additions and 0 deletions
+36
View File
@@ -0,0 +1,36 @@
import { json } from '@sveltejs/kit';
import type { RequestHandler } from './$types';
export interface EmployeeRecord {
id: string;
First_Name: string;
Last_Name: string;
Phone_Number: string;
Email_Address: string;
Voxer_ID: string;
Status: string;
[key: string]: unknown;
}
const COLLECTION = 'Employee_Records';
export const GET: RequestHandler = async ({ locals }) => {
const { items } = await locals.pb
.collection(COLLECTION)
.getList<EmployeeRecord>(1, 500, { sort: 'Last_Name,First_Name' });
return json({ employees: items });
};
export const POST: RequestHandler = async ({ request, locals }) => {
const body = await request.json();
const record = await locals.pb.collection(COLLECTION).create<EmployeeRecord>({
First_Name: body.First_Name ?? '',
Last_Name: body.Last_Name ?? '',
Phone_Number: body.Phone_Number ?? '',
Email_Address: body.Email_Address ?? '',
Voxer_ID: body.Voxer_ID ?? '',
Status: body.Status ?? ''
});
return json(record);
};
+24
View File
@@ -0,0 +1,24 @@
import { json } from '@sveltejs/kit';
import type { RequestHandler } from './$types';
import type { EmployeeRecord } from '../+server';
const COLLECTION = 'Employee_Records';
export const PATCH: RequestHandler = async ({ params, request, locals }) => {
const id = params.id;
const body = await request.json();
const record = await locals.pb.collection(COLLECTION).update<EmployeeRecord>(id, {
...(body.First_Name !== undefined && { First_Name: body.First_Name }),
...(body.Last_Name !== undefined && { Last_Name: body.Last_Name }),
...(body.Phone_Number !== undefined && { Phone_Number: body.Phone_Number }),
...(body.Email_Address !== undefined && { Email_Address: body.Email_Address }),
...(body.Voxer_ID !== undefined && { Voxer_ID: body.Voxer_ID }),
...(body.Status !== undefined && { Status: body.Status })
});
return json(record);
};
export const DELETE: RequestHandler = async ({ params, locals }) => {
await locals.pb.collection(COLLECTION).delete(params.id);
return new Response(null, { status: 204 });
};