Automate
Remove repetitive work.
01 / The idea
We design focused software around your processes — from one repetitive workflow to the system that makes it reliable.Focused software that removes friction and fits the way you operate.
Remove repetitive work.
Create the tool your operation needs.
Make your existing tools work together.
Scroll: friction → fit → impact
The friction
The impact
Routine tasks consume hours and rely on constant follow-up.
Important information is spread across tools that do not work together.
Your team adapts its process to the tool instead of the other way around.
One focused system, shaped around your operation.
Replace repetitive steps with workflows that run reliably.
Connect your tools, information, and people in one clear process.
Build on a stable foundation that can evolve with your business.
05 / Selected work
A selection of systems, workflows, and tools we’ve designed and built around real operational needs through our own product development and operational experience.
01 / 07 systems built
PROJECT OPERATIONS
Instead of forcing every studio into the same project template, this environment adapts to its stages, team structure, client information, files, specifications, and financial settings.
Teams work from an operating model that reflects their practice instead of adapting their practice to generic software.
PROJECT OPERATIONS
The friction
Project structure and responsibility become unclear when operational information is divided between generic tools, documents, and conventions that only experienced team members understand.
The fit
We created a configurable project environment around the way a studio actually sets up, navigates, and runs its work.
The impact
Each project follows a shared structure while preserving the stages, categories, responsibilities, and connected records the studio needs.
What was built
Technical depth
Swift · SwiftUI · TypeScript · Firebase Firestore · Cloud Functions
02 / 07 systems built
STUDIO TEMPLATES
Reusable templates let a studio carry proven project structures, boards, questionnaires, briefs, tax settings, and document configurations into new work.
Studios can standardize their strongest processes while still adapting each project to its specific needs.
STUDIO TEMPLATES
The friction
New projects repeatedly require the same setup, even when the studio has already established a process that works. Manual recreation wastes time and introduces small inconsistencies.
The fit
We designed a template system that duplicates nested project structures and supporting assets in the background while making progress visible.
The impact
A tested operating pattern can become the starting point for a new project without rebuilding every board, brief, record, and setting.
What was built
Technical depth
Swift · SwiftUI · TypeScript · Firebase Cloud Functions · Firestore · Cloud Storage
03 / 07 systems built
CLIENT ONBOARDING
A structured discovery workflow keeps client goals, decisions, questionnaires, briefs, and project context together before design work begins.
Teams begin design with a clearer shared understanding of the client, the brief, and the decisions already made.
CLIENT ONBOARDING
The friction
The earliest and most consequential project knowledge often arrives through meetings, messages, PDFs, and disconnected notes, then becomes difficult to recover when decisions are made later.
The fit
We connected reusable questionnaires, briefs, topic-based responses, and project records in one discovery workflow.
The impact
Client context remains available throughout the project instead of being reduced to meeting memory or isolated documents.
What was built
Technical depth
Swift · SwiftUI · Firebase Firestore · Cloud Storage
04 / 07 systems built
DOCUMENT WORKFLOW
A project-linked file workspace keeps documents and imagery close to the active work they support, with preview, import, organization, and reuse built in.
Teams spend less time moving between file storage and the project context needed to understand each document.
DOCUMENT WORKFLOW
The friction
Project files become difficult to act on when they live in a separate file tool without the decisions, products, boards, or records that give them meaning.
The fit
We integrated document import, organization, preview, renaming, and reuse directly into the project environment.
The impact
Files can move into project records and visual boards without losing their relationship to the work.
What was built
Technical depth
Swift · SwiftUI · UIKit · Quick Look · VisionKit · Firebase Firestore · Cloud Storage
05 / 07 systems built
CATALOG OPERATIONS
A governed internal workflow turns irregular source inventory into bilingual product records with controlled taxonomy, calculated commercial fields, and managed media.
Catalog quality comes from a repeatable operating model rather than direct database edits and disconnected image handling.
CATALOG OPERATIONS
The friction
Legacy product data and photography vary too widely to publish directly. Without controlled fields and review, errors in taxonomy, calculations, lifecycle state, and media paths reach the public catalog.
The fit
We developed a multi-step editor and callable backend around private drafts, whitelisted updates, controlled product types, calculated fields, and managed uploads.
The impact
Content, commercial data, media, and lifecycle state can be prepared and reviewed through one governed record workflow before publication.
What was built
Technical depth
Next.js · React · TypeScript · Firebase Auth · Firebase Cloud Functions · Firestore transactions · Google Cloud Storage signed URLs · Notion API
Responsive web administration supported by server-side catalog and migration workflows.
06 / 07 systems built
PARTNER OPERATIONS
A custom trade-program workflow carries designer applications from business details and review through generated agreements, signature, and active partnership state.
The relationship can be managed as a controlled business process instead of a sequence of forms, emails, and manually edited documents.
PARTNER OPERATIONS
The friction
A professional partnership program cannot be managed reliably through a contact form alone. Applicant context, review decisions, agreements, signatures, and access state must remain linked.
The fit
We connected account records, Trade Program applications, administrative review, generated PDFs, signature capture, and partnership state in one workflow.
The impact
Each application has a traceable path from submission through review and agreement to its current partnership state.
What was built
Technical depth
Next.js · React · TypeScript · Firebase Auth · Firestore · Firebase Cloud Functions · Cloud Storage · pdf-lib
Responsive account and admin workflow with server-generated agreements and custom signature handling.
07 / 07 systems built
INVENTORY COORDINATION
A transaction-backed hold workflow lets eligible users reserve scarce catalog items for a limited time, with conflict checks, project context, release, and scheduled expiry.
Temporary commitments are represented consistently without turning informal interest into an indefinite or ambiguous reservation.
INVENTORY COORDINATION
The friction
One-off objects can be promised twice when temporary interest exists only in private messages and is not reflected in the availability state seen by other users.
The fit
We implemented transactional callable functions and scheduled expiry around hold metadata, eligibility limits, project mirrors, conflict rejection, release, and restoration.
The impact
A bounded hold becomes visible in both catalog availability and the user’s project context, with explicit paths for rejection, manual release, and automatic expiry.
What was built
Technical depth
TypeScript · Firebase Auth · Firebase Cloud Functions · Firestore transactions · Cloud Scheduler · Next.js cache revalidation
Responsive product and project UI backed by transactional Functions and scheduled expiry logic.
01 / 04 systems built
NATIVE VISUAL WORKSPACE
Visual presentations once assembled across separate files and applications now live in a project-linked canvas where products, references, drawings, and final boards stay connected.
Design decisions remain traceable from first reference to final presentation, while teams spend less time transferring work between disconnected tools.
NATIVE VISUAL WORKSPACE
The friction
Design teams need to move quickly between product references, imagery, layout decisions, and presentation output. When each part lives in a different application, context is lost and the same material is repeatedly rebuilt.
The fit
We designed a native visual workspace around the project itself, combining multi-board composition, drawing, precise layout tools, product records, and reusable assets.
The impact
A board can move from early composition to client-ready presentation without separating the visual decision from the products, files, and project information behind it.
What was built
Technical depth
Swift · SwiftUI · UIKit · PencilKit · Core Graphics · Firebase
Developed within a broader native operations platform for interior-design studios.
02 / 04 systems built
NATIVE COLLABORATION
An offline-capable collaboration architecture preserves native visual work through disconnection, reconnects safely, and makes recovery state understandable.
Connectivity becomes a condition the product can manage rather than a point at which complex work is silently lost.
NATIVE COLLABORATION
The friction
Visual editing cannot simply stop when connectivity fails. Local changes must survive, merge deterministically, and return to a synchronized state without hiding risk from the user.
The fit
We developed an offline-first collaboration layer around local command journaling, deterministic replay, synchronization, presence, history, and recovery tools.
The impact
Edits remain recoverable through interruption, while reconnect and synchronization state stay visible to the person doing the work.
What was built
Technical depth
Swift · SQLite · Rust · Automerge CRDT · WebSockets · Axum · PostgreSQL · Google Cloud Run
03 / 04 systems built
OUTPUT & DELIVERY
A dedicated rendering workflow turns native visual boards into print-ready PDFs and high-resolution image files without rebuilding the composition elsewhere.
The work created in the visual workspace remains usable beyond it, without a separate reconstruction step.
OUTPUT & DELIVERY
The friction
A board is not complete if it cannot leave the application at the dimensions, quality, scale, and transparency required for review, print, or delivery.
The fit
We built an export engine around the application’s visual model, with controlled rendering for presentation, print, and image output.
The impact
Finished boards can move directly into client review, production, and delivery workflows in useful formats.
What was built
Technical depth
Swift · UIKit · Core Graphics · ImageIO · Uniform Type Identifiers
04 / 04 systems built
IMAGE PREPARATION
An on-device cutout tool lets designers isolate products and references before placing them into visual compositions.
Designers can prepare cleaner visual assets without interrupting the project workflow or creating another disconnected file version.
IMAGE PREPARATION
The friction
Product photographs often need background removal or cleanup before they can support a convincing board, forcing a detour through separate editing software.
The fit
We embedded an image-cutout workflow inside the product and visual workspace so preparation happens where the asset will be used.
The impact
A product image can be isolated, reviewed, and reused in a composition without leaving the application.
What was built
Technical depth
Swift · Apple Vision · Core ML · DeepLabV3 · Core Image · UIKit
01 / 08 systems built
PRODUCT DATA
A reusable product library gives teams one place to capture imagery, dimensions, materials, pricing, availability, vendors, and supporting documents — then carry that knowledge into active projects.
Product knowledge becomes a shared studio asset instead of disappearing inside individual projects or personal files.
PRODUCT DATA
The friction
Sourcing knowledge accumulates across vendor websites, screenshots, spreadsheets, messages, and personal notes. Even when a useful product has already been found, the next project often starts the search again.
The fit
We structured product sourcing as a reusable operational library, with searchable records, commercial and technical detail, media, vendor context, and links into project work.
The impact
A product is researched once, remains reviewable, and can move directly into specifications and visual boards without recreating its record.
What was built
Technical depth
Swift · SwiftUI · Firebase Firestore · Cloud Storage · SDWebImage
02 / 08 systems built
DESIGN DEVELOPMENT
Product schedules connect every design selection to the quantities, pricing, approvals, procurement states, issues, and presentations required to deliver it.
Design intent stays connected to the operational work required to price, approve, procure, and deliver it.
DESIGN DEVELOPMENT
The friction
A product selected for its design value still needs quantities, commercial detail, approval, procurement, and issue tracking. Visual presentation alone cannot carry that operational responsibility.
The fit
We built project-linked specifications that turn product selections into structured schedules with snapshots, status, pricing, and connections to proposals and boards.
The impact
The same selection can be understood as a design decision, a commercial item, and a delivery responsibility without creating disconnected copies.
What was built
Technical depth
Swift · SwiftUI · TypeScript · Firestore · Cloud Functions · Zod
03 / 08 systems built
FF&E COORDINATION
A cross-project-stage control view makes the pricing, approval, procurement, and issue status of every selected product visible in one place.
Attention is directed to the products that need action, while status remains connected to the underlying project record.
FF&E COORDINATION
The friction
Once products move beyond selection, their status changes across pricing, approval, ordering, delivery, and issue resolution. Separate trackers quickly become incomplete or outdated.
The fit
We added a status-control layer across project specification records, designed around the stages teams already need to monitor.
The impact
Teams can review and update item progress from one operational view instead of reconciling a second procurement tracker.
What was built
Technical depth
Swift · SwiftUI · Firestore collection-group queries · TypeScript · Cloud Functions
04 / 08 systems built
BROWSER-TO-NATIVE WORKFLOW
A browser extension and AI-assisted review workflow turn a product webpage into a structured draft that a person can verify inside the native application.
Teams avoid repetitive re-entry while keeping a human decision between automated extraction and trusted product data.
BROWSER-TO-NATIVE WORKFLOW
The friction
Useful product information is distributed across page text, metadata, galleries, variants, documents, and vendor details. Capturing it field by field is slow, but importing it without review is unreliable.
The fit
We connected browser capture, authenticated Firebase processing, AI-assisted classification, temporary drafts, media selection, and a native review interface.
The impact
A webpage arrives as normalized product data and selected media, ready for human correction and approval before it enters the catalog.
What was built
Technical depth
Chrome Manifest V3 · JavaScript · Vite · Firebase Authentication · Firebase Cloud Functions · Firestore · Schema-constrained AI output · SwiftUI · Native deep linking
Chrome browser capture connected to a serverless AI classification workflow and a native iPad and Mac product-review experience.
05 / 08 systems built
PROJECT SOURCING
One connected action can turn a reusable library product into both a project specification and an item ready for visual composition.
Product information moves from research into delivery without duplicate entry or loss of connection.
PROJECT SOURCING
The friction
Products chosen during sourcing are often entered again in project schedules and then recreated once more in visual presentations, producing disconnected versions of the same decision.
The fit
We linked the sourcing library, project specifications, and visual workspace through a shared product-to-project workflow.
The impact
A reusable source record can become a project-specific specification and a board item while retaining its underlying product context.
What was built
Technical depth
Swift · SwiftUI · TypeScript · Zod · Firebase Cloud Functions · Firestore
06 / 08 systems built
VISUAL REFERENCE
A visual-reference library preserves room, style, color, source, and project relevance so collected inspiration remains useful after the moment it was found.
Inspiration becomes durable project knowledge rather than an unstructured archive of images.
VISUAL REFERENCE
The friction
Reference imagery quickly loses value when its source, reason for collection, and relationship to a project disappear into folders or saved links.
The fit
We structured inspiration as a searchable library with categories, attribution, source context, and links into visual project work.
The impact
References can be found, understood, and reused without separating the image from its original context.
What was built
Technical depth
Swift · SwiftUI · Firebase Firestore · Cloud Storage · SDWebImage
07 / 08 systems built
SERVICE SOURCING
A reusable service and contractor library keeps trade details, pricing, notes, imagery, and documents ready to carry into project planning.
Knowledge about trusted services and trades becomes available across projects instead of being repeatedly reconstructed.
SERVICE SOURCING
The friction
Studios repeatedly enter the same contractor and service information, while useful notes and supporting documents remain attached to individual projects or personal records.
The fit
We created structured, reusable records for trades, contractors, prices, measures, imagery, notes, and documents.
The impact
Common service information can be reviewed once and introduced into new project planning without rebuilding the record.
What was built
Technical depth
Swift · SwiftUI · Firebase Firestore · Cloud Storage
08 / 08 systems built
PUBLIC CATALOG
An image-led public catalog turns a large collection of one-off objects into structured paths for browsing, searching, researching, and discovering related inventory.
Product information and imagery remain discoverable from first exploration through detailed research without flattening the individuality of each object.
PUBLIC CATALOG
The friction
Unique objects resist uniform cataloging: names, materials, eras, photography, and availability vary, making a large inventory difficult to explore and difficult for search engines to understand.
The fit
We built a bilingual catalog around controlled taxonomy, responsive product presentation, deterministic multi-field search, related-item logic, and localized structured metadata.
The impact
Visitors can move from a broad category or specific search intent into a detailed product record, then continue through relevant inventory.
What was built
Technical depth
Next.js · React · TypeScript · Firebase Cloud Functions · Firestore · Cloud Storage · Next.js Metadata APIs
Responsive bilingual web catalog backed by serverless catalog APIs.
01 / 04 systems built
PROJECT FINANCE
A project-linked proposal workflow turns real products, services, terms, taxes, and payment stages into controlled, numbered commercial documents.
Commercial scope and project delivery remain part of one traceable workflow, reducing the need to reconcile separate documents by hand.
PROJECT FINANCE
The friction
When scope, selections, terms, attachments, and approvals are spread across documents, teams lose track of which version is current and what the client has actually approved.
The fit
We built proposal creation into the project workflow, with atomic numbering, linked line items, controlled document states, terms, taxes, attachments, and payment schedules.
The impact
Teams can move a proposal from draft to approval without losing the project decisions, commercial terms, or supporting records behind it.
What was built
Technical depth
Swift · SwiftUI · TypeScript · Firebase Cloud Functions · Firestore
02 / 04 systems built
DRAFT INVOICING
Once a proposal is approved, a guarded server workflow can turn it into a linked, atomically numbered draft invoice without reconstructing the commercial scope.
Teams can begin billing from the approved commercial record rather than rebuilding it by hand.
DRAFT INVOICING
The friction
Billing often begins by manually re-entering approved proposal information, creating an avoidable opportunity for omissions, duplicate work, and inconsistent records.
The fit
We built a server-side conversion workflow that validates proposal state, carries eligible project and payment information forward, and creates the invoice number atomically.
The impact
An approved proposal becomes a connected draft invoice while preserving the project items and payment context behind it.
What was built
Technical depth
TypeScript · Firebase Cloud Functions · Firestore transactions · decimal.js
03 / 04 systems built
PAYMENT PLANNING
Proposal-linked deposits and milestones keep percentage-based or fixed payment requests attached to the commercial scope they support.
Clients and project teams share a clearer view of payment expectations from the point of commercial approval.
PAYMENT PLANNING
The friction
When deposits and milestone payments are tracked separately from a proposal, dates, percentages, requested amounts, and remaining balances become harder to verify.
The fit
We incorporated staged payment schedules directly into project financial documents, supporting both percentage-based and fixed requests.
The impact
Payment stages, dates, amounts, and balances remain connected to the approved proposal before invoicing begins.
What was built
Technical depth
Swift · SwiftUI · TypeScript · Firebase Cloud Functions · Firestore · decimal.js
04 / 04 systems built
PAYMENT TRACKING
Structured project payment records use server-side recalculation to keep paid totals, remaining balances, and settlement state consistent.
Project teams can review payment progress without relying on separately maintained totals.
PAYMENT TRACKING
The friction
Financial records lose credibility when totals and balances depend on someone updating several calculated values manually after every payment.
The fit
We designed payment recording around authoritative entries and server-side recalculation of the resulting financial state.
The impact
Each payment updates the paid total, remaining balance, and settlement state through one controlled workflow.
What was built
Technical depth
Swift · SwiftUI · TypeScript · Firebase Cloud Functions · Firestore · decimal.js
01 / 03 systems built
NATIVE APPLICATION
A large-screen native application gives complex project work the touch-first behavior of iPad and the precision of a desktop workflow through Mac Catalyst.
Teams can perform detailed operational work in an environment designed for the devices and interaction modes they actually use.
NATIVE APPLICATION
The friction
Dense operational and visual work needs space, precision, multitasking, and platform-native behavior that a stretched phone interface or generic responsive shell cannot provide.
The fit
We designed a native application architecture specifically for large-screen iPad work and desktop use through Mac Catalyst.
The impact
The same project workflows adapt to touch-first and desktop environments while retaining native navigation and interaction patterns.
What was built
Technical depth
Swift · SwiftUI · UIKit · Mac Catalyst · Uniform Type Identifiers · Quick Look
02 / 03 systems built
COLLABORATION INFRASTRUCTURE
A native and server-side synchronization engine coordinates collaborative editing through semantic commands, deterministic state, reconnect behavior, and recovery.
Complex native collaboration rests on explicit state and recovery behavior rather than optimistic real-time updates alone.
COLLABORATION INFRASTRUCTURE
The friction
Concurrent and offline editing require more than live transport: changes must merge deterministically, survive interruption, replay safely, and remain recoverable over time.
The fit
We developed the collaboration engine across native Swift, a Rust CRDT layer, authenticated WebSockets, and durable PostgreSQL persistence.
The impact
The workspace supports synchronized editing, history, migration, reconnect, and recovery through one coherent architecture.
What was built
Technical depth
Swift · Rust · Automerge CRDT · WebSockets · Axum · PostgreSQL · Google Cloud Run
03 / 03 systems built
APPLICATION INFRASTRUCTURE
A Firebase workflow layer moves critical numbering, state transitions, nested records, file processing, cleanup, and usage accounting out of the interface and into controlled backend operations.
The application can enforce operational rules consistently across devices, users, retries, and background processing.
APPLICATION INFRASTRUCTURE
The friction
Business rules become fragile when important state changes exist only in client code, where retries, concurrency, permissions, and partial failure are difficult to control.
The fit
We implemented callable workflows, atomic numbering, linked records, storage processing, scheduled cleanup, and usage accounting as server-side responsibilities.
The impact
Critical transitions are validated and executed through structured backend workflows instead of depending on interface behavior alone.
What was built
Technical depth
TypeScript · Firebase Cloud Functions · Firestore · Cloud Storage · Cloud Scheduler
01 / 07
Instead of forcing every studio into the same project template, this environment adapts to its stages, team structure, client information, files, specifications, and financial settings.
Teams work from an operating model that reflects their practice instead of adapting their practice to generic software.
06 / Start a project
A focused first conversation.
Bring us the workflow, bottleneck, or product idea. We’ll identify the smallest focused system that could make a meaningful difference.