# Getting Started

This page lists what ToriiDB needs, how to install the module, and which entry point to open a data directory with.

## Requirements

| Requirement | Version or purpose |
|---|---|
| Go | 1.25 or later (from `go.mod`) |
| OS | Unix-like system with unix domain sockets (the daemon listens under `/tmp`) |
| Writable directory | Holds `db_N/` snapshot and log files |
| `OPENAI_API_KEY` | Optional; needed only for vector operations |

## Install the Module

```bash
go get github.com/pardnchiu/toriidb
```

Or clone and build:

```bash
git clone https://github.com/pardnchiu/toriidb
cd toriidb
go build ./...
```

## Choose an Entry Point

| Situation | Entry point | Guide |
|---|---|---|
| More than one process may open the same directory | `daemon.New` | [Quick Start: Socket Daemon](/getting-started-daemon) |
| One process owns the directory | `store.New` | [Quick Start: Embedded Store](/getting-started-embedded) |
| Try commands interactively | `go run cmd/test/main.go` | [Quick Start: REPL](/getting-started-repl) |

## Related Pages

- [Quick Start: Daemon](/getting-started-daemon)
- [Quick Start: Embedded](/getting-started-embedded)
- [Quick Start: REPL](/getting-started-repl)
