Tutorial: Create a Lutece plugin step by step
The Lutece MOOC
This course will teach you all the basics of development with Lutece. You will discover:
- the general architecture of Lutece with its Front Office and its Back Office.
- using the code generator to create your first plugin
- standards, best practices and rules for producing a compliant code
- the assembly of a site containing several plugins
- basic monitoring of your site
The skills required for this course are:
- good knowledge and practice of the Java language.
- good knowledge and practice of HTML and CSS.
Other skills can be beneficial such as:
- good knowledge and practice of Spring IoC.
- good knowledge and practice of Freemarker.
Enroll in !
The classic tutorial
Otherwise, a classic tutorial is available on github. The goal of this tutorial is to make a Lutèce plugin : a basic application using the Lutece portal services.
This tutorial offers different steps :
- Installation of the prerequisites
- use of the plugin-WIZARD application to easily create the skeleton of our project
- launch of the plugin within a lutece site
- Customization of the plugin
- modification of the pages of the application
- modification of the data model
- launch of the plug-in within a lutece site using other plugins
- Using services from other plugins
- added a voting/comment feature to the plugin's pages
- adding a REST webservice
- add the implementation of a cache system
- Finalization of the plugin
- Formatting, testing, packaging
Go to the tutorial
The tutorial is available on github at the following address : https://github.com/lutece-platform/lutece-dev-plugin-example/blob/develop/TUTORIAL_Lutece-plugin-example.md
The sample application generated during this turorial is also available : https://github.com/lutece-platform/lutece-dev-plugin-example
The GIT branches of this project are used as follows :
- branches step0 to step6: branches corresponding to the successive states of the plugin's sources with each addition of functionality
- develop branch: full version of the plugin
- Master branch: initial branch of the project containing this file