TextPattern – tai nemokama, lanksti ir elegantiška turinio valdymo sistema, kurią yra lengva naudoti ir tinka visų tipų svetainėms bei tinklaraščiams. Ši sistema siekia supaprastinti informacijos talpinimą internete ir generuoja standartus palaikančius, validžius puslapius.
Viena iš naudojamų technologijų yra Textile – tai struktūrinis tekstas turintis sintaksę ir kuris vėliau yra verčiamas į internetinį turinį. Antraštes, nuorodas, paveiksliukus bei lenteles galima sukurti naudojant vieną ar keletą žymeklių, todėl tekstą redaguoti yra gana paprasta. Rašant straipsnį galima perjungti režimus – stebėti kaip atrodys XHTML kodas arba pats tinklapis.
Šiuo metu ši TVS sistema platinama pagal GPL licenciją, tačiau ateityje (nuo 4.1 versijos) ji bus pateikiama su BSD licencija.
Textpattern pagrindu buvo sukurta ir kita sistema xPattern, kuri atsirado dėl nesutarimų tarp programuotojų ir įskiepių kūrėjų.
Yra galimybė kaupti nuorodas į kitus tinklapius kategorijose ir paskui juos išvesti bet kurioje tinklapio vietoje. Straipsniai gali turėti komentarus, o taip pat yra apsauga nuo šiukšlių (spam). Pati sistema turi statistikos modulį.
Su tinklapiu, kuriame įdiegta Textpattern sistema gali dirbti daug žmonių ir jie gali turėti skirtingas teises. Egzistuoja penkios privilegijų grupės: leidėjas (publisher), vadovaujantis redaktorius (managing editor), redaktorius (copy editor), rašytojas (writer) ir dizaineris (designer). Kiekviena iš šių privilegijų suteikia skirtingas teises kurti, patvirtinti, redaguoti ir trinti straipsnius, įkelti paveiksliukus ar keisti puslapio dizainą.
Textpattern leidžia keisti tinklapio dizainą koreguojant jo stilių failą. Galima redaguoti rankiniu būdu, įkeliant jau paruoštą kitu redaktoriumi stiliaus informaciją į tam skirtą lauką administravimo panelėje arba automatiniame režime kuomet visi CSS bylos parametrai gali būti keičiami per automatizuotą interfeisą.
Kaip ir daugumą TVS sistemų, taip ir Textpattern turi įskiepių diegimo ir valdymo sistemą. Priedų kūrimas yra lankstus ir kartu nesudėtingas. Textpattern naudoja UTF-8 koduotę informacijos pateikimui ir yra išversta į 19 kalbų (išskyrus lietuvių).
XML pagrindu sukurta tinklapių šablonų sistema leidžia kurti informacijos blokus, kuriuos vėliau galima naudoti įvairiose tinklapio vietose, o informacija gali būti platinama per RSS arba Atom srautus.
Pagrindiniai reikalavimai serveriui yra:
- PHP 4.3 (arba naujesnė versija),
- MySQL 3.23 (arba naujesnė versija),
- PHP MySQL išplėtimas,
- PHP XML išplėtimas (būna įdiegtas pagal nutylėjimą).
Tačiau Textpattern kūrėjai rekomenduoja šias versijas:
- PHP 4.4.1 arba 5.0.2 (arba naujesnės versijos),
- MySQL 4.1.7 (arba naujesnė versija),
- PHP išplėtimai (mbstrings, XML, Zlib),
- Apache 1.3 arba 2.0 (arba naujesnės) su mod_rewrite moduliu.
Diegimui bus reikalingi TVS sistemos failai, todėl pirmiausia iš projekto tinklapio reikia parsiųsti einamos versijos archyvą (darbo rašymo metu buvo 4.0.8 versija).
Dirbant Windows aplinkoje geriau rinktis zip archyvą, o Unix aplinkai yra įprastas tar.gz formatas, kurį vėliau reikia išarchyvuoti, pvz:
wget http://textpattern.com/file_download/52/textpattern-4.0.8.tar.gz
tar xvzf textpattern-4.0.8.tar.gz
Išarchyvavus gaunama tokia katalogų struktūra:

Patartina prieš įkeliant failus pataisyti .htaccess bylą. Eilutės su komentarais šioje byloje pradedami grotelių (#) simboliu. Galima atkomentuoti pirmają eilutę, kad index.php bylą būtų atpažystama kaip pagrindinė kiekviename šio lygio kataloge. Taip pat reikia pakoreguoti tinklapio internetinį kelią (RewriteBase parametras), jeigu įdiegta TextPattern sistema yra ne šakniniame kataloge.
Pataisytos .htaccess bylos pavyzdys:
DirectoryIndex index.php index.html
#Options +FollowSymLinks
#Options -Indexes
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /~edmondas/tpp/
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^(.+) - [PT,L]
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteRule ^(.*) index.php
RewriteCond %{HTTP:Authorization} !^$
RewriteRule .* - [E=REMOTE_USER:%{HTTP:Authorization}]
</IfModule>
#php_value register_globals 0
Tuomet visus archyvo katalogus ir failus reikia įkelti į nuotolinį serverį leidžiamu būdu (ftp arba kitu protokolu).