Skip to content

User Profile Cards #132

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
92 changes: 92 additions & 0 deletions samples/user-profile-cards/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
# User Profile Cards

## Summary

Using only the standard controls in Power Apps, I created a versatile set of user profile cards that can be easily adapted for different use cases. These cards provide a professional and visually appealing way to display user information within your apps.

This collection allows you to seamlessly add well-designed profile cards to your Power Apps Canvas applications, enhancing both functionality and user experience.

![screen1](./assets/Screenshot-2024-01-14-at-23.08.58.png)



### **Different layouts:**

✔ **Large Vertical Cards**
✔ **Basic – Large Vertical Card**
✔ **Gradient Background – Large Vertical Card**
✔ **Horizontal Cards with Job Title**
✔ **Basic – Horizontal Card with Job Title**
✔ **Gradient Background – Horizontal Card with Job Title**
✔ **Minimalist Cards**



## Applies to

![Power Apps](https://img.shields.io/badge/Power%20Apps-Yes-green "Yes")
![Power Automate](https://img.shields.io/badge/Power%20Automate-No-red "No")
![Power BI](https://img.shields.io/badge/Power%20BI-No-red "No")
![Power Pages](https://img.shields.io/badge/Power%20Pages-No-red "No")
![Power Virtual Agents](https://img.shields.io/badge/Power%20Virtual%20Agents-No-red "No")
![Dataverse](https://img.shields.io/badge/Dataverse-No-red "No")
![AI Builder](https://img.shields.io/badge/AI%20Builder-No-red "No")
![Custom Connectors](https://img.shields.io/badge/Custom%20Connectors-No-red "No")
![Power Fx](https://img.shields.io/badge/Power%20Fx-No-red "No")

## Compatibility

![Premium License](https://img.shields.io/badge/Premium%20License-Not%20Required-green.svg "Premium Power Apps license not required")
![Experimental Features](https://img.shields.io/badge/Experimental%20Features-No-green.svg "Does not rely on experimental features")

## Contributors

- [Samir Daoudi](https://github.com/Samir-Daoudi)

## Version history

Version|Date|Comments
-------|----|--------
1.0|March 2, 2025|Initial release

## Data Sources

Static table with body part title

## Minimal Path to Awesome

### Using the solution zip

* [Download](./solution/UserProfileCards_1_0_0_1.zip) the `.zip` from the `solution` folder
* Within **Power Apps Studio**, import the solution `.zip` file using **Solutions** > **Import Solution** and select the `.zip` file you just packed.
* Open the app in edit mode and make sure the data source **Data source name** is connected correctly.

### Using the source code

You can also use the [Power Apps CLI](https://docs.microsoft.com/powerapps/developer/data-platform/powerapps-cli) to pack the source code by following these steps:

* Clone the repository to a local drive
* Pack the source files back into a solution `.zip` file:

```bash
pac solution pack --zipfile pathtodestinationfile --folder pathtosourcefolder --processCanvasApps
```

Making sure to replace `pathtosourcefolder` to point to the path to this sample's `sourcecode` folder, and `pathtodestinationfile` to point to the path of this solution's `.zip` file (located under the `solution` folder)
* Within **Power Apps Studio**, import the solution `.zip` file using **Solutions** > **Import Solution** and select the `.zip` file you just packed.

## Help

We do not support samples, but this community is always willing to help, and we want to improve these samples. We use GitHub to track issues, which makes it easy for community members to volunteer their time and help resolve issues.

If you encounter any issues while using this sample, you can [create a new issue](https://github.com/pnp/powerapps-samples/issues/new?assignees=&labels=Needs%3A+Triage+%3Amag%3A%2Ctype%3Abug-suspected&template=bug-report.yml&sample=charts-4-powerapps&authors=@Samir-Daoudi&title=charts-4-powerapps%20-%20).

For questions regarding this sample, [create a new question](https://github.com/pnp/powerapps-samples/issues/new?assignees=&labels=Needs%3A+Triage+%3Amag%3A%2Ctype%3Abug-suspected&template=question.yml&sample=charts-4-powerapps&authors=@Samir-Daoudi&title=charts-4-powerapps%20-%20).

Finally, if you have an idea for improvement, [make a suggestion](https://github.com/pnp/powerapps-samples/issues/new?assignees=&labels=Needs%3A+Triage+%3Amag%3A%2Ctype%3Abug-suspected&template=suggestion.yml&sample=charts-4-powerapps&authors=@Samir-Daoudi&title=charts-4-powerapps%20-%20).

## Disclaimer

**THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.**

<img src="https://m365-visitor-stats.azurewebsites.net/powerplatform-samples/samples/charts-4-powerapps" aria-hidden="true" />
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"__Version":"0.1","App":"fd3c7e33-9bc1-4db3-aabf-8504e8d8fac9","Test_7F478737223C4B69":"9392b04f-21ee-4c18-b464-a29fc28181f1","Host":"fa4d7195-bbb7-4d28-b7b2-e7f822472e32","comUserHorizontalSm_Bkg_BottomRight":"e16559c9-eda4-456a-9c83-f4b6e38330d0","Container22_8":"8f529d7a-3a64-44d9-b319-d65d960c7475","HtmlText1_5":"54398690-657f-4b49-8e05-6efc69b4a618","Image11_8":"6ae5d940-8276-412b-8230-6c9785e2499c","Label6_16":"e255182e-0770-4c16-a034-21ad89960ee6","comUserHorizontalSm_Bkg_TopLeftRadius":"935614ab-0571-4b27-8099-24a524cb85d0","Container22_7":"29bf2e6f-7732-4977-a80d-021f6e26c000","HtmlText1_4":"eac49a60-9ecd-4439-ba93-b598149617c8","Image11_7":"4cd39e81-ae4f-41e4-a951-0611d125d4f2","Label6_15":"36877635-29e5-4f05-b84c-96f6bc36b0a4","comUserDetails":"5a7d9fdc-de57-4391-aeb0-99109a7e6152","Container22_6":"e44316de-ca83-44b5-8aec-47934054bf47","Label6_4":"1b60c429-d157-4be4-8d7c-08b6f6c94bdc","Image11_6":"ade43405-dea4-436a-9cca-cc11bd317af7","Label6_5":"43ffc048-7e8d-438f-aab3-94e4dc8d1ec9","comUserHorizontalLg_Bkg":"c829913c-76b6-46f8-8c29-55de850ac568","Container22_1":"7668d71e-041b-4f84-9c55-a38c1a5c13b4","HtmlText1_1":"47dacc7c-45c4-49b9-bc79-6e66ef365bb3","Image11_1":"2cb24b7a-175d-4879-a126-360f652219fc","Label6_2":"edc20914-1286-42c2-b6f0-042594b3927f","Label6_3":"f79e2f05-8271-4253-9ff1-f94e3f88ca60","comUserCardLg_Bkg":"a4583843-9641-43e8-b544-ab661ae4399d","Container22_4":"2a22083e-080b-4a4c-8b04-8f1d194a20d8","HtmlText1_3":"55d51c6b-90a4-48b7-bbc0-47ef9984df68","Image11_4":"9f56d2c8-caa5-4fff-8f08-2ab00d9068c3","Label6_12":"5a4d4b79-3b1f-4ca7-a60a-b9b8ddc74816","Label6_13":"5851d69b-7a6a-42dc-8fed-27b10fe65acd","comUserHorizontalSm":"29290c65-8c79-4b9e-b692-6740b64cda3f","Container22_5":"2c33b7dc-eed5-4cbf-8d97-164201338e39","Image11_5":"75f58844-1c9c-4f8d-b4f6-6d6cbaf7d1c4","Label6_14":"f4a6cb4b-1534-4a02-931f-84a90b2ced0a","comUserHorizontalLg":"30642760-3fc9-45d9-bda1-8b1c9f9f972c","Container22":"f7e76649-95b5-472c-8600-0fcd3bf4edd4","Image11":"34f8957e-2582-4160-8c8e-ce09f943386c","Label6":"7e91b69a-f411-47fd-a9eb-5e03afc67892","Label6_1":"cfb6378d-16e4-4153-a61f-3dc4df87fb8b","comUserHorizontalSm_Bkg":"13688ebf-044e-45cf-bbaa-a0ca831ceb02","Container22_2":"c72eca97-9e08-498f-8e57-8c3098cb1ef9","HtmlText1_2":"a976efd1-fa6b-497e-9fe4-1a3860601dc4","Image11_2":"99c816ba-5de2-42da-b2af-f5d12f30c809","Label6_9":"d6d21d6e-06ce-49fb-b597-44fc1f8c9313","comUserCardLg":"171d15ea-7089-40e9-ba06-84f212a934c0","Container22_3":"70871814-49de-4b57-b77b-938d33680975","Image11_3":"9d064284-f98b-4cb9-b781-48ecc5ec8fe4","Label6_10":"4743af0f-4159-4050-84e7-3a762d71b4ee","Label6_11":"ac0e810c-d9f1-4e32-b661-d89a2b999436","Screen1":"d3bbd30b-507e-44b5-8602-16143c9aea58","Container13_9":"bb727a97-4db4-4ae5-818e-c20b513ea06d","Label1":"fc1d69b6-01b8-454d-afd6-0fd18dfb0f37","drpUser":"3738ce30-3619-4075-bd67-683aa1a60bfc","comUserCardLg_1":"5aa99fd8-e439-4831-9140-7c21b4694785","comUserHorizontalLg_1":"ebf966e3-9d6a-4c6b-9491-50ee211ea9b7","comUserHorizontalSm_1":"f1cd58f6-bb7c-4a15-892a-03b8fcb2d725","comUserCardLg_Bkg_1":"02421280-a759-44c4-907f-bd5e6ffded85","comUserHorizontalLg_Bkg_1":"eaf6dbce-aa3b-4ae5-b8ce-093d0e8f8690","comUserHorizontalSm_Bkg_1":"ba7d8d69-1c8d-400e-84aa-2df25650cc9d","comUserHorizontalLg_Bkg_2":"5d2abbdd-fee6-45c5-ad19-9965cecd13c1","comUserCardLg_Bkg_2":"0fa22210-7e47-412c-9ec1-e3ba008ef127","comUserHorizontalSm_Bkg_2":"6e5296f1-2ebf-4a7c-8569-a5d80788a2de","comUserHorizontalSm_Bkg_TopLeftRadius_1":"31262d04-c7fb-4a81-800b-0ee8108fdace","comUserHorizontalSm_Bkg_BottomRight_1":"c45874ff-20a0-4b97-b32e-3c8ecf73268b","Label2":"b7700973-d8ce-4fec-8950-bd8a892ab839"}
Binary file not shown.
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
<?xml version="1.0" encoding="utf-8"?><Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types"><Default Extension="xml" ContentType="application/octet-stream" /><Default Extension="msapp" ContentType="application/octet-stream" /><Default Extension="json" ContentType="application/octet-stream" /><Override PartName="/CanvasApps/logisam_userprofilecards_2daf8_BackgroundImageUri" ContentType="application/octet-stream" /></Types>
51 changes: 51 additions & 0 deletions samples/user-profile-cards/sourcecode/Other/customizations.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
<ImportExportXml xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" OrganizationVersion="9.2.25013.202" OrganizationSchemaType="Standard" CRMServerServiceabilityVersion="9.2.25021.00206">
<Entities></Entities>
<Roles></Roles>
<Workflows></Workflows>
<FieldSecurityProfiles></FieldSecurityProfiles>
<Templates />
<EntityMaps />
<EntityRelationships />
<OrganizationSettings />
<optionsets />
<CustomControls />
<EntityDataProviders />
<CanvasApps>
<CanvasApp>
<Name>logisam_userprofilecards_2daf8</Name>
<AppVersion>2024-01-14T23:26:44Z</AppVersion>
<Status>Ready</Status>
<CreatedByClientVersion>3.23122.20.0</CreatedByClientVersion>
<MinClientVersion>3.23122.20.0</MinClientVersion>
<Tags>{"primaryDeviceWidth":"640","primaryDeviceHeight":"640","supportsPortrait":"true","supportsLandscape":"true","primaryFormFactor":"Phone","showStatusBar":"false","publisherVersion":"3.23122.20","minimumRequiredApiVersion":"2.2.0","hasComponent":"true","hasUnlockedComponent":"true","isUnifiedRootApp":"false","offlineLargeFilesSupport":"false","sienaVersion":"20240114T231931Z-3.23122.20.0"}</Tags>
<IsCdsUpgraded>0</IsCdsUpgraded>
<GalleryItemId xsi:nil="true"></GalleryItemId>
<BackgroundColor>RGBA(0,176,240,1)</BackgroundColor>
<DisplayName>User Profile - Cards</DisplayName>
<Description xsi:nil="true"></Description>
<CommitMessage xsi:nil="true"></CommitMessage>
<Publisher xsi:nil="true"></Publisher>
<AuthorizationReferences>[]</AuthorizationReferences>
<ConnectionReferences>{"e68d1990-9100-4d1f-8f5a-20e8102f4d3b":{"id":"/providers/microsoft.powerapps/apis/shared_office365users","displayName":"Office 365 Users","iconUri":"https://connectoricons-prod.azureedge.net/releases/v1.0.1664/1.0.1664.3477/office365users/icon.png","dataSources":["Office365Users"],"dependencies":[],"dependents":[],"parameterHints":{},"parameterHintsV2":{},"isOnPremiseConnection":false,"bypassConsent":false,"dataSets":{},"apiTier":"Standard","actions":["UserPhotoMetadata","UserPhoto_V2","UserProfile_V2","SearchUserV2"]}}</ConnectionReferences>
<DatabaseReferences>{}</DatabaseReferences>
<AppComponents>[]</AppComponents>
<AppComponentDependencies>[]</AppComponentDependencies>
<CanConsumeAppPass>1</CanConsumeAppPass>
<CanvasAppType>0</CanvasAppType>
<BypassConsent>0</BypassConsent>
<AdminControlBypassConsent>0</AdminControlBypassConsent>
<EmbeddedApp xsi:nil="true"></EmbeddedApp>
<IntroducedVersion>1.0</IntroducedVersion>
<CdsDependencies>{"cdsdependencies":[]}</CdsDependencies>
<IsCustomizable>1</IsCustomizable>
<BackgroundImageUri>/CanvasApps/logisam_userprofilecards_2daf8_BackgroundImageUri</BackgroundImageUri>
<DocumentUri>/CanvasApps/logisam_userprofilecards_2daf8_DocumentUri.msapp</DocumentUri>
<AdditionalUris>
<AdditionalUri>/CanvasApps/logisam_userprofilecards_2daf8_AdditionalUris0_identity.json</AdditionalUri>
</AdditionalUris>
</CanvasApp>
</CanvasApps>
<Languages>
<Language>1033</Language>
</Languages>
</ImportExportXml>
86 changes: 86 additions & 0 deletions samples/user-profile-cards/sourcecode/Other/solution.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,86 @@
<ImportExportXml version="9.2.25013.202" SolutionPackageVersion="9.2" languagecode="1033" generatedBy="CrmLive" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" OrganizationVersion="9.2.25013.202" OrganizationSchemaType="Standard" CRMServerServiceabilityVersion="9.2.25021.00206">
<SolutionManifest>
<UniqueName>UserProfileCards</UniqueName>
<LocalizedNames>
<LocalizedName description="User Profile - Cards" languagecode="1033" />
</LocalizedNames>
<Descriptions />
<Version>1.0.0.1</Version>
<Managed>0</Managed>
<Publisher>
<UniqueName>LogiSam</UniqueName>
<LocalizedNames>
<LocalizedName description="LogiSam" languagecode="1033" />
</LocalizedNames>
<Descriptions>
<Description description="https://www.logisam.com" languagecode="1033" />
</Descriptions>
<EMailAddress xsi:nil="true"></EMailAddress>
<SupportingWebsiteUrl xsi:nil="true"></SupportingWebsiteUrl>
<CustomizationPrefix>logisam</CustomizationPrefix>
<CustomizationOptionValuePrefix>52538</CustomizationOptionValuePrefix>
<Addresses>
<Address>
<AddressNumber>1</AddressNumber>
<AddressTypeCode>1</AddressTypeCode>
<City xsi:nil="true"></City>
<County xsi:nil="true"></County>
<Country xsi:nil="true"></Country>
<Fax xsi:nil="true"></Fax>
<FreightTermsCode xsi:nil="true"></FreightTermsCode>
<ImportSequenceNumber xsi:nil="true"></ImportSequenceNumber>
<Latitude xsi:nil="true"></Latitude>
<Line1 xsi:nil="true"></Line1>
<Line2 xsi:nil="true"></Line2>
<Line3 xsi:nil="true"></Line3>
<Longitude xsi:nil="true"></Longitude>
<Name xsi:nil="true"></Name>
<PostalCode xsi:nil="true"></PostalCode>
<PostOfficeBox xsi:nil="true"></PostOfficeBox>
<PrimaryContactName xsi:nil="true"></PrimaryContactName>
<ShippingMethodCode>1</ShippingMethodCode>
<StateOrProvince xsi:nil="true"></StateOrProvince>
<Telephone1 xsi:nil="true"></Telephone1>
<Telephone2 xsi:nil="true"></Telephone2>
<Telephone3 xsi:nil="true"></Telephone3>
<TimeZoneRuleVersionNumber xsi:nil="true"></TimeZoneRuleVersionNumber>
<UPSZone xsi:nil="true"></UPSZone>
<UTCOffset xsi:nil="true"></UTCOffset>
<UTCConversionTimeZoneCode xsi:nil="true"></UTCConversionTimeZoneCode>
</Address>
<Address>
<AddressNumber>2</AddressNumber>
<AddressTypeCode>1</AddressTypeCode>
<City xsi:nil="true"></City>
<County xsi:nil="true"></County>
<Country xsi:nil="true"></Country>
<Fax xsi:nil="true"></Fax>
<FreightTermsCode xsi:nil="true"></FreightTermsCode>
<ImportSequenceNumber xsi:nil="true"></ImportSequenceNumber>
<Latitude xsi:nil="true"></Latitude>
<Line1 xsi:nil="true"></Line1>
<Line2 xsi:nil="true"></Line2>
<Line3 xsi:nil="true"></Line3>
<Longitude xsi:nil="true"></Longitude>
<Name xsi:nil="true"></Name>
<PostalCode xsi:nil="true"></PostalCode>
<PostOfficeBox xsi:nil="true"></PostOfficeBox>
<PrimaryContactName xsi:nil="true"></PrimaryContactName>
<ShippingMethodCode>1</ShippingMethodCode>
<StateOrProvince xsi:nil="true"></StateOrProvince>
<Telephone1 xsi:nil="true"></Telephone1>
<Telephone2 xsi:nil="true"></Telephone2>
<Telephone3 xsi:nil="true"></Telephone3>
<TimeZoneRuleVersionNumber xsi:nil="true"></TimeZoneRuleVersionNumber>
<UPSZone xsi:nil="true"></UPSZone>
<UTCOffset xsi:nil="true"></UTCOffset>
<UTCConversionTimeZoneCode xsi:nil="true"></UTCConversionTimeZoneCode>
</Address>
</Addresses>
</Publisher>
<RootComponents>
<RootComponent type="300" schemaName="logisam_userprofilecards_2daf8" behavior="0" />
</RootComponents>
<MissingDependencies />
</SolutionManifest>
</ImportExportXml>