Skip to content

Build a client portal

This tutorial builds a client portal: an app with a login where each client signs in and sees only their own projects and documents, while you get an admin view of everyone. It builds on Build your first app and adds a login, which changes the app in one important way — each person who signs in sees their own information.

You’ll use two ideas together: a login so people sign in, and roles so you can give yourself an admin view the clients don’t have.

Start a new app and describe what it’s for, who signs in, and what each person should see:

“A client portal where clients sign in and see only their own projects. Each project has a name, a status, and a description. Clients can view their projects and download documents I’ve shared with them. I want an admin view where I can see all clients and add projects for them.”

Exepad builds a working version with a sign-in, a client view, and the beginnings of an admin view. Give it a few minutes.

An app with a login asks people to sign in before they can use it. If it isn’t already on, ask for it:

“Add a login so each client signs in with Google, and only signed-in people can see the portal.”

Once a login is on, everyone gets their own private space — one client can never see another client’s projects. That separation is automatic; you just describe who sees what. See Adding a login for the full picture.

You need to see everything; clients should not. That’s what roles are for — they let you gate who can see or do what:

“Give me an admin role. Admins can see all clients and all projects and can add or edit projects for any client. Regular clients can only see and download their own.”

Now when you sign in as an admin, you get the full picture; when a client signs in, they see just their own. Learn more in Roles & access.

Let clients get the files you share with them:

“Let me attach documents to a project, and let the client download the documents on their own projects.”

“Show the date each document was added.”

Each client only ever sees the documents on their own projects.

This is the important step. Try the portal from both points of view:

  1. As an admin (you): sign in, add a client, create a project for them, and attach a document.
  2. As a client: sign in with a different account and confirm you see only that client’s project — and none of anyone else’s.

You can watch your data come together as you go — see Viewing & editing your data for where to review everything in one place. If something’s off, describe the fix:

“Clients shouldn’t be able to edit a project’s status — only view it.”

“On the admin page, let me filter projects by client.”

When it’s working, publish. Your portal goes live at its own link — your-app.exepad.app, or your own custom domain — and clients can sign in from anywhere. Share the link, and each person gets their own private view the moment they sign in.

Made changes later? Publish again to update the live version, or roll back if needed.