Skip to content

3.18.0-nx0

Choose a tag to compare

@jat255 jat255 released this 20 Jan 01:34
· 6 commits to main since this release

NexusLIMS-CDCS v3.18.0-nx0

Welcome to version 3.18.0-nx0 of NexusLIMS-CDCS!

This version represents the first release of NexusLIMS-CDCS by Datasophos, and is a complete upgrade of NexusLIMS-CDCS to be based off of version 3.18.0 of MDCS. It is nearly a complete rewrite of the NexusLIMS customizations. Key changes include:

πŸš€ Deployment Infrastructure Overhaul

  • Drastically simplified deployment for development and production (see the deployment/ folder)
  • Three-layer Docker Compose architecture (base + dev + prod)
  • Local HTTPS testing with Caddy reverse proxy and internal PKI
  • PostgreSQL-only configuration (MongoDB removed)
  • Automated development environment with dev-commands.sh and initialization scripts
  • Comprehensive backup/restore system with timezone support and error handling
  • Schema management with automated NexusLIMS schema initialization

🎨 UI/UX Modernization

  • Bootstrap 5 integration throughout the application
  • DataTables 2.3.6 with Bootstrap 5 styling and extensions
  • Responsive design with mobile support across all components
  • Enhanced detail view with modular CSS/JS architecture
  • Improved navigation with fixed headers and clickable instrument badge filtering
  • Tour system with enable/disable support and explore page integration

πŸ—οΈ Architectural Improvements

  • Centralized customization via nexuslims_overrides/ Django app
  • Runtime configuration system with config/settings/custom_settings.py
  • Theme system with configurable colors (NX_THEME_COLORS) and branding
  • Template inheritance pattern minimizing code duplication
  • XSLT enhancements with parameter passing and debug mode support

πŸ”§ Technical Enhancements

  • Download system using File System Access API with graceful degradation
  • JSON/XML export functionality with permission-based UI controls
  • Feature detection replacing deprecated browser-specific code
  • Modern JavaScript with modular architecture and improved error handling
  • Static libraries including Shepherd.js 11.2.0, jszip 3.10.1, and DataTables extensions

πŸ“ Key Components Added

  • deployment/ - Complete deployment infrastructure with Docker Compose
  • nexuslims_overrides/ - Centralized customization app with comprehensive documentation
  • config/settings/ - Runtime configuration system
  • xslt/ - XSLT transformations with parameter support
  • static/libs/ - Modern JavaScript libraries
  • scripts/ - Deployment utilities (backup, restore, schema management)

πŸ”„ Migration Highlights

  • MongoDB removal - PostgreSQL-only configuration
  • Template structure - All customizations moved to nexuslims_overrides/
  • UI modernization - Bootstrap 5 and DataTables 2.x integration
  • Static files - Centralized in config/static_files/ directory

πŸ“ Documentation

πŸ”’ Security & Performance

  • Automatic HTTPS with Caddy internal PKI
  • PostgreSQL hardening in production configuration
  • Environment-based secrets management
  • Improved caching and asset loading performance

🎯 Benefits

  • Developers: Modern dev environment, better debugging, comprehensive docs
  • Admins: Production-ready config, security guides, backup procedures
  • Users: Responsive UI, improved navigation, better mobile support

Breaking Changes: MongoDB support removed, template structure changes, static file organization updates.

Full Changelog: https://github.com/datasophos/NexusLIMS-CDCS/commits/3.18.0-nx0