L
🛠️Internal Admin Tool

Admin Dashboard

Build an internal admin panel to manage users, content, and settings — CRUD tables, role-based access, audit log.

Role-based accessUser CRUDImpersonationAudit logBulk actionsKeyboard shortcuts

The Prompt

✨ Ready-to-use Lovable Prompt

Open Lovable
Build an internal admin dashboard with the following features:

**Access Control:**
- Only users with role = 'admin' in Supabase can access the dashboard
- Non-admins are redirected to a "Not Authorised" page
- Sign-in via Supabase Auth with email + password

**Navigation:**
- Sidebar: Users, Content, Orders, Settings, Audit Log
- Top bar: search (searches across users by email), current admin name + sign-out

**Users Page:**
- Searchable, paginated table with columns: Avatar, Name, Email, Plan, Status (Active/Suspended), Created At, Last Active
- Row actions: View Profile, Impersonate (generate a magic link), Suspend, Delete
- "Add User" button opens a modal to invite a new user by email
- Bulk actions: suspend/delete selected rows

**Content Page (CRUD):**
- Table of records (e.g., blog posts, products, jobs)
- Create/Edit modal with all fields, image upload to Supabase Storage
- Delete with confirmation dialog
- Filter by status: Draft, Published, Archived

**Audit Log:**
- Append-only table showing every admin action: admin name, action (e.g., "suspended user X"), resource, timestamp, IP address
- Exportable to CSV
- Filter by admin, action type, date range

**Design:**
- Compact tables with sortable columns
- Dense layout — admins want information density, not whitespace
- Neutral palette with a single accent colour for destructive actions (red)
- Keyboard shortcuts: / to focus search, Esc to close modals

Store everything in Supabase. Every mutation writes to the audit_log table. Use Row Level Security so non-admins can't even SELECT admin tables.

How to Use This Prompt

  1. 1

    Copy the prompt

    Click the 'Copy Prompt' button above to copy the full prompt to your clipboard.

  2. 2

    Open Lovable

    Go to lovable.dev and create a new project. If you're on the free plan, you get 5 credits/day.

  3. 3

    Paste and send

    Paste the prompt into the Lovable chat input and press enter. Lovable will start building your app immediately.

  4. 4

    Iterate and refine

    Review what Lovable builds. Use follow-up prompts to refine the design, add features, or fix anything that's off.

Pro Tips

  • Always specify 'role = admin' gating — Lovable defaults to public access otherwise
  • Ask for an 'audit log' from the start — retroactively adding one is painful
  • Request 'keyboard shortcuts' and 'dense tables' — admin tools are about speed, not polish

Prompt Variations

Different versions of this prompt for specific use cases.

SaaS back-office

Build a SaaS admin back-office: manage customers, subscriptions, invoices, and support tickets. Integrate Stripe so admins can view subscription status and issue refunds directly.

Frequently Asked Questions

How do I make sure only my team can access the admin panel?
Add a 'role' column to your profiles table in Supabase. In the prompt, specify 'only users with role = admin can view the dashboard; redirect everyone else.' Combine with RLS policies for defence-in-depth.
Can admins impersonate other users for debugging?
Yes, but it must go through a Supabase Edge Function that generates a one-time magic link and logs the impersonation to the audit log. Never copy user passwords or session tokens.

Ready to build?

Copy the prompt above, then paste it into Lovable. Your app starts building instantly.

Try Lovable Free