Prozari logoPROZARIBack to home
Product Changelog

What's new in Prozari

Every shipped feature, improvement, and fix — in reverse chronological order. We ship roughly every two weeks.

v2.9May 2026

Prozari MCP, public REST API & social-post approvals

Three pieces ship together. The MCP server lets Claude Code, Cursor and Codex drive your boards via 16 tools. Personal API tokens land in Settings — mint a pzr_… token, wire it into any HTTP client. And every social post can now route through an OWNER/ADMIN review before it goes live.

  • Feature

    Prozari MCP server — Claude Code / Cursor / Codex

    Published on npm as @prozari/mcp-server. One npx command registers it with any MCP-aware AI client. 16 tools across discovery (workspaces, boards, lists), cards (create, update, move, complete, comment, list-my-work) and the full social-scheduler approval flow (list, create, approve, reject, analytics).

  • Feature

    Personal API tokens (Settings → API tokens)

    Mint pzr_… tokens with per-scope permissions for the MCP server, public REST API, and your own scripts. Tokens inherit your UI access — lose access to a board and the token loses it too. Stored hashed; the raw value is shown once at creation, never again.

  • Feature

    /api/v1 public REST API (preview)

    First scope-checked endpoints are live: GET /me, GET + POST /cards. Every call is audit-logged with status code, IP, token id and duration. Full surface + OpenAPI docs in the next release.

  • Feature

    Social post approval workflow

    New workspace toggle "Require approval before publishing". New posts land in PENDING_APPROVAL until an OWNER or ADMIN approves or rejects (with optional reason). Self-approval is blocked. Authors are notified the moment a reviewer acts; calendar pills flip from amber to green.

  • Feature

    Developer portal at /developers

    New documentation hub at www.prozari.com/developers — MCP install walkthrough, tool catalog, configuration reference, and the roadmap for REST / Webhooks / OAuth in Phase E.

  • Improvement

    Auto-archive completed cards

    New per-workspace setting: "immediately on completion" or "after N days" (1 / 7 / 30). An hourly worker tidies the board for you. Cards stay searchable, just out of the way.

  • Improvement

    Persistent socket reconnect + accurate overdue logic

    Socket reconnects forever after logout-login or token rotation — no more stuck "Offline" pill. Card completion now honours an explicit completedAt across modal, list, calendar, gantt and analytics; Mark complete toggle makes the state visible.

  • Improvement

    Wiki polish + Office document preview

    Wiki home is a compact list with sub-page count pills. Attachment lightbox now previews .docx and .xlsx via Office Online viewer. Smarter chevrons on collapsed tree nodes.

v2.8April 2026

Social Media Scheduler — Facebook, Instagram & LinkedIn

Draft and schedule social posts directly from a card or the campaign workflow. The built-in publisher polls every minute, dispatches to the right platform adapter, and self-heals on auth failures. Three networks, one queue, zero third-party SaaS.

  • Feature

    Connect Facebook Pages, Instagram Business & LinkedIn

    One-click OAuth gets every Page you admin, every Instagram Business profile linked to a Page, and every LinkedIn organisation where you’re an Administrator connected. Personal LinkedIn share is also supported. Tokens are encrypted at rest with AES-256-GCM.

  • Feature

    Schedule a post from inside any card

    CardModal’s Hierarchy rail gains a Social posts panel. Pick a platform, pick a connected account, write the body, drop in media URLs, choose a datetime — the post is queued for the publisher. Drafts are saved without a scheduledAt; SCHEDULED posts wait for the cron worker.

  • Feature

    Built-in publisher with platform-aware adapters

    Facebook (text, photo, video) hits /feed, /photos, /videos. Instagram runs the two-step container flow, polling status_code up to 20s for Reels. LinkedIn posts via /v2/ugcPosts. The router decrypts tokens, dispatches, and translates platform errors into clear failure reasons.

  • Feature

    Auto-mark accounts EXPIRED on auth failure

    When a long-lived token finally dies, the publisher classifies the platform error (FB codes 190/102/463, LinkedIn 401/403) and flips the account to EXPIRED with the platform’s own error message. Users see a Reconnect chip in Settings — no detective work, no silent retry storms.

  • Feature

    Atomic claim, capped throughput, no double-publish

    The cron worker uses a conditional updateMany WHERE status=SCHEDULED to atomically transition each due post to PUBLISHING. Two workers can’t both grab the same row. Capped at 25 posts per tick so a recovery window after downtime drains gracefully.

  • Improvement

    Settings → Integrations → Social Media tab

    New tab lists connected accounts (with platform badge, display name, status, and a Disconnect chip), Connect buttons that route through real OAuth, and a "By token" admin form for testing without dev-app credentials.

v2.7April 2026

Asset Management — workspace files, versioning & lightbox

Every file you upload to a card now lives in a workspace-wide gallery. Re-upload to create a new version (the old ones stay one click away). Click an image, PDF or video to preview inline — no download round-trip.

  • Feature

    Workspace files gallery

    New /files page surfaces every attachment uploaded to any card in the workspace. Filter chips for images, videos, PDFs, docs, archives. Folder rail on the left lets you organise across projects without losing the source card link.

  • Feature

    Version history per attachment

    Drag the same file onto a card twice and Prozari keeps both — the old version slides into a Versions list, the new one becomes head. Roll back in one click; download any historical version without DM-ing the designer.

  • Feature

    Inline lightbox previews

    Image, PDF and video attachments now open in an inline lightbox. Arrow keys page through the attachment list, ESC closes, no full-page navigation. Works the same in CardModal and the Files gallery.

  • Feature

    Folders inside the gallery

    Group files into folders without moving them off the source card. A file can live in the Q2-Launch folder while still being attached to the launch-prep card — the folder is a view, not a destination.

  • Improvement

    Private S3 bucket with signed GET URLs

    Uploads use presigned PUT URLs; previews use short-lived signed GET URLs. The bucket itself stays private — the public internet never has direct access. CardsService.findOne now signs every attachment URL on the way out, so old links keep working seamlessly.

  • Fix

    Attachment 500s on private buckets

    Fixed the long-standing issue where attachment previews 500’d after the bucket was switched from public to private. The S3_* env-var naming convention is now honoured (with AWS_* as a fallback for older deployments).

v2.6April 2026

Campaigns, private boards & a faster app

A first-class campaign manager for marketing, launches and content pushes. Boards can now be locked down to an explicit member list. And the whole app boots faster thanks to route code-splitting and leaner board payloads.

  • Feature

    Campaigns — group cards under goals & budget

    Every campaign carries a goal, channel mix (email, LinkedIn, X, paid, press), an owner, start/end dates, and a budget tracked in naira. The dashboard shows progress %, cards-by-status, and flags budget overruns in red before the CFO does.

  • Feature

    Three battle-tested campaign templates

    Product Launch (11 cards · 42d), Email Campaign (11 cards · 14d), and Social Push (10 cards · 10d). Pick a template, choose the board you want the starter cards seeded on, and you’re running.

  • Feature

    Link cards to campaigns from the card modal

    Every card detail view gains a Campaigns row in its Hierarchy rail. Attach, detach, or jump to the campaign page with one click — no sidebar-hopping. A single card can contribute to multiple campaigns at once.

  • Feature

    Board access control — Private boards with member lists

    Flip any board to Private from the overflow menu. Pick exactly who can open it — Admin, Editor, or Viewer. Board creator and workspace OWNER/ADMIN always keep access. Private boards disappear from the sidebar for people who aren’t on the list.

  • Feature

    Marketing templates in Prozari Docs

    New Marketing tab in the Docs template picker ships four real briefs: Marketing Brief (campaign plan), Creative Brief (for designers), Social Post (platform variants + QA checklist), Email Campaign (subject A/B + plain-text fallback).

  • Improvement

    Faster first paint + leaner board loads

    Route code-splitting with React.lazy cuts the initial JS bundle by ~30–40%. The board-load query drops per-card checklist items in favour of server-aggregated counts, shrinking payloads on checklist-heavy boards. Analytics CFD now runs in a single SQL query instead of a 30× JS filter loop.

  • Improvement

    Assignee picker search

    Card modals in workspaces with 7+ members get a slim filter above the assignee chip list. Matches name or initials as you type. Clear button on the right. Filter resets when you open another card.

  • Fix

    Slack & Google Workspace OAuth

    Connect buttons no longer 401 on click — they fetch the install URL with a JWT, then navigate. Slack status panel flips from "Connect" to "Connected" immediately after OAuth, shows team ID + channel, and offers a clean Disconnect action.

  • Security

    Board-level ACL across all endpoints

    Private boards enforce access on reads AND mutations: create/update/delete/share/archive all check the BoardMember list. Template card seeding honours the same ACL — you can’t seed cards onto a board you can’t open.

v2.5April 2026

Atelier design + MS-Project-grade Gantt

Complete visual rebuild on a unified design system, plus drag-create / drag-reschedule / drag-to-link dependencies, critical-path highlight, and swimlanes on the Gantt.

  • Feature

    Atelier — a new premium design system

    Every screen rebuilt on a unified token-based design system. Syne display type, mint accent for interactive states, brand-gradient CTAs, and fully theme-aware surfaces that flip cleanly between dark and light with one click — no more pockets of dark in a light app or vice versa.

  • Feature

    MS-Project-grade Gantt creation

    Five ways to create a task directly from the Gantt timeline: toolbar "+ New task", per-list "+ Add task" row, double-click any day, drag a date range (inline title input appears instantly), or drag the mint handle from one bar to another to link dependencies.

  • Feature

    Drag to reschedule, resize, and link

    Grab any Gantt bar to move it horizontally. Drag its left edge to change the start date, right edge to change the due date. Drag the mint circle on a bar onto another bar to add a blocked-by dependency — with a live ghost arrow. All snap to the day grid.

  • Feature

    Critical-path highlight

    One-click toolbar toggle computes the longest blocked chain across your plan via topological DFS. Bars and arrows on the critical path light up in amber — see exactly which tasks decide your ship date.

  • Feature

    Gantt swimlanes

    Group bars by Assignee, Label, Priority, Sprint, or List. Cards with multiple assignees appear in each lane, MS-Project style. Switch views without reloading.

  • Feature

    Click-to-delete dependencies

    Hover any dependency arrow on the Gantt — a red X badge appears at the midpoint. Click to remove the dependency. No menu-diving, no modal round-trip.

  • Improvement

    Card modal redesign (Atelier)

    Three-column layout: activity feed on the left (with a "live" marker), main content in the centre (Syne title, Syne section headers, Manuscript-style pull-quote comments), and a compact row-based rail on the right replacing the old 13-panel stack. Collapsible rail groups: Properties, Work, Hierarchy, Integrations.

  • Improvement

    Polished sign-in experience

    New login page with a "frozen ⌘K workspace" hero on the left, live usage stats, and mint-accent focus rings on form fields. Forgot-password and reset-password screens on the same premium aesthetic with a corner brand ribbon.

  • Improvement

    Welcoming empty states

    No workspaces yet? New users land on a hero "Welcome to Prozari" emptystate with brand-gradient CTA instead of a terse emoji. Empty board columns, archived cards panel, no-releases and no-sprint states all share a consistent EmptyState primitive.

  • Fix

    startDate persists from Gantt drag-create

    Cards created via the Gantt drag gesture now correctly persist their start date on the server (previously dropped in the create payload).

  • Fix

    No more 404s after inline task creation

    Manipulating a freshly-created bar before the server round-trip completes no longer emits PATCH /api/cards/{tempId} 404 errors — optimistic state holds correctly until the real ID arrives.

v2.4April 2026

Prozari Docs — your team’s knowledge hub

Collaborative docs, hierarchical pages, and direct linking between cards and documentation.

  • Feature

    Prozari Docs (rebranded from Wiki)

    A full collaborative docs workspace built into Prozari. Create spaces per team or project, nest pages hierarchically (Jira/Confluence-style), and edit together in real time with live cursors and @mentions.

  • Feature

    Link docs to board cards

    From the card modal, search and link any doc page to a task. A "Linked Docs" panel shows emoji + title for each attached doc, and one click takes you straight to the document — no more Slack-search-and-paste.

  • Feature

    11+ documentation templates

    Start any doc from API Reference, Architecture Overview, ADR, Runbook, Post-mortem, Release Notes, Database Schema, Team Onboarding, and more — grouped into Engineering, Operations, Product, and Team categories.

  • Feature

    Rich text editor with slash commands

    Headings, tables, task lists, code blocks, underline, links, text alignment, horizontal rules, and typography shortcuts. Type / anywhere to insert a block. Export any page to Markdown or PDF.

  • Improvement

    Redesigned Docs home

    Gradient space cards with deterministic colour hashing, frosted emoji circles, hover-lift animations, and a streamlined new-space modal with auto-generated keys.

  • Improvement

    Auto-collapsing sidebar

    The main navigation automatically collapses to an icon rail when you enter Prozari Docs, giving the page tree and editor the full viewport width.

v2.3March 2026

Security hardening

Account lockout, token revocation, TOTP 2FA, XSS hardening, and rate limits.

  • Security

    Time-based one-time password (TOTP) 2FA

    Enable 2FA from Settings → scan the QR code in any authenticator app → confirm a 6-digit code. Login auto-submits as soon as you type 6 digits.

  • Security

    Account lockout after repeated failed logins

    Five consecutive failed logins locks the account for 15 minutes. Lockout resets on successful login.

  • Security

    Token revocation on logout and password reset

    JWTs now include a version claim. Logging out increments the version and invalidates every token issued before. Password resets also bump the version.

  • Security

    HTTP security headers & rate limiting

    Helmet now sets CSP, X-Frame-Options, X-Content-Type-Options. Auth endpoints are rate-limited to 5 requests per minute per IP.

  • Security

    File upload MIME filter

    Attachments are now restricted to images, PDFs, and plain text. Unsupported types return 415 Unsupported Media Type.

v2.2February 2026

Roadmap, releases, and billing

Gantt timeline view, releases module, NGN pricing, and Flutterwave billing.

  • Feature

    Gantt / Timeline view

    SVG-based Gantt chart with bars from startDate → dueDate, milestone diamonds, dependency arrows, and a live today-line.

  • Feature

    Releases module

    Plan releases, assign cards, and track status (Planned → In Progress → Released → Cancelled) across boards.

  • Feature

    Naira (₦) pricing & billing

    Full billing page with monthly/yearly toggle, live NGN pricing, invoice history, and Flutterwave-powered upgrade flow.

  • Improvement

    Start date on every card

    Cards now have both a start and due date, used by the Gantt view and the new Dates panel in the card modal.

v2.1January 2026

UX polish & live collaboration

@mention autocomplete, unified dates panel, multi-assignee fix, real-time notifications.

  • Feature

    Jira-style @mention autocomplete

    Live dropdown with keyboard navigation in description and comment fields. Inserts @Full Name at the caret and notifies the mentioned teammate.

  • Improvement

    Unified Dates panel in card modal

    Quick-pick chips (Today / Tomorrow / Next week), side-by-side start and end date inputs, and a visual range bar showing duration.

  • Fix

    Multi-assignee race condition

    Concurrent assignee toggles no longer clobber each other. Per-card optimistic rollback replaced the previous whole-board snapshot.

  • Improvement

    Live notifications via Socket.IO

    New notifications are pushed in real time instead of waiting for the 30-second poll. Status bar shows Live / Offline socket state.

Got a feature request?

We read every message. Reach us on WhatsApp or email — real replies from the team building Prozari.

info@rightpitch.ng