- create pretty new web page directly in BellaDati with custom content and custom functionalities
- modify existing BellaDati page to customize look & feel and extend its functionality
- create customized menu located below BellaDati's top menu
- create customized API using server side extensions
Architecture
From runtime perspective, each extension is composed of three major building blocks:
- API endpoints - running on server (server-side), having access to BellaDati API, REST API and providing methods to connect to 3rd party systems. Programming language is Groovy/Java. Endpoints are accessible over HTTP using HTTP GET, POST, PUT, DELETE methods and have optional support for authentication (oAuth, Basic auth) and session.
- HTML content - provided by server, but running on client (client-side). Consists of HTML page (head and body) and web resources (Javascript, CSS, images, files, ...)
- Resources - referencable resources for server-side (JAR libraries) and client-side (Javascript, CSS, images, files)
Extension types
There are several types of extensions, each targeting different functionality and goal:
- New page - generic extension, which gets own URL and can optionally provide API endpoints
- Custom menu - custom navigation HTML inside regular BellaDati UI
- Table renderer - Javascript table renderer with custom CSS
- Chart renderer - Javascript chart renderer with custom CSS
Tutorials
This section includes tutorials how BellaDati Extensions can be created and used. Each tutorial contains:
- steps how to achieve some goal
- partial source codes
- final extension package which can be imported into your own instance of BellaDati
Please see following child pages for various tutorials:
Overview
Content Tools