noweb – zestaw narzędzi do programowania piśmiennego (ang. literate programming), stworzony w latach 1989–1999 przez Normana Ramseya eecs.harvard.edu, z założenia prosty, łatwy do rozbudowy i obsługujący dowolne języki programowania. Jest wolnym oprogramowaniem.

Podobnie jak w systemach WEB i CWEB głównymi programami/składnikami noweb są: notangle, który ekstrahuje kod źródłowy programu oraz noweave, który przetwarza wejście na „drukowalną” dokumentację.

noweb standardowo potrafi tworzyć dokumenty w formatach TeX, LaTeX, HTML oraz troff. Poza prostotą, możliwość użycia dowolnego języka programowania stanowi główną przewagę nad WEB, który to potrzebował przeróbek by wspierać języki programowania inne niż Pascal. W celu umożliwienia używania C oraz podobnych języków powstał projekt CWEB.

Plik wejścia dla noweb Plik przetwarzany przez programy noweb składa się z kawałków (ang. chunks) kodów źródłowych poprzeplatanych z dokumentacją.

Kawałki dokumentacji są zwykle pisane z użyciem składni LaTeX, jednak łatwo można użyć dowolnego innego formatu.