github btouchard/ackify-ce v1.1.3

one day ago

Release v1.1.3

🚀 What's New

Silent OAuth Auto-Login

  • Automatic silent authentication when OAuth session exists
  • Reduces login prompts for better user experience
  • New environment variable ACKIFY_OAUTH_AUTO_LOGIN (default: false)
  • New endpoint /api/auth/check for session verification
  • 5-minute cooldown between silent login attempts

SMTP Email Service

  • Complete email notification system with SMTP support
  • Support for Gmail, Office365, and custom SMTP servers
  • HTML and plain text email templates with internationalization (French/English)
  • Gracefully disabled if not configured (no errors)
  • New environment variables: ACKIFY_MAIL_HOST, ACKIFY_MAIL_PORT, ACKIFY_MAIL_USERNAME, ACKIFY_MAIL_PASSWORD, ACKIFY_MAIL_FROM, ACKIFY_MAIL_FROM_NAME

Expected Signers Management

  • Track who should read each document with dedicated admin interface
  • Real-time signature statistics showing signed vs pending readers
  • Support for display names using format "Name email@example.com"
  • Flexible email input: newlines, commas, or semicolons
  • Detect unexpected signatures (users who signed but weren't expected)
  • Bulk or individual management

Email Reminder System

  • Send bulk or selective email reminders to pending readers
  • Automatic language selection (French/English) based on user's interface language
  • Reminder history tracking with complete audit trail
  • Document URL automatically fetched from metadata
  • Personalized emails with recipient names when available
  • REST endpoints: POST /admin/docs/{docID}/reminders/send, GET /admin/docs/{docID}/reminders/history

Admin Dashboard Enhancements

  • New dedicated document details page at /admin/docs/{docID}
  • Complete expected signers management interface
  • Document signature link with one-click copy functionality
  • Improved navigation menu for authenticated users
  • Shows all documents including those with only metadata
  • Cleaner interface with removed redundant status indicators

Document Metadata Management

  • Store comprehensive document information: title, URL/path, checksum, description
  • Support for SHA-256, SHA-512, and MD5 checksum algorithms
  • One-click copy for checksums and clickable document URLs
  • Automatic timestamp tracking with PostgreSQL triggers
  • Document URL automatically included in email reminders
  • REST API: GET /admin/docs/{docID}/metadata, POST /admin/docs/{docID}/metadata, DELETE /admin/docs/{docID}/metadata

Modern UI/UX Improvements

  • Replaced native JavaScript alert() and confirm() with styled modal dialogs
  • Consistent design with warning (orange) and delete (red) visual indicators
  • Modern SVG favicon with brand identity
  • Responsive grid layouts for admin dashboard cards

🔧 Database Changes

  • Migration 0002: expected_signers table for tracking who should read documents
  • Migration 0003: reminder_logs table for email reminder audit trail
  • Migration 0004: Added name field to expected_signers for display names
  • Migration 0005: documents table for metadata management

🐛 Bug Fixes

  • Fixed template syntax error with not operator requiring parentheses
  • Fixed hardcoded French language in email reminders

🔧 Technical Changes

  • New domain models: ExpectedSigner, ReminderLog, Document, DocumentInput
  • New repositories: ExpectedSignerRepository, ReminderRepository, DocumentRepository
  • New service: ReminderService for email reminder logic
  • New email infrastructure: Sender, Renderer, template helpers
  • New handlers: ExpectedSignersHandlers, DocumentHandlers
  • Updated AdminRepository.ListDocumentsWithCounts() to include documents table
  • Updated ReminderService.SendReminders() with locale parameter
  • Comprehensive integration tests for all new repositories
  • New admin routes for expected signers, reminders, and metadata
  • Email templates with i18n support (FR/EN) in both HTML and plain text

Don't miss a new ackify-ce release

NewReleases is sending notifications on new releases.