An introduction for developers
Nuxeo is a highly-adaptable and highly-customizable platform, and so from a developer's standpoint, no two instances are completely alike. For example, one company might be running Nuxeo with a NoSQL database solution like MongoDB and a mix of cloud and on-premises storage. Another company might be completely in the cloud and use a SQL database solution. One company might be using the system to manage large video files and even have servers dedicated to transcoding those files as well as a built-in process to move older files to long-term archival storage. Another company, such as an insurance company, might be using the system to handle case management and the document storage and business process workflows around that.
At its core, Nuxeo is about managing assets—often referred to as "documents" in the platform. However, the way that the platform is configured and rolled out makes the difference as to whether it serves as a traditional digital asset management or media asset management system, a product information system, an enterprise content management system, or a case management system.
This adaptability means that it can be the ideal solution for a company that wants the reliability of a commercial, off the shelf (COTS) solution, with hotfixes, security updates, and ongoing investment by the software provider, but also needs the flexibility of a built-to-purpose solution. Whether there is a need to interact with legacy or proprietary systems, to use high-capacity archival storage, or processes that are highly specific to a company or industry, Nuxeo can typically be adapted.
The Nuxeo source code is open-source
Typically, companies will purchase a support subscription as well as seats in Nuxeo Studio, a development tool, and licenses for WebUI, a highly customizable front-end user interface for the product.
If you are new to the product as a developer, then Nuxeo's online courses in Nuxeo University can be invaluable. Nuxeo Studio introduces low-code development to the platform, and the Nuxeo Dev Tools extension for Chrome allow you to deploy and test those changes in real-time - these tools can provide a great entry point, especially for front-end developers, but also for those who have a background as mid-stack, or back-end developers. To go beyond that, you may want to get familiar with Elasticsearch and the ELK stack, with both SQL and NoSQL database solutions, and with the patterns and practices for developing for Nuxeo in Java. When it comes to developing custom extensions, interacting with external systems, and optimizing system performance, you will very quickly find yourself going beyond low-code front-end development.
The Nuxeo documentation (https://doc.nuxeo.com/) covers a lot; in this series, we don't plan to repeat what you can already learn from the documentation or from Nuxeo University. Rather, we hope that you will stay tuned for a series of articles that will go beyond what you can find in general developer documentation and which are instead focused on applying best practices and recommendations in real-life scenarios.
Want more information?
Ready to start your Nuxeo journey? Or are you interested in learning about how iSoftStone can help you implement Nuxeo for your critical business needs? Please reach out!