Build log — Mar 2025 to present

Changelog

Every feature, every decision, every improvement — in the order we built them. Nothing invented. Nothing omitted.

56

shipped updates

429

days building

25

new features

10

security updates

Planning1Infrastructure8Feature25Security10Finance3Automation4Analytics1UI/UX4
May 2026
11 updates

May 27, 2026

UI/UX

Theme polish — final pass across all modules

Completed the last remaining components that still showed dark backgrounds when light mode was enabled. Permission cards in Role Manager, the Security Overview inner panels, and the Audit Log filters are all fully theme-aware now. Every screen in the app adapts cleanly to whichever mode the user prefers.

#light-mode#dark-mode#polish

May 26, 2026

Security

Security Overview — complete security dashboard

The Security Overview in Settings received a major upgrade. Admins can now see at a glance: which accounts have two-step login enabled, how many active devices are connected to the workspace, recent failed login attempts, pending team and client invitations, and roles with sensitive access. Everything a team needs to know their workspace is in good hands — in one place.

#security#admin#monitoring

May 25, 2026

Infrastructure

System health monitoring & application logging

Added real-time health checks so the infrastructure team can monitor whether the application and its database are running normally at any given moment. All application events, warnings, and errors now flow through a unified logging system, which makes finding and fixing issues significantly faster.

#monitoring#reliability#infrastructure

May 23, 2026

Infrastructure

Database speed & search performance

Search queries across contacts, companies, and deals are now 3–10× faster, even for workspaces with thousands of records. We added specialized database indexes that allow the system to find partial matches — like searching "john" to find "Johnson" — without scanning the entire table. The improvement is invisible to users, but the app feels noticeably snappier.

#performance#search#database

May 21, 2026

UI/UX

Custom dropdowns & date pickers — no more clipping

Rewrote both the custom dropdown and the calendar component so their menus always appear on top of everything else on screen, regardless of where they are on the page. Previously, dropdowns near the bottom of a list or inside a modal could get cut off. They now open in whichever direction has more available space and stay fully visible at all times.

#form-controls#ux#modals

May 19, 2026

Security

Hardened invitation & client portal flows

Strengthened how team invitations and client portal links behave. Invitation tokens now expire faster, error messages no longer reveal whether a given email is registered in the system (which prevents information leaks), and all access changes — invites sent, accepted, or cancelled — are automatically logged. The client portal scope was tightened so portal users can only ever reach what they are explicitly granted.

#security#invites#client-portal

May 16, 2026

Security

Active sessions & device management

Users can now see every device and browser where their account is currently signed in, including the approximate location and the time of last activity. Any active session can be ended remotely with a single click. If a user suspects their account has been accessed from an unknown device, they can instantly log out everywhere.

#security#sessions#account

May 14, 2026

UI/UX

Light / dark theme system

Introduced a full dual-theme system so users can switch between a dark interface and a warm light interface. The chosen mode is remembered across sessions. Every module — from the Kanban pipeline and workflow canvas to invoices and settings — adapts its colors, borders, and backgrounds accordingly. No more eye strain in bright environments.

#theme#design-system#accessibility

May 12, 2026

Security

Two-factor authentication for admin & owner accounts

Admin and owner accounts can now enable two-step verification. After entering a password, a one-time code is required to complete login. This means that even if a password is somehow compromised, an attacker still cannot access the workspace without also having the second factor. The feature can be enabled or disabled individually from each account's settings.

#security#2fa#authentication

May 7, 2026

UI/UX

Custom calendar — replaced all native date inputs

Every date field in the app (pipeline deals, tasks, invoices, audit log date range) now uses a consistent, beautifully designed calendar picker. The calendar intelligently opens above or below the field depending on available space, and it correctly stays inside its surrounding modal or panel without overflowing. Native browser date inputs — which look different on every operating system — are gone.

#form-controls#calendar#consistency

May 1, 2026

Feature

Quick actions

A quick-create button in the app header lets users add a deal, contact, or invoice without navigating away from their current page. The forms open in a lightweight modal and close back to where the user was. Designed for the high-frequency moments where you want to capture something immediately and keep working.

#productivity#navigation#ux
April 2026
3 updates

Apr 24, 2026

Feature

Pipeline settings

Workspace admins and owners can now manage sales pipelines entirely from Settings: create new pipelines, rename them, reorder and recolor stages, and delete obsolete ones. Changes take effect immediately on the Kanban board. Teams working multiple sales motions (e.g. inbound vs. outbound) can now maintain separate pipelines with their own stage configurations.

#pipeline#settings#admin

Apr 16, 2026

Feature

Workspace activity feed

A live activity feed on the main dashboard shows the team's recent actions grouped by day: deals moved, contacts updated, tasks completed, workflow steps finished, and more. It's filterable by team member, giving managers a simple way to track what happened during the day without asking around.

#dashboard#transparency#team

Apr 7, 2026

Feature

Global search

A ⌘K keyboard shortcut opens a search overlay that queries across contacts, companies, deals, projects, and invoices simultaneously. Results are ranked by recency and relevance. Clicking any result navigates directly to the detail page. For large workspaces with hundreds of records, this is the fastest way to find anything.

#search#navigation#keyboard
March 2026
4 updates

Mar 29, 2026

Feature

Contact scoring

Each contact now carries an automated engagement score from 0 to 100. The score reflects how complete the contact's profile is, how many deals and activities are associated with them, and how far they've progressed through the sales lifecycle. It recalculates automatically whenever the contact is updated, giving sales reps an instant signal of who deserves attention.

#contacts#lead-scoring#sales

Mar 20, 2026

Feature

CSV export

Multi-select checkboxes on the Contacts, Clients, and Deals list pages now include a bulk-export action. Clicking it generates and downloads a formatted CSV file instantly. Column headers match the app's field names so the export works immediately in Excel, Google Sheets, or any data tool.

#export#data#productivity

Mar 11, 2026

Feature

Bulk CSV import

Dedicated import pages for Contacts and Clients accept standard CSV files. The importer shows a column-mapping preview, validates required fields before importing, skips rows that would create exact duplicates, and reports a clear summary of how many records were created versus skipped. Teams migrating from another tool can move thousands of records in one pass.

#import#data#migration

Mar 3, 2026

Security

Security overview — initial version

Added the first version of the Security Overview panel to Settings. At a glance, admins can see how many privileged accounts exist, how many roles are configured (and which carry high-risk permissions), how many team and client invitations are pending, and a feed of the most recent security-relevant events. A strong foundation for the more detailed version that followed.

#security#admin#settings
February 2026
3 updates

Feb 22, 2026

Security

Audit log

A searchable, filterable event log records every meaningful workspace action: contact and company changes, deal movements, role modifications, portal access grants and revocations, and workflow transitions. Filters include full-text search, event category (Security, Portal, Deals, Workflow, Team), team member, and a date range. Results paginate with cursor-based scroll so large histories load smoothly.

#audit#compliance#security

Feb 13, 2026

Feature

Client portal access management

Admins can now view a full list of active portal users and pending invitations for every company, directly from the company detail page and from workspace Settings. Access can be revoked instantly — a revoked user loses access immediately on their next request. All revocations appear in the audit log.

#client-portal#access-control#admin

Feb 4, 2026

Feature

Client portal invitations

Companies and their linked contacts can be invited to a dedicated client-facing portal. Invites are sent by email, include an expiry date, and can be cancelled before they are accepted. Accepted invites create an active access record. Clients who use the portal see only what they are explicitly shown — nothing from the internal workspace leaks through.

#client-portal#collaboration#clients
January 2026
3 updates

Jan 26, 2026

Feature

Tags system

Contacts can now be labeled with custom colored tags. Tags are reusable across the workspace and can represent anything: lead source, deal stage, customer tier, region, or any internal classification. The contact list shows tags inline, making it easy to scan and segment at a glance.

#contacts#segmentation#organization

Jan 17, 2026

Feature

Notification center

A notification bell in the header delivers real-time in-app alerts for the events that matter most: a task going overdue, a deal being won, a workflow step assigned to you, a project nearing its deadline, an approval request waiting for your review, and more — 15 notification types in total. Notifications can be dismissed individually or all at once.

#notifications#real-time#ux

Jan 8, 2026

Feature

Inbox messaging

A built-in messaging module lets team members communicate directly inside the app. Supports both one-on-one conversations and group channels. Messages show delivery and read receipts, can be edited or deleted, and conversations can be archived when they're done. An unread badge on the sidebar keeps everyone aware of pending messages.

#messaging#collaboration#team
December 2025
3 updates

Dec 29, 2025

Analytics

Reports module

The Finance section gained a dedicated Reports page with three visualizations: a revenue-over-time bar chart, a pipeline stage distribution showing where deals are concentrated, and a sales forecast trend line projecting future revenue based on open deals and their probabilities. All charts filter by date range and respect the workspace currency settings.

#reports#analytics#revenue#charts

Dec 18, 2025

Security

Role presets

Five ready-made permission presets make it fast to configure roles without selecting permissions one by one: Sales (contacts, companies, pipeline), Delivery (projects, workflows, tasks), Project Manager (full delivery control with approvals and assignments), Finance (invoices, values, reports, exports), and Admin Lite (broad operational access without destructive controls). One click applies a preset; fine-tuning still possible afterwards.

#roles#permissions#admin#onboarding

Dec 9, 2025

Security

Roles & permissions

Workspace owners can now define completely custom roles, each with a precise set of per-module permissions. Permissions control every significant action in the app — viewing, creating, editing, approving, assigning, exporting, and deleting across each module. Roles can be reordered by drag-and-drop, duplicated, and assigned to team members. Permissions flagged as high-risk are highlighted so admins are aware of what they're granting.

#roles#permissions#security#admin
November 2025
3 updates

Nov 28, 2025

Automation

Workflow automations — triggers & actions

Automation rules can now fire automatically when something happens in a workflow: a step completes, a step runs overdue, an approval is requested or decided, or an entire workflow finishes or is cancelled. The available actions include sending a notification, creating a task, assigning a user, moving a deal to a new stage, updating a contact's status, and logging a custom audit event.

#automation#workflows#triggers#no-code

Nov 19, 2025

Automation

Workflow approval nodes

Approval nodes pause a running workflow and send a formal approval request to designated reviewers. Approvers receive an in-app notification, can review the context, and accept or reject with an optional note. Accepted approvals resume the workflow from where it paused; rejections route it to an alternative path defined in the template. Every decision is logged in the execution history.

#workflows#approvals#governance

Nov 10, 2025

Automation

Workflow instances — live execution

Workflow templates can now be launched as live instances, linked to a specific deal, project, or contact. Each running instance tracks its current active step, overall completion percentage, and current status: Running, Paused, Waiting for Approval, Completed, Cancelled, or Overdue. Every step transition is recorded as a history entry, creating a full audit trail of how each process unfolded.

#workflows#execution#tracking
October 2025
3 updates

Oct 30, 2025

Automation

Workflow template builder

A visual, drag-and-drop workflow canvas lets teams design process templates from scratch. Nine node types are available: Start, End, Step, Decision (branching), Approval, Review, Waiting, Milestone, and Optional. Arrows between nodes define the flow. Templates can be saved as drafts, published for use by the team, or archived when no longer needed.

#workflows#builder#visual#no-code

Oct 18, 2025

Security

Protection against automated login attacks

The app now automatically detects and blocks repeated failed login attempts from the same source. After a threshold is crossed, access is temporarily locked and the event is flagged. This prevents bots and automated tools from trying to guess passwords at high speed. All failed attempts are recorded for review in the audit log.

#security#authentication#brute-force

Oct 9, 2025

Feature

Time tracking

Team members can log billable time entries against individual deals — recording start time, end time, duration, and optional notes. Time totals roll up on the deal detail page, giving an instant view of how much effort has been invested in a sales opportunity. This data feeds directly into profitability analysis and future billing.

#time-tracking#deals#billing
September 2025
4 updates

Sep 30, 2025

Finance

Multi-currency support on invoices

Invoices now support four currencies: US Dollar, Euro, British Pound, and Serbian Dinar. Currency is selected per invoice and carries through to the PDF export. The invoice list and statistics section correctly display amounts with the appropriate currency label.

#invoices#currency#international

Sep 21, 2025

Finance

Invoice PDF export

Invoices can be exported as a clean, professional PDF and downloaded directly from the invoice detail view. The PDF includes all relevant information: company and contact details, itemized line items with quantities and unit prices, totals, notes or payment terms, and a status indicator for paid invoices.

#invoices#pdf#export

Sep 12, 2025

Finance

Invoicing module

The Finance section launched with a full invoice management system. Create invoices with as many line items as needed (description, quantity, unit price), track each invoice through a status lifecycle from Draft to Sent to Paid, and receive automatic Overdue flags. Invoices link to contacts, companies, and deals for full traceability from sale to payment. Invoice numbers increment automatically per workspace.

#invoices#finance#billing

Sep 2, 2025

Feature

Task calendar view

A monthly calendar view plots all tasks by their due date, giving teams a visual layout of what's coming up. Each day shows a compact task count; clicking expands the full list for that date. The calendar is filterable by team member, making it easy for managers and individuals alike to plan their week.

#tasks#calendar#planning
August 2025
3 updates

Aug 23, 2025

Feature

Tasks module

A dedicated Tasks page collects all tasks across the entire workspace regardless of which deal, contact, or project they belong to. Tasks can be filtered by completion status, priority level (High, Medium, Low), due date range, and the team member they are assigned to. Inline completion toggles and edit modals make it a practical daily work surface.

#tasks#productivity#management

Aug 14, 2025

Feature

Notes system

Typed notes can be attached to contacts, deals, and companies. Note types map to the real interaction that took place: General, Call, Meeting, Email, or Warning. Each note stores its author, creation timestamp, and optional context. Notes appear on the relevant record and roll up to the company overview, preserving the full history of communication.

#notes#crm#history

Aug 5, 2025

Feature

Activities system

Activities model the actual interactions a team has with contacts and deals: phone calls, emails, in-person or video meetings, and tasks. Each activity can be linked to a contact, deal, or project; assigned to a team member; given a priority level; and scheduled with a due date. The contact detail page shows a chronological activity timeline, providing full visibility into the relationship history.

#activities#crm#timeline
July 2025
3 updates

Jul 26, 2025

Feature

Project milestones

Projects gained a milestone system for breaking down delivery into named checkpoints. Each milestone has a title, optional description, due date, and an ordered position in the sequence. Milestones track their own completion state, contribute to the overall project progress indicator, and appear on the project detail page as a clear visual checklist.

#projects#milestones#delivery

Jul 17, 2025

Feature

Project management module

The Delivery section launched with full project tracking. Projects have a status lifecycle (Planning → Active → On Hold → Completed → Cancelled), a budget field, and a progress percentage. A project links to the deal that originated it (closing the loop from sale to delivery) and to the company it serves. Contacts can be associated directly with a project for delivery-time communication.

#projects#delivery#management

Jul 8, 2025

Feature

Deal detail view

Each deal received a dedicated detail page. Visible at a glance: deal value, win probability percentage, expected close date, linked contact, linked company, and current pipeline stage. A tabbed interface on the same page organizes tasks, notes, and time entries. Stage changes from the detail view reflect immediately on the Kanban board without a page reload.

#deals#pipeline#detail
June 2025
4 updates

Jun 28, 2025

Feature

Kanban pipeline board

The pipeline view became a full drag-and-drop Kanban board. Deal cards display title, value, linked contact name, and an overdue-task badge. Dragging a card to a new column updates the deal's stage instantly using an optimistic UI update — no spinner, no delay. Column ordering and colors mirror the custom stage configuration set for that pipeline.

#deals#kanban#pipeline#ux

Jun 18, 2025

Feature

Sales pipeline foundations

Introduced the core Pipeline and Stage data models. Each workspace can define multiple named pipelines. Stages within a pipeline carry a display name, a hex color, and an order index. This model powers both the Kanban board UI and the deal detail stage selector, with a settings page (added later) enabling full CRUD management.

#pipeline#deals#data-model

Jun 9, 2025

Feature

Companies / Clients module

Launched the Companies module — surfaced in the interface as "Clients." Each record holds the company name, website, industry (Technology, Finance, Healthcare, and more), and employee size range. Contacts can link to a company, and the company detail page aggregates linked contacts, associated deals, notes, and summary statistics in one view.

#companies#clients#crm

Jun 1, 2025

Security

Password strength requirements

Enforced clear password rules for new accounts and password changes: minimum length, required character variety, and detection of commonly used passwords. The rules are validated on the server so they cannot be bypassed through the browser. Users changing their password see clear feedback on what each requirement expects.

#security#authentication#passwords
May 2025
3 updates

May 23, 2025

Feature

Contacts module

The first true CRM module: people records with first and last name, email, phone, and a status that advances through four stages — Lead, Prospect, Customer, Churned. Each contact can be owned by a specific team member, optionally linked to a company, and associated with multiple deals. The list view supports full-text search, status filtering, and name sorting.

#contacts#crm#sales

May 15, 2025

Feature

Onboarding flow

New users land on a guided onboarding sequence immediately after signing up. The flow collects the workspace name and company details (industry, size, website, location) and populates both the workspace record and a starter company entry before dropping the user into the dashboard. Clean first-run experience with no blank slate.

#onboarding#ux#setup

May 8, 2025

Infrastructure

Dashboard layout & sidebar navigation

Built the persistent application shell: a collapsible left sidebar organised into five sections (Overview, Sales, Delivery, Finance, Admin), a fixed top header showing the current user and notifications, and a main content area. Navigation items are permission-gated — users only see the modules their role grants access to. The sidebar state persists per user session.

#layout#navigation#ux#permissions
April 2025
4 updates

Apr 30, 2025

Infrastructure

Multi-tenant workspace architecture

Every data model was scoped to a Workspace identifier. All API routes validate workspace membership before returning or changing any record, making it impossible for data to cross tenant boundaries regardless of what a request contains. A single database serves all workspaces in complete isolation.

#multi-tenancy#security#architecture

Apr 22, 2025

Infrastructure

Team invite system

Workspace owners can invite new team members by email. Invites are stored with a securely hashed token, an expiry date, and a target role. Accepting the invite creates a workspace membership and logs the new user in automatically. Expired or already-used tokens return a clear, helpful error page rather than a generic failure.

#team#invites#onboarding

Apr 14, 2025

Infrastructure

Authentication system

Built the full authentication stack from the ground up: user registration (which simultaneously creates a new workspace), login with securely hashed passwords, email address verification, server-side session management with expiry and per-device tracking, and the groundwork for two-factor login added later. Middleware protects every dashboard route from unauthenticated access.

#auth#security#sessions

Apr 7, 2025

Infrastructure

Database schema — first version

Defined the initial Prisma schema with the four foundational models: User (credentials and profile), Workspace (the multi-tenant container), WorkspaceMember (the link between a user and a workspace including their system role), and Role (the custom permission structure). Ran and committed the first database migration against PostgreSQL.

#database#prisma#schema#foundation
March 2025
2 updates

Mar 31, 2025

Infrastructure

Project bootstrap

Initialised the repository with Next.js 15 App Router, TypeScript, Tailwind CSS v4, Prisma ORM, and PostgreSQL. Set up the folder structure, path aliases, ESLint, and environment configuration. The first deployable — an empty shell with working routing — landed on the staging environment the same evening.

#setup#next.js#prisma#tailwind#foundation

Mar 24, 2025

Planning

Project kickoff

First day. Defined the product vision: a business operating system that unites CRM, project delivery, workflow automation, and invoicing into one cohesive workspace. Mapped the core entity relationships (contacts → deals → projects → workflows), selected the technology stack, and committed the initial empty repository. The building started here.

#planning#architecture#vision

The beginning.