Our Airtable expertise

Your team knows the work. Let them shape the tools.

A purchasing review. A recruitment campaign. A process that has outgrown its spreadsheet. We turn that everyday work into an Airtable tool your team can make its own.

These examples draw on Julien Cyr’s four years building and evolving tools at Actual Group, including work for Actual Académie, ESUP, Holberton, iconoclass, Qwally, Open Campus and PBA. That experience informs Ownward’s work today.

Why we believe in Airtable

One foundation. More possibilities. Shared data · Team workspace · Connected site

The more people can contribute, the more the data structure matters. Airtable makes it tangible: tables, field types and linked records. A new view, interface or automation can use the same foundation. Teams have room to build without starting a separate data model every time.

That is the balance we help you get right: freedom for your builders, with shared definitions, appropriate permissions and clear rules for change. Airtable can support ERP-style workflows and a tailored CRM. We define what it owns and what stays in specialist systems, including accounting.

Omni + Ownward

Build with Omni. Go further with Ownward.

Omni is a great reason to choose Airtable. Describe what you need, build an app, create custom interface elements and work with your data in plain language. It gives your team more room to build and improve its own tools.

Ownward helps you take that freedom further when the work calls for deeper product and engineering expertise. We build on what your team has already created with Omni, connect it to the wider business and help you keep improving it over time.

  • An interface that fits the work

    Custom components, precise business rules and guided onboarding, refined with the people who use them.

  • A connected, shared data model

    Airtable, your CRM, accounting and website: clear ownership of each record, with integrations designed to handle exceptions.

  • The confidence to keep evolving

    Permissions, tests, versioned code and documentation for people and agents. Your team keeps building; we support the complex changes.

Explore Omni in Airtable

From the field

Start with a real piece of work.

Choose a story. See the need, visit the tool, then explore how it was built.

Sales execution

Keep the next action close to the contact.

It started with…

Recruitment advisers move between contact records, follow-ups, appointments and messages. Each change of tool can mean finding the same context again.

So we built…

An Airtable workspace that brings contacts, tasks, calendar and communication tools together, with a campus or activity context and shared templates.

Technologies & official documentation

Take a look inside

Screen 1 of 6

Working context

Working context

Select the relevant operational context.

What we set out to change

Make the next action easier to find and let the team reuse its templates and activity history.

How it is builtData model, code, controls and team ownership

The user journey

  1. 01

    Choose a working context and find the contact or activity.

  2. 02

    Open the relevant task, appointment or communication tool.

  3. 03

    Keep shared configuration and activity history alongside the operational records.

Base structure

Entity / tableKey fieldsRelationships
ContactsIdentity · contact details · programme contextContacts connect to activities and follow-ups
ActionsDate · type · recipient · statusShared activity history
TemplatesCommunication type · contentReusable message content
ConfigurationKey · JSON valueSaved selections, profiles and mappings

Technical implementation

  • React modules and modals are loaded on demand; a debounced search limits work during typing.
  • Phone normalisation is handled by a dedicated service.
  • Configuration, record filtering and saved selections have separate hooks and helpers.

Engineering decision

Keep a large workspace responsive while it renders

Adapted from the CRM’s progressive rendering hook. A small first slice renders immediately; later slices are scheduled between browser frames, with cleanup when the view changes. This reduces rendering pressure, not Airtable data transfer: useRecords still loads the source set. The extracted version derives each slice from current records and scopes progress to the view ID.

JavaScript · JSXuse-progressive-records.jsx37 lines
import { useEffect, useState } from "react";import { useRecords } from "@airtable/blocks/interface/ui";export function useProgressiveRecords(view) {  const records = useRecords(view);  const [progress, setProgress] = useState({ viewId: view.id, count: 100 });  const count = progress.viewId === view.id ? progress.count : 100;  useEffect(() => {    let cancelled = false;    let frame;    let timer;    let visible = Math.min(count, records.length);    const advance = () => {      timer = setTimeout(() => {        frame = requestAnimationFrame(() => {          if (cancelled) return;          visible = Math.min(visible + 500, records.length);          setProgress({ viewId: view.id, count: visible });          if (visible < records.length) advance();        });      }, 100);    };    if (visible < records.length) advance();    return () => {      cancelled = true;      clearTimeout(timer);      cancelAnimationFrame(frame);    };  }, [view.id, records.length, count]);  return {    records: records.slice(0, count),    complete: count >= records.length,    total: records.length,  };}

Adapted implementation excerpt

Keep a large workspace responsive while it renders

Controls and boundaries

  • Campus and activity filters are navigation context, not authorisation boundaries.
  • External communications need scoped recipient selection, service credentials and a reviewed sending workflow. No messages were sent during this review.

Who can contribute

  • Advisers: work in the contact, task and calendar interfaces.
  • Builders: maintain templates, saved profiles and field mappings.
  • Developers: evolve the modules and integrations with versioned source.

What supports this case

The native CRM guide, context selector and custom desktop were opened. The repository documents the modular interface and shared configuration model.

Working with Ownward

Built together. Then yours to grow.

Your team should be able to handle everyday changes. And know who to call when a problem needs deeper technical expertise.

  1. 01

    Start with the work

    We sit down with the people who do it, agree on what a useful first version looks like, and build the data model and interface together.

  2. 02

    Learn on your own tools

    Your team learns to adapt views, interfaces and automations on real tasks. We document the model and decisions so the next change does not depend on us.

  3. 03

    Go further, with support

    Citizen developers, developers and colleagues coding with Claude can contribute to the same documented model. We support complex integrations, code reviews and technical escalation as your needs evolve.

The details that make a delivery useful

The tool, and what your team needs to own it.

Our Ownward delivery standard: guidance stays inside the product, knowledge stays with the code, and coding agents have the context to contribute.

  • An onboarding wizard you can always reopen

    A guided path through roles, essential setup and the first useful action. It remains available from Help, including when a new colleague joins.

  • Documentation in the delivery repository

    Getting started, data model, configuration, integrations, tests, release and rollback: the explanations evolve with the product version. Secrets stay outside the repository.

  • Instructions for coding agents

    AGENTS.md and, where useful, CLAUDE.md describe the architecture, conventions, checks and change rules. An agent extends the shared model; the team retains review and release decisions.

See guided onboarding in a real interface
Where Builder Hub, custom components and AI fit

We build and release custom interface extensions when teams need a more focused experience. We help organise ownership, versioning and updates in Builder Hub. For Enterprise Scale organisations, managed apps and components offer a separate way to distribute shared building blocks across bases.

We use AI where it helps a defined task, with the relevant data access and human review. Enterprise features and their availability depend on your Airtable plan; we help you choose and configure what the team actually needs.

Which part of your work could be easier?

Bring the process, the friction or the idea. We can start there.

Talk about your project