The Nuxeo Platform is a mature platform for building modern content apps: Applications managing a lot of semi-structured and structured data and with strong security, life cycle, traceability and transformations dimensions, such as document management, assets management, product life cycle management (PLM), product information management (PIM), Case Management. The Nuxeo Platform is technically highly modular — features and capabilities are spread upon more than 150 modules. On a 10,000 feet overview, you will find the elements below.
- The runtime Java framework, based on OSGi, brings the necessary modularity, flexibility and extensibility that you will like on our platform. This framework exposes the notions of Components, Services and Extension Points.
- The repository transparently translates the document semantics and capabilities (documents, metadata, document query language (NXQL), versioning, audit etc. ) into standard SQL and blob storage instructions. The repository works on PostgreSQL, Oracle and SQL servers (and has also been adapted on some other targets such as MySQL and DB2) and stores binary content either on simple file system, on the cloud (S3 connector), or on long term storage devices. The repository has been load-tested against more than 100 millions documents and is continuously improved. The repository is also shipped with high performance multi-threaded injectors and natively implements the standard interface of content repositories: "CMIS".
- The workflow engine allows to run complex processes defined via a graph, with support of many features: parallel node, merge node, n-tasks nodes, sub workflow, escalation, etc.
- The modular and extensible web application offers tens of Document Management, Digital Asset Management and Case Management features out-of-the-box. This web application is very easily customizable via Nuxeo Studio (data model, forms, business views, user actions, workflows, …) so that you can transform the stock app into a 100 % business app that will fit your users expectations mostly by configuration. Furthermore, this web application can be completed by many plugins that bring additional features (ex: polls, permissions export, advanced audit, …).
- Connectors, additional plugins and Enterprise world. The Nuxeo Platform is an "Enterprise" platform: 7 years of integration in many different IT ecosystems made it robust and resilient to many different situations: It supports all the main authentication schemes (form based, OAuth, CAS, Kerberos, SAML2, …), multiple users provisioning strategies, provides different HA deployment options, etc. You will also find some connectors to other enterprise tools such as search engines, mails, etc.
In addition to provide a high quality open source software that is permanently and intensively tested, Nuxeo proposes to the community many tools and means for guarantying your project will be successful:
- Nuxeo Studio, an online tool for configuring the repository, the workflow engine and the web app;
- Nuxeo IDE, an Eclipse plugin offering hot reload, services catalogs, implementation wizards and integration with Nuxeo Studio;
- Funkload, a benchmark framework to streamline the process of load-testing your business application implemented on top of Nuxeo;
- A complete knowledge and set of open source tools for benefiting from a great Continuous Integration chain, the same as Nuxeo's;
- Monitoring tools for going to production safely and quietly.
- Component Model — This page describes how the Nuxeo Platform is modular, and how bundles, components and extension points relate to each other to let you create a fully customized application.
- Content Repository — This page summarizes all the main concepts about documents, access to documents and document storage.
- Workflow Engine
- Authentication and Identity Service — This page gives a general idea on how authentication is plugged into the platform.
- Nuxeo Security System
- Platform APIs — This page presents the main APIs and protocols available to integrate the Nuxeo Platform with the IT environment.
- Event Bus — When you need to integrate some features of an external application into Nuxeo, or want Nuxeo to push data into an external application, using the Nuxeo event system is usually a good solution.
- Data Lists and Directories — We explain here the philosophy of the directories: A mean to expose to your app some external data.
- Content Automation — The main goal of automation is to enable end users to rapidly build complex business logic without writing any Java code — just by assembling the built-in set of atomic operations into complex chains and then plugging these chains inside Nuxeo as UI actions, event handlers, REST bindings, etc.
- UI Frameworks — The Nuxeo Platform proposes different technologies for the client side of the application. The choice of one technology vs. the other depends on both the project's stakes and its context.
- Deployment Options — In this section, the different deployment possibilities are described.
- Licenses — The Nuxeo source code is licensed under various open source licenses, all compatible with each other, non viral and not limiting redistribution. Nuxeo also uses a number of third-party libraries that come with their own licenses.