curses on päätteen syöttöön ja tulostukseen kehitetty ohjelmakirjasto.
Tarve kirjastolle syntyi koska erilaiset päätteet käyttivät erilaisia ohjauskomentoja kursorin liikkeelle.[1] Ennen ANSI-standardia ANSI X3.64 valmistettiin lukuisia keskenään kilpailevia päätteitä.[2]
Kirjaston kehitti Ken Arnold Berkeleyn kampuksella BSD:lle.[3] Kirjastoa käytettiin Rogue-pelin toteuteuksessa.[3] Kirjastoa edelsi vi-ohjelman käyttämä termcap (terminal capabilities) -kirjasto.[2] curses-kirjasto toteutti päätteen ohjauksen C-kielisenä rajapintana, jolloin ohjelmoijan ei tarvinnut tuntea päätteen ohjaukseen käytettäviä koodeja.[2][1] Kirjaston menestys johti Bell Labsin kehittämään vastaavan, joka korvasi termcapin terminfolla.[2]
curses-kirjaston sanotaan olevan de facto -standardi siirrettävälle päätekäsittelylle.[4]
X/Openin X/Open Curses määrittelee standardina tekstin syötön ja näytön päätteille.[5][6]
ncurses on Unix System V -toteutukseen perustuva vaihtoehtoinen toteutus.[2][7]