The Java-First Web Framework for Serious Business Apps — Without the Architectural Fragmentation
For over 10 years, Oorian has powered iGradePlus—a commercial SaaS with 500k+ lines of code. Pure Java development with flexible communication (AJAX, SSE, or WebSocket per page) and best-of-breed UI libraries. No vendor lock-in, no proprietary components.

Why Choose Oorian
A unique approach to pure Java web development that gives you flexibility without sacrificing productivity.
Intuitive Programming Model
If you know Java and HTML/CSS, you already know Oorian. Elements are objects, styles are methods, events are listeners — no new syntax to learn.
Full IDE Support
Autocomplete, refactoring, and navigation work perfectly. Your IDE knows every element, property, and method.
Easy Debugging
Set breakpoints in your event handlers. Step through your UI logic. No browser dev tools required.
Batteries Included
Security, communications, error handling, accessibility, and internationalization are built in — so you can focus on your application, not reinventing infrastructure.
No Build Tools Required
No webpack, npm, or complex frontend toolchain. Just compile your Java code and run. Simple as it should be.
No JavaScript Required
Write everything in Java. No context switching, no JS debugging, no hunting through browser consoles.
Comprehensive Features
Everything you need to build modern web applications in pure Java — from HTML elements to real-time communication.
Pure Java Development
Write your entire application in Java—UI included. Leverage inheritance and polymorphism to build reusable controls. Type-safe, debuggable, OOP throughout.
Unified, Lightweight Architecture
Simple JSON messaging across all communication modes. No heavy client-side framework, no complex build tools. Just clean, understandable communication.
JDK-Style Event Model
Handle browser events with familiar listener patterns—just like Swing or JavaFX. Every extension uses consistent conventions for configuration and data binding.
Component-Based Architecture
Build your UI with composable Java components. Every HTML element is a first-class Java object with type-safe properties, intuitive methods, and full IDE support.
Full HTML5 Element Support
Java classes for every HTML5 element—Div, Table, Form, Canvas, and more. Construct type-safe HTML entirely in Java with compile-time checking.
Versatile Styling System
Apply CSS styles programmatically with fluent methods for all CSS3 properties. Use CssStyleSheet, CssRule, and CssMediaQuery to build responsive designs entirely in Java.
Flexible Communication Options
Choose AJAX, AJAX + SSE, or WebSocket per page. Simple request-response when that's enough, server push when you need it, full real-time when you want it.
170+ UI Extensions & Add-Ons*
Integrate best-of-breed JavaScript UI libraries through lightweight Java wrappers. Use Syncfusion, Webix, Chart.js, Leaflet, and more—all with consistent Oorian conventions.
Server-Side Worker Threads
Run background tasks on the server with automatic UI updates when complete. Long-running operations never block the user interface.
Comprehensive Security
CSRF protection, auto-escaping output, secure cookies, rate limiting, and security headers. OWASP-aligned protections enabled by default.
Application Monitoring
OorianMonitor provides health checks, performance metrics, Prometheus-compatible export, admin dashboard, and configurable alert callbacks.
WCAG Accessibility Support
Type-safe ARIA attributes, skip links, focus management, and live regions. Build inclusive applications that meet WCAG compliance standards.
Native JSON, XML & Markdown
Built-in JSON, XML, and Markdown parsing, generation, and manipulation. No external libraries needed for common data formats.
Internationalization
Built-in support for multi-language applications with locale-aware formatting, resource bundles, and right-to-left layout support.
Self-Contained Web Apps (LaunchPad)
Deploy Oorian applications as a single executable JAR with embedded Jetty server. No external application server required—just compile and run.
Platform Independent
Write once, deploy on J2EE or Jakarta EE. OorianCommonLib has zero servlet API dependencies—thin adapters handle the rest.
Production Proven
Not a prototype—Oorian powers iGradePlus, a 500k+ line commercial SaaS with hundreds of pages, in production for 10+ years.
No Vendor Lock-In
Unlike Vaadin or ZK, you're not locked into proprietary components. Switch UI libraries or mix them as your needs evolve.
*Extensions are being progressively rolled out. See the roadmap for availability.
Elegantly Simple
Build interactive pages with intuitive, type-safe Java code. Here's a complete Oorian page:
@Page("/dashboard")
public class DashboardPage extends HtmlPage implements MouseClickListener {
@Override
protected void createBody(Body body) {
// Create a container with flexbox layout
Div container = new Div();
container.setDisplay(Display.FLEX);
container.setFlexDirection(FlexDirection.COLUMN);
container.setPadding("20px");
// Add a heading
container.addElement(new H1("Welcome to Dashboard"));
// Create an interactive button
Button refreshBtn = new Button("Refresh Data");
refreshBtn.registerListener(this, MouseClickedEvent.class);
container.addElement(refreshBtn);
// Add a SyncFusion data grid
SfDataGrid grid = new SfDataGrid();
grid.setDataSource(getCustomerData());
container.addElement(grid);
body.addElement(container);
}
@Override
public void onEvent(MouseClickedEvent event) {
// Handle click - UI updates automatically
refreshData();
}
}Your Choice of UI Libraries
Oorian integrates with industry-leading JavaScript UI libraries through lightweight Java wrappers. Use what fits your needs—or mix and match.
Every extension follows the same Oorian conventions for instantiation, configuration, events, and data binding. Each library keeps its unique features, but the experience of using any extension feels immediately familiar. No need to learn different paradigms for each library—just the Oorian way.
Full UI Platforms
DevExtreme UI Extension
DevExtreme by DevExpress provides DataGrid, Charts, Scheduler, Forms, and Pivot Grid components with advanced features for enterprise applications.
DHTMLX UI Extension
DHTMLX provides a complete suite of JavaScript components for building enterprise web applications with Grid, Gantt, Scheduler, Spreadsheet, and Diagram widgets.
Kendo UI UI Extension
Kendo UI by Progress provides a comprehensive library of JavaScript UI components including DataGrid, Scheduler, Charts, Editor, and Gantt charts.
Syncfusion UI Extension
Syncfusion Essential JS 2 offers 70+ high-performance JavaScript UI components for enterprise applications including Grids, Charts, Diagrams, and PDF viewers.
Webix UI Extension
Webix is a JavaScript UI library with a comprehensive set of enterprise-grade components including DataTable, Scheduler, Gantt, Kanban, and Spreadsheet widgets.
Wijmo UI Extension
Wijmo by GrapeCity offers FlexGrid, Charts, Gauges, and Input controls with enterprise features and Excel-like functionality.
CSS Frameworks & Component Libraries
Bootstrap UI Extension
Bootstrap is the world's most popular CSS framework for building responsive, mobile-first sites with a comprehensive grid system and pre-built components.
Bulma UI Extension
Bulma is a modern CSS framework based on Flexbox with a clean syntax and modular architecture. No JavaScript required.
Lion UI Extension
Lion is ING's open-source web component library focused on accessibility, performance, and flexibility. Built for enterprise applications.
Pico CSS UI Extension
Pico CSS is a minimal CSS framework for semantic HTML that provides elegant styles without classes. Perfect for simple, clean designs.
Tailwind CSS UI Extension
Tailwind CSS is a utility-first CSS framework for rapidly building custom user interfaces without leaving your HTML.
UIkit UI Extension
UIkit is a lightweight and modular front-end framework for developing fast and powerful web interfaces with a comprehensive collection of components.
Web Awesome UI Extension
Web Awesome provides a collection of modern, accessible web components for building beautiful user interfaces with buttons, cards, dialogs, and inputs.
Specialized Components
Best-in-class single-purpose widgets
Rich Text Editors
CKEditor UI Extension
CKEditor is a powerful WYSIWYG editor with extensive plugin support, collaborative editing features, and enterprise-grade reliability.
EditorJs UI Extension
Editor.js is a block-styled editor with a clean JSON output. Each block is a separate content unit with its own plugin.
Froala UI Extension
Froala is a beautiful WYSIWYG HTML editor with a clean design, inline editing, and extensive customization options.
Lexical UI Extension
Lexical is an extensible text editor framework from Meta with excellent performance, accessibility, and developer experience.
ProseMirror UI Extension
ProseMirror is a toolkit for building rich text editors with a focus on semantic editing and collaborative features.
Quill UI Extension
Quill is a modern WYSIWYG editor built for compatibility and extensibility. Uses a delta format for content representation.
TinyMCE UI Extension
TinyMCE is a flexible rich text editor with premium features including advanced tables, spell checking, and media embedding.
Tiptap UI Extension
Tiptap is a headless, extensible rich text editor built on ProseMirror. Fully customizable with a clean API.
Toast UI Editor UI Extension
Toast UI Editor is a markdown WYSIWYG editor with live preview, syntax highlighting, and extensible plugin architecture.
Data Grids, Tables & Spreadsheets
AgGrid UI Extension
AG Grid is a high-performance JavaScript data grid with features like grouping, pivoting, and server-side row models.
DataTables UI Extension
DataTables adds advanced interaction controls to HTML tables including pagination, instant search, and multi-column ordering.
Flexmonster UI Extension
Flexmonster is an embeddable pivot table component for advanced data visualization and reporting in web applications.
GridJs UI Extension
Grid.js is a free and open-source HTML table plugin that works with most JavaScript frameworks. Simple and lightweight.
Handsontable UI Extension
Handsontable is an Excel-like data grid component with spreadsheet features including formulas, filtering, and data validation.
Jspreadsheet UI Extension
jspreadsheet is a lightweight JavaScript spreadsheet component with Excel-like features, formulas, and data manipulation.
Luckysheet UI Extension
Luckysheet is a pure JavaScript online spreadsheet similar to Excel with a rich set of features for data analysis.
PivotTable.js UI Extension
PivotTable.js is a JavaScript pivot table library with drag-and-drop functionality for data summarization and visualization.
RevoGrid UI Extension
RevoGrid is a powerful virtual data grid with high performance, column pinning, and multi-dimensional data support.
SlickGrid UI Extension
SlickGrid is a JavaScript grid/spreadsheet component focused on extreme performance for large datasets with virtual rendering.
Tabulator UI Extension
Tabulator is an interactive table library with filtering, sorting, pagination, and extensive customization options.
WebDataRocks UI Extension
WebDataRocks is a free web pivot table component for data analysis and reporting with interactive features.
Charts & Data Visualization
AmCharts UI Extension
amCharts is a JavaScript charting library with interactive maps, gauges, and Venn diagrams. Features animated transitions and responsive design.
AnyChart UI Extension
AnyChart is a flexible JavaScript charting library with 80+ chart types including cartesian, pie, funnel, radar, gauges, stock, Gantt, treemap, and map visualizations.
ApexCharts UI Extension
ApexCharts is a modern JavaScript charting library with an easy-to-use API and beautiful, responsive charts.
Billboard.js UI Extension
Billboard.js is a re-usable, easy-to-use charting library based on D3.js with a familiar API and chart types.
Chart.js UI Extension
Chart.js is a simple yet flexible JavaScript charting library with 8 chart types and extensive customization options.
D3.js UI Extension
D3.js is a JavaScript library for manipulating documents based on data. Provides low-level primitives for custom visualizations.
ECharts UI Extension
Apache ECharts is a powerful, interactive charting and visualization library with GL support for 3D visualizations.
Google Charts UI Extension
Google Charts provides a gallery of interactive charts rendered using SVG and VML with cross-browser compatibility.
Highcharts UI Extension
Highcharts is a feature-rich interactive charting library with enterprise support, accessibility features, and extensive documentation.
Plotly.js UI Extension
Plotly.js is a high-level declarative charting library for scientific and statistical visualization with 3D support.
uPlot UI Extension
uPlot is a fast, memory-efficient time series and line chart library. Renders millions of data points with minimal overhead.
Vega / Vega-Lite UI Extension
Vega and Vega-Lite are declarative visualization grammars for creating interactive data visualizations with a JSON specification.
Maps & Geospatial
CesiumJs UI Extension
CesiumJS is an open-source JavaScript library for world-class 3D globes and maps with terrain, imagery, and geospatial data visualization.
Google Maps UI Extension
Google Maps Platform provides the world's most accurate maps, routing, and places data for web and mobile.
Leaflet UI Extension
Leaflet is the leading open-source JavaScript library for mobile-friendly interactive maps with a simple, well-documented API.
Mapbox UI Extension
Mapbox provides custom maps, geocoding, navigation, and powerful location APIs for web and mobile applications.
MapLibre GL JS UI Extension
MapLibre GL JS is an open-source fork of Mapbox GL JS for rendering interactive maps from vector tiles with WebGL.
OpenLayers UI Extension
OpenLayers is a high-performance, feature-packed library for all your geospatial mapping needs.
Java Web Framework Comparison
Looking for a Vaadin alternative or ZK alternative? See how Oorian compares to other Java UI frameworks.
| Framework | Approach | Components | Flexibility |
|---|---|---|---|
| Vaadin | Server-side Java | Proprietary | Locked-in |
| ZK Framework | Server-centric | Proprietary | Limited |
| Apache Wicket | Template-based | HTML + Java | Moderate |
| Oorian | AJAX / SSE / WebSocket | Your choice | Maximum |
Oorian is Coming Soon
Stay tuned for the official release. Free for non-commercial use.