Skip to content
  • Announcements regarding our community

    1 1
    1 Topics
    1 Posts
    roi.mR
    Streamline Your OpenLegacy Development with Docker Compose Introduction If you're working with OpenLegacy tools, you know the pain of managing multiple services, configuring ports, and keeping track of different Docker commands. Today, I'm sharing a simple Docker Compose setup that brings all your OpenLegacy development tools together in one place, with a beautiful homepage to boot! The Problem Running OpenLegacy tools typically involves: Memorizing (or constantly looking up) long docker run commands Managing multiple container instances manually Tracking which port runs which service Dealing with volume permissions and data persistence Remembering to set environment variables correctly It's tedious, error-prone, and takes you away from what matters: building great applications. The Solution I've created a streamlined Docker Compose configuration that launches all your OpenLegacy tools with a single command. The setup includes: A Beautiful Homepage (localhost:8080) - No more bookmarking multiple ports! A clean, modern landing page shows all your tools at a glance OL Terminal (localhost:8081) - Your terminal-based development environment OL Code (localhost:8082) - Full-featured code editor ️ SQOL (localhost:8083) - SQL and data management interface Key Features One Command to Rule Them All Gone are the days of copy-pasting Docker commands. Just run: ./apps.sh start That's it. All services spin up, properly configured, with persistent data volumes. Centralized Configuration All credentials and licenses are managed in a single config.env file. Update once, apply everywhere. No more hunting through Docker commands to change a password or license key. Smart Data Persistence Your work is automatically saved in named Docker volumes that survive restarts, updates, and even system reboots. Data only disappears if you explicitly delete it—no more "where did my data go?" moments. Permission Issues? Solved. The setup runs containers with proper permissions out of the box. No more FileNotFoundException or permission denied errors when tools try to write configuration files. Professional Homepage The included landing page isn't just functional—it's genuinely nice to look at. With a modern gradient design, hover animations, and responsive layout, it makes accessing your tools a pleasure rather than a chore. Getting Started is Easy Clone the repository Copy your OpenLegacy license from your Community profile Paste it into config.env Run ./apps.sh start Visit http://localhost:8080 That's the entire setup. No complex configuration, no troubleshooting, no headaches. Perfect for Teams The beauty of this setup really shines in team environments: Consistent environments - Everyone runs the same configuration Easy onboarding - New team members are productive in minutes Version controlled - Check the compose file into Git (excluding the sensitive config.env) Documentation included - Comprehensive README covers all common scenarios Beyond the Basics The helper script (apps.sh) provides convenient commands for common tasks: ./apps.sh logs # View real-time logs ./apps.sh status # Check service health ./apps.sh restart # Quick restart ./apps.sh pull # Update to latest versions It also automatically loads environment variables from config.env, ensuring your configuration is always in sync. Technical Highlights For those interested in the implementation details: Uses official OpenLegacy ECR images Lightweight nginx:alpine for the homepage (just 40MB!) Named volumes for data persistence Root user execution to avoid permission issues on Windows/Mac Environment variable interpolation for flexible configuration Restart policies for automatic recovery Conclusion This Docker Compose setup transforms OpenLegacy development from a juggling act into a smooth, professional workflow. Whether you're a solo developer or part of a larger team, having all your tools accessible from a single, beautiful interface makes a real difference in daily productivity. The entire setup is open and ready to use. Fork it, customize it, make it your own. Happy coding! Repository: https://github.com/openlegacy/apps-manager License: OpenLegacy Contributions: Welcome! Have questions or suggestions? Drop them in the issues section or reach out through the OpenLegacy Community.
  • Blog posts from individual members

    3 3
    3 Topics
    3 Posts
    roi.mR
    For decades, development on mainframe and IBM i systems required specialized terminals, manual build scripts, cryptic debugging methods, and limited collaboration. As enterprises modernize systems, migrate workloads, and expose legacy business logic to new platforms, the need for a modern development experience around COBOL and RPG has never been greater. OL Code was built precisely for this reality. It is not “just another editor” for COBOL or RPG. It is a developer workspace, migration accelerator, and visibility tool—engineered for integrators, migration teams, modernization architects, and IT departments. Why OL Code? As organizations reimagine their core applications, three needs repeatedly surface: Full visibility into the legacy estate Programs, copybooks, models, DB references, screen flows Structured development capabilities without depending on the terminal Editing, compiling, testing, running transactions A migration-aware, integration-friendly approach Generating APIs, refactoring screen programs, shifting logic into modern workflows OL Code was designed as the workbench where these needs converge. From Legacy Code to Modern Workflows—Professionally Full Mainframe/AS400 Workspace View OL Code provides structured navigation of: – Programs – Copybooks – Includes and dependencies – Variables and declarations – Linkage sections – Screen maps – DB2 files, tables, and SQL usage All visualized in a modern tree view, eliminating guesswork typically involved when tracing cross-file references. Dataset Browser & Real-Time Search Through seamless connectivity, teams can browse remote datasets: – PDS / PDSE libraries and members (z/OS) – Source libraries / file systems (IBM i) – Historical versions (where supported) Powerful search capabilities allow locating: – Variables – SQL queries – Called programs – Global fields – Copybook usage patterns This enables real dependency understanding within seconds—not days. Deep Analysis Layer, Powered by Hub Planner OL Code integrates with OpenLegacy Hub Planner to reveal insights such as: – Which program calls which program – What domains specific modules belong to – SQL access patterns – Variable usage and structure inheritance – Resource relationships (files, tables, screens, APIs) For integrators and migration teams, this means: – Impact analysis before modification – Controlled domain isolation – Clear modernization segmentation A True Modern IDE for COBOL & RPG Smart syntax view Coloring, folding, auto-alignment Code walkthrough Hover over fields to reveal type, origin, dependency relationships Variable and structure tracing Jump to definitions across project boundaries. Inline hints and recommendations Compiling at the Click of a Button OL Code enables: Compile COBOL program with one click Automatically sends: – Generation JCL (z/OS) – CRTBNDRPG / CRTSQLRPG / CRTPGM command (IBM i) – Bind/link steps Prebuilt templates for: – COBOL batch – CICS program – RPG service programs Compile Log Viewer Errors highlighted, missing references, bind failures AI-Assisted Compilation & Troubleshooting AI can: – Analyze compile errors – Suggest corrections – Apply fixes One-Click Testing — via OL Hub Execute programs remotely, validate response, replay test cases. Create APIs Directly from COBOL & RPG Code Outputs: – REST API structure – Mapping to fields – Code stubs – Reverse API bridge Screen Programs → RPC Programs AI-driven transformation using: – Structure inference – Screen state flattening – Request/response model creation Who Benefits Most? – Integration partners implementing cloud migration – Enterprises migrating gradually – Developers modernizing codebases – Migration factories Where OL Code Fits Assessment → browsing, impact analysis Segmentation → dependency understanding Refactoring → AI assisted code cleanup API enablement → generation & testing Migration → reverse API and coexistence Centralized Web Application Benefits OL Code runs as a modern web application, eliminating dependency on local machine installations. It can be installed centrally and accessed through standard browsers, giving users consistent access from anywhere. Typical deployment options include container‑based environments, standard enterprise runtime servers, and distributed runtime nodes close to mainframe and IBM i systems. This approach greatly simplifies IT operations and accelerates onboarding efforts. Teams can maintain a single system upgrade path, eliminating mismatched versions and reducing conflict resolution overhead. Security, access control and workspace configuration are managed centrally, ensuring governance and operational traceability. Centralized Web Application Benefits OL Code runs as a modern web application, eliminating dependency on local machine installations. It can be installed centrally and accessed through standard browsers, giving users consistent access from anywhere. Typical deployment options include container‑based environments, standard enterprise runtime servers, and distributed runtime nodes close to mainframe and IBM i systems. This approach greatly simplifies IT operations and accelerates onboarding efforts. Teams can maintain a single system upgrade path, eliminating mismatched versions and reducing conflict resolution overhead. Security, access control and workspace configuration are managed centrally, ensuring governance and operational traceability. Bottom Line OL Code delivers – Modern editing – Compile automation – Integrated testing – Migration workflows It is the modernization cockpit for mainframe and IBM i.
  • 0 Topics
    0 Posts
    No new posts.
  • 6 Topics
    19 Posts
    ohad.mO
    New Features Multiple Connections Configuration Administrators can now configure multiple connections for users to choose from, making it easy to switch between environments such as Test and Production. Per-Connection Printer Queue The printer queue is now part of the connection properties, allowing each connection to define its own printer queue. Favorite Connection Selection Users can mark a connection as their favorite. The emulator will automatically connect to it unless another connection is explicitly selected. New Emulator Client Actions Added new client actions including Field Plus, Field Minus, New Line, Clear All Input Fields, and more. Refer to the keyboard mappings for available shortcuts. AS400 Printer Panel Improvements Printer spools can be filtered by time period Multiple filters can be applied simultaneously (e.g., User and Queue) AS400 SYSREQ Support Added AS400 System Request (SYSREQ) functionality (Default key binding: Shift + Esc) Enhancements Improved Numeric Field Validation Alphabetic characters are no longer allowed in numeric fields. Users will be notified when invalid input is entered. Persistent Zoom Level The zoom level is now saved between sessions—no need to readjust it every time. Copy Entire Screen The full screen can be copied without selecting text by invoking the Copy Screen action (Ctrl + C) with no active selection. Improved Handling of Multi-line Fields
  • 8 8
    8 Topics
    8 Posts
    eddie.kE
    Patch Notes — v3.0.3 Admin Panel Added Active Users view: admins can see active users, filter by date, and review user actions (create, delete, compile). Added Backend Logs Console in the admin panel to view backend logs from the UI. Compile Experience When the Compile dialog opens, the detected template is automatically selected. The template dropdown now labels the detected template as <Template Name> (Detected) (e.g., CICS-DB (Detected)), while other templates appear without the suffix. Mainframe Dataset & Members Added right-click on a dataset to open a dialog that lets you search members by content (Mainframe-based search inside member contents). Added Favorite Members: right-click a member to favorite it for quicker access. Editor / UX Fixes Fixed the unsaved changes asterisk lagging behind the actual editor state. Added a close confirmation dialog when there are unsaved changes.
  • 8 8
    8 Topics
    8 Posts
    roi.mR
    Release Notes Version 1.5.2 (Latest) Release Date: January 20, 2026 Commit Range: ecc9efd → e4c72d2 Overview This release includes significant feature enhancements, security improvements, and infrastructure updates. The version has progressed from 1.4.3 to 1.5.2, introducing major new capabilities in query management, schema visualization, and version management. Major Features Query Console Enhancements Saved Queries Functionality: New ability to save, manage, and reuse SQL queries Save queries with custom names and descriptions Browse and load saved queries from a dedicated dialog Enhanced query persistence and retrieval Row Modification Handling: Dynamic UPDATE statement generation for query results Improved CRUD operations in Query Console Enhanced SQL query handling and logging Schema Management Schema Creation Prompt: New prompt in connection dialog to create schemas when needed Foreign Key Enrichment: Enhanced schema graph visualization with JDBC foreign key relationships Improved schema graph retrieval with better error handling Enhanced metadata service capabilities Hub Integration Improvements Enhanced SQL Query Handling: Improved integration with Hub for asset creation Stored Procedure Support: Added support for CALL statements in SQL queries Procedure Name Extraction: Enhanced table/procedure name extraction from CALL statements with proper normalization Kebab-case Naming: Automatic kebab-case conversion for stored procedures with '-sp' suffix Schema Qualification: Updated query generation prompts to require schema qualification for table names CRUD Dialog Enhancements: Improved user experience with clearer labels (Operation name → Model name) Enhanced Logging & Debugging: Comprehensive logging improvements in HubService Detailed logging for asset creation operations including input parameters and payload structure Enhanced error messages with full request/response context Better debugging information for Hub API interactions Query Console Integration: Improved Query Console integration with Hub Enhanced WHERE clause condition management (AND to OR logic improvements) New methods for better condition management and grouping Added schemaName field to chat for improved context in query generation Better integration between Query Console and Hub asset creation workflows Version Management Version Display & Management: Complete version management system implementation Version displayed in application UI (title bar badge) Version API endpoint (/api/v1/version) for runtime version access Version information in startup logs and JAR manifest Automatic version reload on authentication state changes Security Improvements Dockerfile Enhancements Removed Python packages to fix multiple CVEs: CVE-2018-20225, CVE-2025-8869, CVE-2023-5752 (pip) CVE-2025-47273, CVE-2024-6345, CVE-2022-40897 (setuptools) Enhanced security configuration for production deployments Dependency Updates & CVE Fixes Netty: Updated to 4.1.129.Final (fixes CVE-2025-67735) Protobuf: Updated to 3.25.5 (fixes CVE-2024-7254) Dependency version management improvements in build.gradle.kts Vert.x and Logback version adjustments for compatibility ️ Infrastructure & Developer Experience Version Management Automation Unified Version Bump Scripts: New tag-and-bump.sh script for streamlined version management Single script for version bumping and tagging Support for patch, minor, and major version increments Automatic synchronization between gradle.properties and frontend/package.json Release Workflow Documentation: Comprehensive guides added RELEASE_WORKFLOW.md: CI/CD integration guide VERSIONING.md: Complete version management documentation Statistics Total Commits: 28 commits Files Changed: 44 files Lines Added: ~3,406 insertions Lines Removed: ~246 deletions Net Change: +3,160 lines Key File Changes Frontend: Query Console, Saved Queries components, Connection Dialog enhancements Backend: Hub Service, Metadata Service, Query Service improvements Infrastructure: Dockerfile, build configuration, version management scripts Documentation: Release workflow, versioning guides Version Progression 1.4.3 → 1.4.4: Version management infrastructure 1.4.4 → 1.4.6: Version bump script improvements 1.4.6 → 1.4.7: Foreign key enrichment 1.4.7 → 1.4.8: Schema creation prompt, version display enhancements 1.4.8 → 1.4.9: JSON parsing improvements 1.4.9 → 1.5.0: Saved queries functionality, Dockerfile security 1.5.0 → 1.5.1: Dependency compatibility adjustments 1.5.1 → 1.5.2: CVE fixes, final dependency updates Notable Changes by Component Frontend (frontend/) New saved queries dialog components Enhanced query console with save/load functionality Improved connection dialog with schema creation prompt Version badge in application header Enhanced CRUD dialog components Infrastructure Dockerfile security hardening Build configuration updates for CVE fixes Version management scripts and documentation Enhanced logging configuration Migration Notes Version Display: Version is now automatically displayed in the UI. No action required. Saved Queries: New feature available immediately. Existing queries are not migrated automatically. Dependencies: Ensure Docker images are rebuilt with the updated Dockerfile for security fixes. Version Management: Teams can now use the new tag-and-bump.sh script for version management. Related Pull Requests PR #16: Schema graph foreign key enrichment Note: This release represents a significant milestone with major feature additions, security improvements, and enhanced developer tooling. All users are encouraged to upgrade to benefit from the new features and security fixes.