# Black Bean Tables — Getting Started

Full feature list and technology reference: [FEATURES.md](./FEATURES.md).

## Install

1. Copy the plugin to `wp-content/plugins/blackbean-tables/`
2. Activate **Black Bean Tables** in WordPress admin
3. Open **Black Bean Tables** in the admin sidebar

## Quick start

1. **Install a template** — Projects or CRM from the dashboard marketplace
2. **Open the board** — switch between Grid, Kanban, Calendar, and other views
3. **Invite members** — Board → Permissions → add members with Viewer or Editor presets
4. **Automations** — Board → Automations → trigger on field change or schedule

## REST API

Base URL: `/wp-json/blackbean-tables-schemas/v1/schemas/{table}/rows`

| Param | Description |
|-------|-------------|
| `search` / `q` | Full-text search |
| `filters[]` | `{ column, operator, value }` |
| `filter_logic` | `and` or `or` |
| `filter_groups` | OR groups with AND inside each group |
| `cursor` | Keyset pagination — pass last row `id` from `next_cursor` |
| `per_page` | Max 100 |

Generate API keys under **Board → Integrations**. Optional read/write field scopes limit which columns are returned or accepted.

## Row access

Under **Board → Permissions**, set **Row access** to *Assignee only* so non-managers only see records assigned to them.

## Workflows & approvals

1. **Board → Workflows** — define status steps and disable backward moves without approval
2. When a user tries to move backward in the grid, they can **request approval**
3. Managers see **Pending approvals** on the Workflows screen and approve or reject
4. Requesters get an **inbox notification** when a decision is made

## Public forms & embed

- `[blackbean_form board="slug" table="tasks"]` — public create (enable on Integrations)
- `[blackbean_tables board="slug" view="main"]` — embed a board view

## Tests

```bash
npm test          # PHP smoke tests
npm run test:e2e  # Playwright smoke (fixtures)
npm run test:e2e:wp  # WordPress site smoke (blackbean.test)
```
