What it does
A context is a labelled bucket you define yourself to group and segment work. Contexts form a hierarchy: a context with no parent is a master context (the top of a branch), and you can nest sub-contexts beneath it as deep as you like — for example Clients → Acme → Q1 2026.
Each context can also hold layers — the template structure inside that context. Layers form their own hierarchy (a layer with no parent is a master layer, with sub-layers nested beneath), and each context has its own independent set of layers.
A context can also define properties — its schema. Each property has a value type (Text, Number, Date, Yes/No, Select or Person) and a role (Field, Data or Filter), so you describe what information a context holds.
A context holds elements — its content. Each element has a type (Record, Content or Emoji) and holds a value for each of the context's properties, so an element is a row of data shaped by the context's schema.
Finally, a context can have views — bespoke layouts that display its elements as a grid (a table of elements × properties), a kanban board (columns grouped by a property) or a list.
Together — contexts, layers, properties, elements and views — make up Threadwork's flexible, Airtable-style meta-model: owners and admins shape a structure and its schema, fill in content, and choose how to view it.
Contexts and layers are shared across your whole team (everyone in the organisation sees the same structure).
Where to find it
- Navigation: open the account menu (your avatar, top-right) → Contexts
- URL:
/dashboard/contexts
Step by step
Create a master context
- Open Contexts.
- Click New context (top right).
- Give it a Name, an optional Description and a Colour.
- Leave Parent context set to None (master context).
- Click Create context. It appears at the top level of the tree, tagged Master.
Add a sub-context
- On any context row, click the ⋯ (more) button → Add sub-context.
(Or click New context and pick a Parent context from the list.)
- Fill in the name, description and colour, then Create context. It appears nested beneath its
parent, indented one level.
Rename, recolour or move a context
- Click the ⋯ button on the row → Edit.
- Change the Name, Description or Colour, or pick a different Parent context to
move the context (and everything beneath it) elsewhere in the tree.
- Click Save changes.
You can't move a context underneath itself or one of its own sub-contexts — that option is hidden, and the server refuses it too, so the tree can never loop back on itself.
Delete a context
- Click the ⋯ button → Delete, then confirm.
- The context is removed. Any sub-contexts are kept — they move up to the deleted context's
parent rather than being deleted with it, so you never lose a branch by accident. The context's layers are deleted with it.
Manage a context's layers
- Click the ▸ chevron on the left of a context row to expand it. Its Layers section
appears beneath, showing that context's layer tree (and a N layers badge on the row).
- Click New layer to add a master layer, or a layer's ⋯ → Add sub-layer to nest one.
Give it a name, optional description and colour, and (optionally) a parent layer.
- Edit or Delete a layer from its ⋯ menu, exactly like contexts. Deleting a layer
promotes its sub-layers up to its parent — they aren't deleted.
- Reorder a layer with the ▲ / ▼ buttons on its row (shown when it has a sibling, greyed out at
the ends). Layers reorder within their own group — master layers reorder among the masters, and a layer's sub-layers reorder among themselves; the arrows never move a layer to a different parent.
- A layer's parent must be another layer in the same context — you can't move a layer into a
different context's structure.
Manage a context's properties
- Expand a context (chevron). Below its Layers is a Properties section listing that context's
properties (and a N properties badge on the row).
- Click New property. Give it a Name (e.g. Title, Owner, Status), pick a Value type
(Text, Number, Date, Yes/No, Select or Person) and a Role:
- Field — a user-editable attribute.
- Data — a derived or system value.
- Filter — a saved query / segmentation.
- Edit or Delete a property from its ⋯ menu. Each property row shows its value type and
role as small badges, plus ▲ / ▼ arrows to reorder it.
- For a Select property, an Options row appears under it: type a label and click + to add
a choice, or the bin icon on a chip to remove one. Use the ◀ / ▶ arrows on a chip to reorder the choices (they appear when there's more than one option, greyed out at each end) — the order you set is the order they appear in the element's value dropdown. Elements then pick their value from this list (and a value outside the list is rejected). With no options defined, a Select property falls back to free text.
- Reorder properties with the ▲ / ▼ buttons on each row (they appear when a context has more than
one property, and are greyed out at the top and bottom). The order you set here is the order properties appear everywhere else — the columns of a grid view, the field lines on list and kanban cards, and the inputs in the element editor.
Manage a context's elements
- Expand a context. Beneath Properties is an Elements section listing that context's content
(and a N elements badge on the row). Each element shows its type and a filled/total count of how many property values are set.
- Click New element. Give it a Name and a Type (Record, Content or Emoji). If the context
has properties, you'll see a Property values panel — fill in a value for each property. The input matches the property's value type: a Number property shows a number box, a Date property a date picker, a Yes/No property a Yes / No / — chooser, a Person property a dropdown of your team, and Text / Select a text box. Invalid values (e.g. letters in a number field) are rejected when you save.
- Edit an element to change its name, type or any property value (clear a field to remove that
value). Delete removes the element and its values.
- Reorder elements with the ▲ / ▼ buttons on each row (shown when a context has more than one
element, greyed out at the top and bottom). This order is the order elements appear in the context's views — the rows of a grid or list, and the cards within each kanban column.
An element only holds values for its own context's properties. Add the properties first (in the Properties section) so elements have fields to fill in.
Manage and use a context's views
- Expand a context. Beneath Elements is a Views section (and a N views badge on the row).
- Click New view. Give it a Name and a Layout:
- Grid — a table with one row per element and one column per property.
- Kanban — columns of element cards. Pick a Group by property to bucket the cards by that
property's value (elements with no value go in a No value column); leave it as None for a single column.
- List — a simple list of elements, each with a one-line summary of its values.
- Click a view's name to open it — the context's elements render in that layout right there.
Click again to collapse it. Values are shown in a friendly form: a Yes/No property reads "Yes"/"No", a Person property shows the person's name, and a Date shows e.g. "15 Jun 2026".
- Search the view. A search box sits at the top of every open view. Type to filter to the elements
that match — it looks at each element's name and its values as shown (so searching "Yes", a person's name or "15 Jun 2026" works, not just the raw stored value). Clearing the box shows everything again. The search filters whichever layout you're in — grid rows, kanban cards or list items.
- Show or hide grid columns. In a Grid view, a Columns button (top right of the view) opens a
checklist of the context's properties — untick one to hide its column, tick it again to bring it back. The Element name column is always shown. This is a personal view tweak for the current session (it isn't saved), and it doesn't change the data or the property itself.
- Edit values right in a grid. In a Grid view, owners and admins can **click any cell to edit it
inline — a typed input appears matching the property (a text box, number box, date picker, a Yes/No/— chooser, a person dropdown, or a Select option list). Press Enter or click away to save, Esc to cancel; clear a cell to remove its value. Only the cell you change is saved — the rest of the row is untouched, and the same checks apply as in the element editor (a number must be a number, a Select value must be one of the options, a Person must be a team member). Kanban and list views remain read-only — use the grid (or the element editor in Elements**) to make changes.
- Edit or Delete a view from its ⋯ menu. Deleting a view doesn't touch the elements.
What each screen shows
- The tree — every context as an indented row with a chevron, its colour dot, name and description.
A top-level context shows a Master badge; a context with layers shows a N layers badge.
- Expanded context — a Layers section (its layer tree), a Properties section (its schema),
an Elements section (its content) and a Views section (its layouts), each with a New … button and per-row ⋯ menus (owners/admins). The element editor includes a Property values panel; opening a view renders the elements in that layout.
- New context button — owners/admins only.
- ⋯ menu (owners/admins only) — Add sub-context, Edit and Delete for that row.
- Empty state — when no contexts exist yet, a prompt to create your first master context.
Tips and good to know
- Owners and admins manage contexts; everyone else can view the tree (read-only) — the **New
context button and the ⋯** menu are hidden for them.
- Deleting a context promotes its children rather than removing them — a safe, non-destructive
delete.
- Contexts are an evolving feature. Today they define structure; richer field types, content and
custom views are on the way.
Troubleshooting
| Problem | What to try | | --- | --- | | I don't see a New context button | Only owners and admins can manage contexts. Ask an owner/admin, or check your role in People. | | The parent I want isn't in the Parent context list | You can't move a context under itself or its own descendants — those are filtered out to prevent loops. | | I deleted a context but its sub-contexts are still there | That's expected — sub-contexts move up to the deleted context's parent instead of being deleted. |