Ein Framework ist ein vorgefertigtes Grundgerüst für Software, das Aufbau, Grundfunktionen und Spielregeln eines Projekts vorgibt. Entwickler füllen dieses Gerüst mit ihrer eigenen Logik, statt Login, Formularverarbeitung oder Datenbankzugriff jedes Mal neu zu bauen. Von der Library unterscheidet es die Rollenverteilung: Das Framework bestimmt den Ablauf und ruft den eigenen Code an vorgesehenen Stellen auf; eine Library wird umgekehrt vom eigenen Code gerufen, wann immer man sie braucht.
Bekannte Vertreter sind Laravel und Symfony für PHP, Django für Python, Spring für Java sowie Angular und Vue.js für das Front End. Ein Framework verkürzt die Entwicklung und bringt geprüfte Schutzmechanismen mit, etwa gegen SQL-Injection, das Einschleusen fremder Datenbankbefehle über Eingabefelder.
Es verpflichtet aber zur Pflege: Frameworks erscheinen in Versionen, und wer Updates über Jahre auslässt, betreibt am Ende eine Website mit öffentlich bekannten Sicherheitslücken. Auftraggeber sollten sich deshalb dokumentieren lassen, welches Framework in welcher Version im Einsatz ist.