Add-on Directory

AppJars User Profile - Vaadin Add-on Directory

Self-service user profiles for Vaadin apps: let users keep their details and avatar up to date with in-browser cropping, and manage every profile from an admin view. Commercial AppJar with a free mode. AppJars User Profile - Vaadin Add-on Directory
> **Licensing:** this add-on is a thin wrapper licensed under **Apache 2.0**. It contains no code of its own and simply pulls in the **User Profile AppJar** modules, which are **commercial software** distributed under the [AppJars Software License Agreement](https://www.appjars.com/legal/license/v1/). You can use User Profile for free in **free mode** (up to 5 profiles; creating more is blocked). A license removes all limits. See [Licensing](https://docs.appjars.com/licensing/). **User Profile** stores and manages extended profile information for the authenticated users of your application, with views built with Vaadin Flow. Users keep their own contact details and profile picture up to date, administrators manage every profile from a single view, and other AppJars reuse the same names and avatars. ## Features - **Self-service profiles:** a *My Profile* view where each user creates, edits and deletes their own email, name, phone number and address. - **Avatar editor:** upload a GIF, PNG, JPEG, BMP or WebP picture (up to 10 MB) and adjust a circular crop in the browser before saving. - **Administration view:** list every profile with filters by username, name, email and creation date, and create, edit or delete any profile on behalf of any user. - **First-login onboarding:** users without a profile are taken to *My Profile* after their first login (can be disabled). - **Shared with other AppJars:** names and avatars are published through a provider contract that you can replace to serve profile data from LDAP or another identity source. - **Profile events:** a Spring `ProfileUpdatedEvent` on every create and update lets you sync profiles with other systems. ## Installation If your project doesn't declare it yet, add the Vaadin add-ons repository: ```xml vaadin-addons https://maven.vaadin.com/vaadin-addons ``` Add the dependency. The wrapper declares the AppJars repository (`https://maven.appjars.com`), so Maven resolves the modules automatically: ```xml org.vaadin.addons.appjars appjars-user-profile 2.0.1 ``` - **Gradle** ignores repositories declared in dependency POMs, so add `maven { url "https://maven.appjars.com" }` to your repositories. - **Nexus/Artifactory mirroring everything (`mirrorOf *`):** your administrator needs to add a proxy for `https://maven.appjars.com`. Then follow the [Getting started guide](https://docs.appjars.com/user-profile/getting-started/). ## Requirements - Java 21 - Vaadin 25.2 - Spring Boot 4.1 - JPA / Hibernate - Authenticated users: profiles are keyed by the login username ## Included dependencies | Artifact | License | |---|---| | `com.appjars:appjars-user-profile-flow` | AppJars Software License Agreement v1 (commercial) | | `com.appjars:appjars-user-profile-business-impl` | AppJars Software License Agreement v1 (commercial) | | `com.appjars:appjars-user-profile-data-impl` | AppJars Software License Agreement v1 (commercial) | These modules transitively bring in the rest of the User Profile modules and `appjars-*-utils` (same commercial license), plus open-source libraries such as Vaadin add-ons by Flowing Code (Apache 2.0). ## Links - [Product page](https://www.appjars.com/catalog/user-profile/) - [Documentation](https://docs.appjars.com/user-profile/overview/) - [Demo application](https://github.com/AppJars/user-profile-demo) - [Licensing and free mode](https://docs.appjars.com/licensing/) AppJars are built and maintained by [Flowing Code](https://www.flowingcode.com).
Discussion Forum
Author Homepage
Online Demo
View on GitHub
Issue tracker

AppJars User Profile version 2.0.1
A patch release, with two fixes in the profile views. #### Fixes - **Avatar upload** now uses Vaadin's upload handler API instead of the deprecated receiver API; uploading and cropping a picture works as before. - **Resize listeners** of the *My Profile* and profiles list views are now released when the view detaches, instead of living for the whole session.