Web App Development
Internal Tools Web App Development
Your team shouldn't be doing ops work in Google Sheets. We build the custom admin panels, approval workflows, and employee portals that replace your patchwork of no-code tools — in days, not months.
The Hidden Cost of Living in Spreadsheets
Every growing company reaches a point where the spreadsheet breaks. Not technically — spreadsheets keep working forever — but operationally. Someone overwrites a formula. Two people edit the same row. The approval 'workflow' is actually a chain of eight Slack messages. Finance runs a script to munge the data before the weekly meeting. The real cost isn't the spreadsheet; it's the 20 hours per week your team spends working around it instead of on your actual product.
Off-the-shelf no-code tools like Airtable, Notion, and Retool solve part of the problem but introduce their own constraints: per-seat pricing that compounds as your team grows, workflow logic that gets buried in proprietary automation editors, and data that lives in a vendor's database instead of your own. When a no-code vendor raises prices or sunsets a feature, you're stuck. A custom internal tool built on PostgreSQL is yours forever.
Internal tools are where our AI-assisted development workflow shines brightest. CRUD interfaces, approval queues, search-and-filter tables, bulk action panels — this is exactly the category of UI that AI can scaffold in minutes, freeing our senior engineers to focus on the business logic that makes your workflow unique. The result is a polished internal tool that would have taken a freelancer three months, delivered in 5-7 days.
Our Approach to Internal tools web app development
Every project follows our 4-step vibe-coding process — AI handles the boilerplate, senior engineers handle the craft. From idea to live product in 3–7 days for MVPs.
Workflow Mapping
We interview the people who actually do the work — not just the manager who requested the tool. Understanding the exact steps, edge cases, and manual workarounds is what separates a useful tool from one that collects dust.
Data Model Design
We model your business entities in PostgreSQL: statuses, ownership, audit trails, and the relationships your current spreadsheets are approximating with VLOOKUP. Clean schema = trustworthy data.
UI & Workflow Automation
We build the screens your team needs: record tables with inline editing, multi-step approval flows with email notifications, bulk action panels, and search that actually works. All keyboard-navigable for power users.
Permissions & Audit Log
Internal tools handle sensitive operations. We implement role-based permissions so each team sees only what's relevant, and an append-only audit log so every change is traceable to a user and timestamp.
What You Get
Every internal tools web app development engagement includes these deliverables — scoped before we start, delivered before we invoice.
- PostgreSQL schema with status machines and audit trail tables
- Supabase auth with SSO support (Google Workspace, GitHub, or SAML)
- Admin panel with sortable, filterable, bulk-actionable data tables
- Multi-step approval workflows with email and Slack notifications
- Role-based access: admin, operator, viewer permission tiers
- Full-text search across key entities
- CSV import and export for data migration and reporting
- Audit log viewer showing who changed what and when
- Mobile-responsive layout for approvals on the go
- API endpoints for integration with existing tools
Tech Stack We Use
Internal tools are built on Next.js 15 server actions (fast, type-safe mutations without a separate API), Supabase for auth and database, TanStack Table for high-performance data grids, React Hook Form with Zod validation for complex forms, Supabase Realtime for live status updates, Resend for transactional emails, and Vercel for instant deployment. All code is TypeScript strict mode — no any types in production.
Case Study
PLGOS — Internal Growth Operations Tooling
PLGOS runs growth experiments across dozens of B2B customer accounts. The ops team was tracking experiment status, results, and action items in a combination of Notion databases, Airtable bases, and a shared Google Sheet that had grown to 47 tabs. Approvals for experiment changes required a Slack thread, a Notion comment, and a manual Airtable status update — three tools for one operation. We built a custom internal tool that centralized all experiment management: a canonical record of every experiment, its current state machine status, the approval queue, and a live results dashboard. The ops team cut their weekly coordination overhead from 18 hours to 4 hours.
Read full case studyPricing Transparency
Internal tools start at $5,000 for a focused MVP: one core workflow, a data table, and basic role-based access. A comprehensive ops platform with multiple workflows, approval chains, audit logging, and SSO runs $15,000. We quote fixed prices so your finance team can plan without open-ended hourly invoices.
MVP
From $5,000
3–7 business days
Full Build
From $15,000
2–4 weeks
All projects include full code ownership, two revision rounds, Vercel deployment, and one week of post-launch support. No hidden fees.
Frequently Asked Questions
How is a custom internal tool better than Retool or Appsmith?
No-code tools are fast to start but expensive at scale (Retool charges per user per month), constrained in logic complexity, and store your data in their infrastructure. A custom tool costs more upfront but runs on your own database, has no per-seat fees, and you can add any feature without hitting a platform limit.
Can you migrate our data out of Airtable or Notion?
Yes. We export from Airtable's API or Notion's export format, clean and transform the data, and import it into your new PostgreSQL schema. We include a data validation step so you can compare record counts and spot anomalies before switching over.
What does an approval workflow look like technically?
Each approvable record has a state machine (e.g., draft → pending_review → approved → rejected). State transitions trigger server actions that update the database, send an email via Resend, and optionally post to Slack. All transitions are logged in the audit trail.
How do we handle SSO if our company uses Google Workspace?
Supabase Auth supports OAuth with Google as a provider. We configure it so only emails in your domain can log in. For SAML-based SSO (Okta, Azure AD), we implement that via Supabase's SAML support or a custom SAML provider.
What if our team's workflow changes after launch?
Internal tools always evolve. We build the state machine and permission model to be extensible, and deliver the source code to your team. Adding a new status, a new approval step, or a new role is a small code change, not a platform configuration.
How long does it take to build an internal tool?
A focused single-workflow tool typically takes 5-7 business days. A multi-workflow ops platform with SSO and integrations takes 2-3 weeks. We always scope and quote before starting.
Can the internal tool integrate with our existing software (Salesforce, HubSpot, etc.)?
Yes, via API integrations. We build read and write integrations to CRMs, billing systems, and communication tools as part of the project scope. These are standard REST integrations using typed TypeScript clients.
Ready to ship?
Stop Running Your Business in Google Sheets
Start Your ProjectOr reach us directly at hello@greta.agency
Written by the Greta Agency team · Last updated April 2025