server.js
Main Express application entry point, middleware setup, and server initialization
routes/todos.js
CRUD route handlers for todo items (GET, POST, PUT, DELETE)
controllers/todoController.js
Business logic for todo operations, calls db query functions
db/index.js
PostgreSQL connection pool setup using pg library
db/queries.js
Parameterized SQL query functions for all todo database operations
db/migrate.js
Database migration script to create todos table and seed initial data
views/index.ejs
Main page template rendering the todo list and add-todo form
views/partials/todoItem.ejs
Reusable EJS partial for rendering a single todo list item
views/partials/header.ejs
Shared HTML head and navigation partial
public/css/style.css
Application styles including layout, todo list, and form styling
public/js/app.js
Client-side JS for inline editing, checkbox toggling, and delete confirmations without full page reload
.env
Environment variables: DATABASE_URL, PORT, NODE_ENV
.env.example
Template of required environment variables for onboarding
package.json
Project metadata, dependencies (express, pg, ejs, dotenv), and npm scripts
README.md
Setup instructions, environment configuration, and deployment guide