Ezzy

Projects

Top-level containers for blogs, announcements, and settings.

Projects are the top-level container in Ezzy. Each project belongs to a user and holds blogs, announcements, notifications, promo codes, email broadcast recipients, and settings.

Data model

Stored in Convex table projects. Key fields:

  • userId — Owner (Convex Auth user ID).
  • name — Display name.
  • domain — Optional domain (e.g. for linking to a site).
  • description — Optional; used as context for AI features.
  • aiBlogCronEnabled, aiBlogsPerDay, aiBlogIdeas, aiBlogModel — Optional AI blog cron settings.

Convex API (convex/projects.ts)

  • listProjects — All projects for the current user.
  • createProject — Create project (name, optional domain, description).
  • searchProjects — Filter by search term (name/domain).
  • getProject — Get one project by ID (ownership checked).
  • updateProject — Update name, domain, description, AI settings.
  • deleteProject — Delete project (and related data handled by app).

App usage

From Projects you list, create, and open projects. Opening a project shows the project sidebar with Blog, Announcement, Notification, Promo, Email broadcast, and Project settings.