Files
nibiru-framework.com/nibiru
stephan.kasdorf ea6575932f 🚀 Nibiru Framework CLI v2.0.0 - PostgreSQL Support & Modern UI
 New Features
🐘 PostgreSQL Database Support
Multi-database architecture: Full PostgreSQL support alongside existing MySQL/MariaDB
Automatic driver detection: Seamlessly switches between MySQL and PostgreSQL based on INI configuration
Conditional compilation: Builds with or without PostgreSQL libraries (graceful degradation)
Database-agnostic migrations: Same migration interface for both database types
Production-ready: PostgreSQL-specific SQL syntax handling (SERIAL, information_schema, etc.)
Configuration:``` ini
[DATABASE]
driver = "postgresql"  # or "mysql" for MySQL/MariaDB
hostname = "localhost"
port = 5432
username = "your-user"
password = "your-password"
basename = "your-database"
```

🎨 Modern UI Redesign
New ASCII art logo: Beautiful Unicode box-drawing characters
Light cyan color scheme: Modern terminal aesthetics matching brand colors
Gradient effects: Bright white to cyan color transitions
Proper alignment: Clean, professional box layout
Horizontal separator: Visual separation between content and footer
🔧 Technical Improvements
Files Added:
PostgreSQLMigrator.h - PostgreSQL migration handler interface
PostgreSQLMigrator.cpp - Full libpq-based implementation
Files Modified:
CMakeLists.txt - PostgreSQL library detection and conditional compilation
main.cpp - Database driver selection logic and modern UI
ModuleCreator.h/.cpp - New color definitions for cyan/bright white
Migration Commands Enhanced:
-mi {environment} - Now supports both MySQL and PostgreSQL
-mi-reset {environment} - Database-agnostic migration reset
-mi-reset-file {filename} {environment} - Single migration reset

🎯 Backward Compatibility
 100% backward compatible with existing MySQL configurations
 Defaults to MySQL when driver field not specified
 No changes required to existing INI files
 Zero modifications to working MySQL implementation

📝 Dependencies
Required:
Boost >= 1.74.0 (program_options, serialization)
MariaDB/MySQL client library
ncurses
libwebp
base64
Optional:
libpq-dev (for PostgreSQL support)

🐛 Bug Fixes
Fixed include order conflict between ncurses and Boost headers
Corrected ASCII art alignment issues
Removed unwanted screen jumping in help output

Installation: Download the binary and place it in your framework root directory, or build from source using the instructions above.
Compatibility: Linux x86_64, tested on Debian/Ubuntu-based distributions

© 2024-2026 Stephan Kasdorf
2026-02-10 16:21:10 +01:00

3.4 MiB
Executable File