ListView is a web app that lets you manage data stored in SharePoint lists. Like Notion, you build what you need without being locked into a specific use case: tracking, dashboards, workflows, and more.
| Schema-driven UI | Works with any list | Pure SPA | M365 styling |
| Components discover list structure via Graph metadata, no hardcoding required | Point it at an existing SharePoint list and start working immediately | No backend, all Graph calls from the browser using delegated permissions | Fluent UI components for a consistent Microsoft experience |
Go to listview.org and sign in with your Microsoft 365 account.
Works with any commercial M365 tenant. Your tenant admin may need to grant consent for the app before you can sign in.
Self-host ListView if you need:
- Custom Entra ID app registration (your own client ID, custom permissions)
- Support for GCC, GCC High, or other sovereign clouds
- Node.js 18+
- Entra ID app registration with delegated permissions:
- Microsoft Graph:
Sites.ReadWrite.All,User.Read - SharePoint:
AllSites.Manage
- Microsoft Graph:
-
Register an Entra ID app
- Go to Entra ID admin center > App registrations > New registration
- Set redirect URI to
http://localhost(SPA platform)
-
Clone and configure
git clone https://github.com/emildosen/listview.git cd listview cp .env.example .envEdit
.env:VITE_MSAL_CLIENT_ID=your-client-id-here
-
Run
npm install npm run dev
- React + TypeScript
- Vite
- MSAL for authentication
- Microsoft Graph and PnP for SharePoint operations
- Fluent UI
- No backend - All authentication and data access happens client-side
- Config-driven - The app adapts to whatever lists you point it at
- Tenant-wide settings - Stored in a dedicated
sites/ListViewSharePoint site
Contributions welcome.
