> For the complete documentation index, see [llms.txt](https://documentation.opencats.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://documentation.opencats.org/installation/install-on-windows.md).

# Install on Windows

OpenCATS is known to be deployed in many Windows/WAMP/XAMPP environments. However, the OpenCATS project builds and tests in a Linux/Unix CI environment only. WAMP and XAMPP can work, but Windows-specific behavior is not covered by automated project testing.

## Windows prerequisites

Install a Windows web stack that provides:

* PHP 7.4
* MariaDB
* Apache or another PHP-capable web server
* phpMyAdmin or another MariaDB administration tool

XAMPP and WAMP are common choices. Select a package that includes PHP 7.4 or lets you install PHP 7.4.

## Download OpenCATS

Download the current release archive from [GitHub Releases](https://github.com/opencats/OpenCATS/releases). Extract it under your web root, for example:

```
C:\xampp\htdocs\opencats
```

If you download source code or clone the repository instead of using a release archive, install Composer for Windows and run this from the OpenCATS directory:

```bat
composer install --no-dev
```

## Start Apache and MariaDB

Open your XAMPP or WAMP control panel and start only the services you need:

* Apache
* MariaDB/MySQL service provided by the stack

Even if the control panel labels the service as MySQL, use a MariaDB-backed stack for the documented OpenCATS path.

## Create the database in phpMyAdmin

Open phpMyAdmin, usually at:

```
http://localhost/phpmyadmin/
```

Create a database named `opencats`. Use UTF-8 character set and collation when available, for example:

```sql
CREATE DATABASE opencats CHARACTER SET utf8 COLLATE utf8_general_ci;
```

Create a database user, for example `opencats`, and grant that user all privileges on the `opencats` database. Use a strong password and save it for the installer.

## Configure parser utility paths on Windows

Document parser utilities are optional, but if you install them, Windows paths in `config.php` must use escaped backslashes. For example:

```php
define('ANTIWORD_PATH', 'C:\\antiword\\antiword.exe');
define('PDFTOTEXT_PATH', 'C:\\path\\to\\pdftotext.exe');
define('HTML2TEXT_PATH', 'C:\\path\\to\\html2text.exe');
define('UNRTF_PATH', 'C:\\path\\to\\unrtf.exe');
```

## Run the installer

Open your browser at:

```
http://localhost/opencats/
```

If an `INSTALL_BLOCK` file exists before first install, remove it so the installer can start. After installation, confirm `INSTALL_BLOCK` exists again so the installer is not left exposed.

Continue to [Run the Installer](/installation/run-the-installer.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://documentation.opencats.org/installation/install-on-windows.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
