Serendipity is an open source Customer Engagement Platform.
You can use it to transform your organisation by connecting your customers, products, people and operations.
- Authentication (AuthN) & Authorization (AuthZ) thanks to the OIDC Auth library
- Beautiful Code thanks to Angular's Style Guide
- Contemporary UI thanks to Angular Material
- Custom Themes check out the Light Theme
- Dashboards and Dashboard Widgets thanks to Angular Gridster 2 and Highcharts
- Dynamic Forms check out the Dynamic Forms documentation
- Dynamically Importing Static Libraries see this post
- Identity and Access Management thanks to Keycloak and OpenLDAP
- Internationalisation thanks to @ngx-translate
- Lazy Loading Angular Libraries see this blog post
- Locally Hosted Fonts and Icons see fonts and icons
- Maps thanks to @ngx-leaflet and OpenStreetMap
- Progressive Web App (PWA) thanks to @angular/pwa
- Serendipity Components Library see this blog post
- Workflow, Business Process Management and Case Management thanks to Flowable
Documentation, demos, and guides
Use Java, Spring Boot (Web, REST, JPA, HAETOAS) and Spring Security (Config, OAuth2, JOSE) to build a RESTful API for Serendipity CEP:
Navigation Bar:
Command Bar:
Side Nav:
Activities:
Accounts:
Contacts:
Contact Wizard:
Contact:
Contact - Electoral Division:
Dashboard:
Dashboard Widgets:
Dashboard - Fullscreen:
Tasks:
OpenID Connect (OIDC) Auth library (auth-oidc)
Keycloak Register page:
Keycloak Login page:
Profile page:
In German (Auf Deutsch):
- Rob Ferguson's blog: Getting started with Angular Material
- Rob Ferguson's blog: Angular Material: toolbar and sidenav
- Rob Ferguson's blog: Angular Material: table
- Rob Ferguson's blog: Getting started with Flowable
- Rob Ferguson's blog: How To: Build Flowable
- Rob Ferguson's blog: How To: Flowable and LDAP
- Rob Ferguson's blog: Flowable's REST API - Part 1
- Rob Ferguson's blog: Flowable's REST API - Part 2
- Rob Ferguson's blog: Flowable's REST API - Part 3
- Rob Ferguson's blog: Dashboards and Dashboard Widgets - Part 1
- Rob Ferguson's blog: Lazy Loading Angular Libraries
- Rob Ferguson's blog: Dynamically Importing Highcharts
- Rob Ferguson's blog: Getting started with Camunda
- Rob Ferguson's blog: Getting started with Keycloak
- Rob Ferguson's blog: Angular, OpenID Connect and Keycloak
- Rob Ferguson's blog: Angular, OAuth 2.0 and Keycloak
- Rob Ferguson's blog: Keycloak, Flowable and OpenLDAP
- Rob Ferguson's blog: Flowable OAuth2 Resource Server
- Rob Ferguson's blog: Keycloak Themes - Part 1
- Rob Ferguson's blog: Keycloak Themes - Part 2