From 9e9bf8a3e5e3ebc426814007b9308e59e49b71eb Mon Sep 17 00:00:00 2001 From: Roy Dumblauskas Date: Fri, 26 Dec 2025 22:08:51 -0600 Subject: [PATCH] new routers article overhaul complete CRUD --- backend/src/index.ts | 64 +++++++------------------------------------- 1 file changed, 9 insertions(+), 55 deletions(-) diff --git a/backend/src/index.ts b/backend/src/index.ts index 203b6bb..0aad25f 100644 --- a/backend/src/index.ts +++ b/backend/src/index.ts @@ -1,69 +1,23 @@ import 'dotenv/config'; -import { drizzle } from 'drizzle-orm/node-postgres'; -import { eq } from 'drizzle-orm'; -import express, { Request, Response } from "express"; -import { articles } from './db/schema.ts'; +import express, { Response } from 'express'; +import { articlesRouter } from './routes/articles.ts'; +import { blocksRouter } from './routes/blocks.ts'; +import { imagesRouter } from './routes/images.ts'; -// Create a connection to the database -const db = drizzle(process.env.DATABASE_URL!); - -// Create a new express application instance const app = express(); app.use(express.json()); -// Set the network port -const port = process.env.PORT || 3000; - -// Define the root path with a greeting message -app.get("/status", (req: Request, res: Response) => { +app.get("/status", (_, res: Response) => { res.json({ message: "Backend Operational" }); }); -app.get("/getAllArticles", async (req: Request, res: Response) => { - const resp = await db.select().from(articles); - res.json({ resp }); -}); +app.use("/articles", articlesRouter); +app.use("/blocks", blocksRouter); +app.use("/images", imagesRouter); -app.get("/getArticle/:articleId", async (req: Request, res: Response) => { - const { articleId } = req.params; - const resp = await db.select() - .from(articles) - .where(eq(articles.id, articleId)); - res.json({ resp }); -}); +const port = process.env.PORT || 3000; -app.post("/postArticle", async (req: Request, res: Response) => { - const resp = await db - .insert(articles) - .values({ - ...req.body, - date: new Date(req.body.date) - }); - res.json({ resp }); -}); - -app.put("/putArticle/:articleId", async (req: Request, res: Response) => { - const { articleId } = req.params; - const resp = await db.update(articles) - .set({ - name: req.body.name, - date: new Date(req.body.date), - text: req.body.text - }) - .where(eq(articles.id, articleId)); - res.json({ resp }); -}); - -app.delete("/deleteArticle/:articleId", async (req: Request, res: Response) => { - const { articleId } = req.params; - const resp = await db.delete(articles) - .where(eq(articles.id, articleId)); - - res.json({ resp }); -}); - -// Start the Express server app.listen(port, () => { console.log(`The server is running at http://localhost:${port}`); });