KamoCRM

Live Change Log

Every feature, fix and improvement, posted as it ships. Nothing is held back for a launch.

17,662
Total Changes
6,080
Features
5,341
Fixes
30
Projects
Filter by project
All Projects17,662AIService261APIService174BillingService158ConversionService110DaemonService138DocsService223ESigService91EmailService587InitializerService329KBService151KlusterServices744MCPGatewayService261MediaService604RAGService79SecurityService1,874TranslateService62VOIPService250VectorService11kamo-apps26kamo-asterisk-support27kamo-capcha17kamo-capcha-widget4kamo-internal8,413kamo-login340kamo-marketing642kamo-nowww20kamo-register213kamo-shared-library1,682kamo-signer-monorepo57kamolos114
Filter by type
All TypesBuild16CI523Chore776Docs3,257Feature6,080Fix5,341Other998Performance165Refactor278Revert23Style42Test162Upgrade1
April 12, 2026
Fixkamo-internal

Fit to Width calculates actual container width instead of resetting to zoom 1

Reads **************** (which accounts for the stable scrollbar gutter) and the page's natural width via **************** then computes fitZoom = (availableWidt...

kamo·6mo ago
Fixkamo-internal

Replace all hardcoded purple with var(--color-primary) on Settings & Signers page

Signers icon, icon background, count badge, Add Signer buttons, Add First Signer button, empty-state illustration tint, add-another hover, and the ALL_OF_TYPE s...

kamo·6mo ago
Featurekamo-internal

Auto-select first signer, fix zoom control scrollbar gap, animate properties panel

- Toolbox auto-selects the first signer's UID when signers go from 0→1 - Canvas container uses scrollbar-gutter: stable so the sticky zoom/undo control mainta...

kamo·6mo ago
Featurekamo-internal

Reorder tabs, gate field tools by signer, redesign Settings & Signers tab

- Design is now the first tab; Settings & Signers is second - Toolbox shows "Add Signer" CTA (navigates to Settings) when no signers exist - Signature Tools, Id...

kamo·6mo ago
Featurekamo-internal

Render field controls as actual-looking form elements with signer color tinting

Each field type now renders a visual representation of the real control (text input, checkbox, toggle, dropdown, radio group, date picker, etc.) tinted with the...

kamo·6mo ago
Fixkamo-internal

Remove fixed height and scroll bars from field properties panel

The panel had two vertical scrollbars: 1. DesignTab wrapper had height: 200 + overflowY: auto 2. FieldPropertiesPanel root had height: 200 + overflow: hidden, ...

kamo·6mo ago
Fixkamo-internal

Dever ตั้งค่าหน้าต่อตาจนกระทั่งหลังจากวงเวียน PDF เพื่อป้องกันไม่ให้ PDF.js ความอิ่มสีของคนงาน

บนเอกสาร PDF ขนาด 50 หน้า, เรียกการตั้งค่า Total pages ก่อนการเรียก page () แบบวนรอบ ส่วนประกอบทั้งหมด 50 ภาพตัวอย่าง Canvas ทันที แต่ละคนจะกลับมายัง PDF.js (se...

kamo·6mo ago
Refactorkamo-internal

กําหนดเส้นทางการถ่ายภาพ API ทั้งหมดจากหน่วยรักษาความปลอดภัย ไปเป็น pervice/ docserview

เส้นทางการอัปโหลดในขณะนี้เรียกการแปลง service โดยตรงผ่านทาง Conservance SERVEVER URL: - POST /api/mutter/upload →/api/condition/imation/upload - POST /api/madet...

kamo·6mo ago
Fixkamo-internal

ป้องกันการเรียงหน้าเรียง, แก้ไขภาพตัวอย่าง, เพิ่มภาพตัวอย่างของเซิร์ฟเวอร์ด้านข้างด้วย PDF.js ผิดพลาด

- เพิ่มฟลอเรนซ์: 0 ไปยังหน้า divs ใน Pdf Canvas ดังนั้นหน้าจึงไม่ต้องบีบอัดในคอลัมน์ตัวย่อ - เพิ่มรอยหยัก: 0 ถึงรายการของภาพตัวอย่างในแถบกระดาษหน้า Thumb ด้วยเห...

kamo·6mo ago
Fixkamo-internal

การไล่ระดับสี

- Pdf Canvas: ทดแทน Interfection Conservator ด้วย pages ที่กระตือรือร้น วิธีการตามผู้สังเกตการณ์เป็นที่เชื่อถือเมื่อแท็บการออกแบบเริ่มต้น ด้วยการแสดงผล: ไม่ใช้เ...

kamo·6mo ago
Fixkamo-internal

กําจัดการขัดแย้งของ Child DOM ในการแสดงผลภาพตัวอย่างแบบ PDF

แทนที่ ภาชนะบรรจุ. html/ ส่วนเสริมเพิ่มเติม ด้วยเครื่องราชอิสริยาภรณ์ วิธีการเก่าเคลียร์เจ้าของ โหนดของ DOM โดยตรง ทําให้การตอบโต้ย้อนกลับล้มเหลวเมื่อลอง เพื่อล...

kamo·6mo ago
Fixkamo-internal

เส้นทางไปยังพร็อกซีอัตโนมัติ OTK, ลบตัวช่วย esig Proxy ที่ไม่ได้ใช้ออกไป

OTK เป็นกลไก Authority ที่ถูกต้อง — วิธีก่อนการนําเซสชัน ข้ามระบบรักษาความปลอดภัย เส้นทางพร็อกซี esig ทั้งหมดตอนนี้ใช้ VildOTK จาก Api Proxy.t อีกครั้ง.

kamo·6mo ago
Fixkamo-internal

Use direct session headers instead of OTK for ESigService proxy routes

Read *** session from Redis in Next.js and pass orgId/memberId as trusted headers to ESigService via internal K8s DNS. Removes OTK dependency.

kamo·6mo ago
Fixkamo-internal

Use init endpoint to find-or-create template by imgId on editor load

The create page passes imgId in the URL. The edit page now calls the init endpoint to find or create the ESignTemplate, then uses the returned UUID for design o...

kamo·6mo ago
April 11, 2026
Featurekamo-internal

Add e-signature template editor with design canvas, signers, and versioning

Complete rewrite of /doc/sign/edit page with tabbed interface (Settings & Signers, Design), PDF.js canvas with draggable field overlay, annotation tools, signer...

kamo·6mo ago
Fixkamo-internal

Correct field name mapping between backend and frontend for access level API

Map backend securityLevelId→accessLevel, isOrganizationOwner→isOwner, memberType→isTeamMember in API route. Fix right check to use EDIT_MEMBER_ACCESS_LEVEL inst...

kamo·6mo ago
Refactorkamo-internal

Remove JSON parsing workarounds for subscription plan ID arrays

Backend now returns proper arrays instead of JSON strings, so the try/parse/catch fallback logic is no longer needed in add-on, bundle, and promotion grid cell ...

kamo·6mo ago
Featurekamo-internal

Add access level editor to member settings with org-specific label substitution

Rename CLIENT→MEMBER and INTERNAL→TEAM_MEMBER in ImageAccessLevelType.ts with {var} placeholders. Add access level section to RolesPermissionsTab with edit cont...

kamo·6mo ago
Upgradekamo-internal

ถัดไป.js 16.2.3 ประเภท Script 6.0, Node 24, React 19.2

2553. - ถัดไป.js 16.0.10.10 → 16.2.3 ประเภท Script 5.8. → 6.0.2, Node 20 → 24, React 19.2.3 → 19.2.5. - Migart ESLint จาก . ISlinc.json to black config (eslint....

kamo·6mo ago
Featurekamo-internal

Redesign support page and webinar wizard to match account page layout

Both pages now use the same gradient hero header with embedded tab navigation, matching the /account page pattern. The webinar scheduling wizard uses numbered s...

kamo·6mo ago
Fixkamo-internal

Properly forward multipart FormData and set route handler body size limit

- Revert to parsing FormData and rebuilding for forwarding (fixes MalformedStreamException from raw arrayBuffer forwarding) - Add routeHandlerBodySizeLimit: 5...

kamo·6mo ago
Featurekamo-internal

Add support dropdown with sections, extract webinar scheduling to dedicated page

Support nav button now has a dropdown arrow and Popover with two sections: "Online Support" (Contact Support, View Active Tickets) and "Training" (Request Webin...

kamo·6mo ago
Fixkamo-internal

Stream upload body directly to avoid Next.js 10MB body size limit

- Read request as arrayBuffer and forward raw bytes with content-type header instead of parsing FormData (which triggers Next.js body limit) - Add serverActio...

kamo·6mo ago
Featurekamo-internal

Real-time conversion progress via WebSocket with dual percentages

- Add useConversionWebSocket hook supporting both member and template topics - Create page connects WebSocket before upload, shows live conversion progress fr...

kamo·6mo ago
Fixkamo-internal

Call SecurityService directly via RKE2 DNS, fix hash computation, add staged upload progress

- All template API routes now call SecurityService directly via internal K8s DNS instead of proxying through APIService - Use computeBlake3/computeSha3256 fro...

kamo·6mo ago
Featurekamo-internal

Implement e-signature template management UI

- Replace E-Signatures tab placeholder with full template datagrid (AG Grid) with sub-tabs for Pending/Completed/Archived and Create New Template button - Add...

kamo·6mo ago
April 4, 2026
Fixkamo-internal

Align field name to isAvailableToChildren and enhance advance booking UI

Fixes 400 Bad Request when creating webinar types by sending isAvailableToChildren to match the Java DTO field name (Lombok generates getIsAvailableToChildren f...

kamo·6mo ago
Fixkamo-internal

Make webinar settings forms and table fill available content area

Removes maxWidth constraint from the details form so it fills the full width. Makes the types table and its container use flex layout to fill the available heig...

kamo·6mo ago
Fixkamo-internal

Widen formStrategy state type to string for TypeScript compatibility

The const assertion on WebinarPresenterStrategy made useState infer a literal type, causing a type mismatch with the string prop setter.

kamo·6mo ago
Refactorkamo-internal

Redesign webinar settings from dialog-based to sub-page navigation

Replaces popup dialogs and separate accordion sections with a two-level inline navigation flow: - Level 1: clean webinar types table with click-to-navigate - Le...

kamo·6mo ago
Featurekamo-internal

Add minimum advance booking field to webinar settings UI

Adds a number input for configuring how far in advance a slot must be to allow reservations, with helper text explaining the field.

kamo·6mo ago
Featurekamo-internal

Add PUBLIC_WEBINAR scope toggle to API key management UI

Adds the Public Webinar scope option with VideoCall icon to the API Access settings page, allowing admins to enable webinar API access per key.

kamo·6mo ago
Featurekamo-internal

Add webinar scheduling UI with admin settings and member views

Implements the full webinar frontend in kamo-internal: - WebinarSettingsTab: admin CRUD for webinar types, presenter pools, reminder intervals, availability s...

kamo·6mo ago
Fixkamo-internal

Normalize Quill HTML output for consistent email rendering

Route all email body content through normalizeQuillHtmlForEmail and wrapBodyForEmail before sending, ensuring consistent HTML output whether or not a template i...

kamo·6mo ago
Refactorkamo-internal

Separate support settings from member-level support page into dedicated settings page

- Remove Settings tab from /support page, keeping only Tickets and Analytics - Add sub-tabs to Analytics: Overview and Status & Response Times (moved from setti...

kamo·6mo ago
Featurekamo-internal

Add dynamic Help & Tips panel and webhook URLs to provider integrations

- CommerceProviderSetup now uses HelpTipsOverrideContext to show contextual help that changes based on the current view (list, selector, or per-provider) - Co...

kamo·6mo ago
Fixkamo-internal

Download resultSvg directly without any manipulation

The pipeline SVG already has the background removed. Download it as-is.

kamo·6mo ago

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing