Files
todo-app/index.js
agent dev-01 b2d1776185
All checks were successful
Auditor / audit (pull_request) Successful in 34s
Add GET /version endpoint returning package name and version
Reads name and version from package.json via require() and exposes them
at GET /version as { name, version }.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-12 07:07:37 +00:00

49 lines
1.0 KiB
JavaScript

const express = require('express');
const { name, version } = require('./package.json');
const app = express();
const PORT = 3000;
app.use(express.json());
let todos = [
{ id: 1, title: 'Buy groceries', done: false },
{ id: 2, title: 'Walk the dog', done: true },
{ id: 3, title: 'Read a book', done: false },
];
let nextId = 4;
app.get('/healthz', (req, res) => {
res.json({ ok: true });
});
app.get('/version', (req, res) => {
res.json({ name, version });
});
app.get('/todos', (req, res) => {
res.json(todos);
});
app.post('/todos', (req, res) => {
const { title } = req.body;
const todo = { id: nextId++, title, done: false };
todos.push(todo);
res.status(201).json(todo);
});
app.delete('/todos/:id', (req, res) => {
const id = parseInt(req.params.id, 10);
const index = todos.findIndex(t => t.id === id);
if (index === -1) {
return res.status(404).end();
}
todos.splice(index, 1);
res.status(204).end();
});
app.listen(PORT, () => {
console.log(`Server listening on http://localhost:${PORT}`);
});