Notebook Studio

Admin Dashboard

Manage users, plans, content, email, and revenue

The admin panel lives at /en/admin/login and covers everything you need to run Notebook Studio day to day: analytics, users and plans, blog content, announcements, email templates, payment configuration, and the revenue ledger.

Signing In

Initialize the admin account

Visit https://yourdomain.com/en/admin/login and click Initialize to create the default admin and sign in. On a local install the defaults are admin@notebookstudio.local and admin123.

You can also seed it from the terminal:

npx convex run admin:seedAdmin

Change the default password

Open Settings and set your own email and password. The panel shows a warning until the defaults have been changed.

Dashboard and Analytics

  • Dashboard - headline totals for users, notebooks, sources, chat messages, notes, and generated study tools, plus recent activity.
  • Analytics - charts for activity over a selectable date range, the AI generation mix (audio overviews, data tables, mind maps, reports, flashcards, and quizzes), users by plan, and library content.

Admins are stored in the adminUsers table. A test_admin account can also be created for demo purposes (see Demo Showcase Mode).

Manage Users

  • Search and sort the full user list with plan, gateway, and verification status.
  • Change a user's plan directly from the row dialog (free, monthly, or yearly). Plan changes are written to the ledger as an admin action.
  • Delete an account and all of its data.

Manage Emails

Edit the subject and body of transactional emails without touching code:

  • Email verification
  • Password reset

Each template has a live preview. Overrides are stored in platformConfig under email_templates, so resetting a field restores the default copy.

Blog

  • New post opens a block editor: headings, paragraphs, lists, quotes, dividers, and inline images.
  • Set a title, slug, excerpt, cover image URL, author, and tags.
  • Save draft keeps a post hidden; Publish makes it live on /blog and in the homepage "Latest from the blog" section.
  • Import sample posts seeds six written articles so your blog never launches empty.
  • Published posts appear in the RSS feed at /feed.xml.

Promote any notebook to the public landing page as a read-only showcase. Featured notebooks are visible to visitors and are a strong marketing surface for the study tools.

Announcements

Publish a dismissible banner across your students' dashboard:

TypeLookUse it for
InfoSolid green (brand color)Launch news, new features
WarningSolid amberService notices, planned disruption
MaintenanceSolid redOutages and downtime windows

Options include an optional start and end time window plus a live preview before you enable it. Students dismiss the banner with the close button.

Payments and Ledger

  • Revenue summary with payment counts, active subscribers, a 14-day revenue chart, and a per-gateway breakdown.
  • A searchable audit log of plan lifecycle events: payments, cancellations, resumes, and admin plan changes.
  • Entries are written by the billing functions themselves (when a subscription is confirmed, when a user cancels or resumes, and when an admin changes a plan), so the ledger never drifts from the real plan state.

Billing Config

Set the free, monthly, and yearly plan names and prices, tune the feature comparison table, and enable or disable individual gateways. The upgrade dialog in the dashboard reads this configuration, so changes apply immediately with no redeploy.

Settings

Change admin credentials, review the current admin identity, and switch on any platform-level options.

Demo Showcase Mode

To let a buyer or client preview the panel without exposing real user data:

  • Create the test_admin account from the admin panel (or run admin:createDemoAccount).
  • Signing in with it shows generated placeholder data for users, analytics, the ledger, and the blog instead of live records.
  • Remove it at any time with admin:deleteDemoAccount.

Keep the demo account credentials private in production, or delete the account once your preview is finished.

On this page