CRUD
CRUD stands for create, read, update and delete — the four operations that cover almost everything an application does with stored data. The term is used as shorthand for the basic data layer of an app: if users can add records, see them, change them and remove them, you have built CRUD.
The same four ideas in three vocabularies
The value of the acronym is that it maps cleanly across layers:
- Create — SQL
INSERT, HTTPPOST. - Read — SQL
SELECT, HTTPGET. - Update — SQL
UPDATE, HTTPPUTfor a full replacement orPATCHfor a partial one. - Delete — SQL
DELETE, HTTPDELETE.
A REST API is essentially CRUD expressed over HTTP. In a NorthernGo app the same operations appear as window.NorthernGoDB.save(collection, data), .get(collection) and .delete(collection, field, value) — create, read and delete, with an update expressed as a save over an existing record.
Where CRUD stops being enough
Two failure modes are worth naming.
Deleting is rarely as simple as it sounds. Most production systems soft delete — set a deleted_at timestamp and filter it out — because real deletion breaks foreign keys, destroys audit trails and cannot be undone after a misclick. But if the data is personal, a soft delete does not satisfy a request for erasure under GDPR; the record still exists. Deciding which rows are recoverable and which must really disappear is a design decision, not an implementation detail.
Not everything is a record edit. "Cancel a subscription", "publish an article", "refund an order" each involve state transitions, side effects and rules about what is permitted from the current state. Modelling them as a bare update on a status column tends to scatter that logic across the codebase. This is the point where teams reach for domain-specific endpoints or an event-based model instead.
The misconception
CRUD is a description, not an architecture. Saying an app is "just CRUD" usually undersells it: validation, permissions, concurrent edits, pagination and audit history are where the real work lives, and all four letters look trivial until two users update the same row at the same time.
Frequently asked questions
Is a soft delete enough to comply with a GDPR erasure request?
Generally no, since the personal data still exists and remains accessible to the organisation. Erasure normally requires the data to be removed or irreversibly anonymised, including in backups within a documented retention window. This is an explanation of the concept, not legal advice.
Build it yourself
NorthernGo turns a plain-text description into a working web app with a database, login and a live URL. Local AI generation runs on your own GPU, is unlimited, and is free on every plan.