diff --git a/README.md b/README.md index d461899..3e4b5dd 100644 --- a/README.md +++ b/README.md @@ -23,3 +23,84 @@ Abp RadzenUI is a UI theme built on the Abp framework and developed using the Ra ![image](https://github.com/user-attachments/assets/af15032f-7c95-4c96-82fe-b895082b02da) ## 🌱How to use + +### 1. Create new solution by abp cli +```shell +abp new CRM -u blazor-server -dbms PostgreSQL -m none --theme leptonx-lite -csf +``` + +### 2. Install `AbpRadzen.Blazor.Server.UI` on your `CRM.Blazor` project +```shell +dotnet add package AbpRadzen.Blazor.Server.UI +``` + +### 3. Remove the nuget packages and code associated with the leptonx-lite theme +This is mainly the code in the `CRMBlazorModule` class and delete files in the Pages directory + +### 4. Config Abp RadzenUI +Add the `ConfigureAbpRadzenUI` method on your `ConfigService` method +```csharp +private void ConfigureAbpRadzenUI() +{ + // Configure AbpRadzenUI + Configure(options => + { + // this is very imporant to set current web application's pages to the AbpRadzenUI module + options.RouterAdditionalAssemblies = [typeof(Home).Assembly]; + + // other settings + //options.TitleBar = new TitleBarSettings + //{ + // ShowLanguageMenu = false, + // Title = "CRM" + //}; + //options.LoginPage = new LoginPageSettings + //{ + // LogoPath = "xxx/xx.png" + //}; + //options.Theme = new ThemeSettings + //{ + // Default = "material", + // EnablePremiumTheme = true, + //}; + }); + + // Configure AbpMultiTenancyOptions, this will affect login page that whether need to switch tenants + Configure(options => + { + options.IsEnabled = MultiTenancyConsts.IsEnabled; + }); + + // Configure AbpLocalizationOptions + Configure(options => + { + // set AbpRadzenUIResource as BaseTypes for your application's localization resources + var crmResource = options.Resources.Get(); + crmResource.AddBaseTypes(typeof(AbpRadzenUIResource)); + + // if you don't want to use the default language list, you can clear it and add your own languages + options.Languages.Clear(); + options.Languages.Add(new LanguageInfo("en", "en", "English")); + options.Languages.Add(new LanguageInfo("fr", "fr", "Français")); + options.Languages.Add(new LanguageInfo("zh-Hans", "zh-Hans", "简体中文")); + }); + + // Configure your web application's navigation menu + Configure(options => + { + options.MenuContributors.Add(new CRMMenuContributor()); + }); +} +``` + +then add the following code on your `OnApplicationInitialization` method +```csharp +app.UseRadzenUI(); +``` + +yuo can refer to the sample code [CRMBlazorWebModule](https://github.com/ShaoHans/Abp.RadzenUI/blob/main/samples/CRM.Blazor.Web/CRMBlazorWebModule.cs) + +### 5. Config Menu +When you add razor page and need config menu , you should edit the [CRMMenuContributor](https://github.com/ShaoHans/Abp.RadzenUI/blob/main/samples/CRM.Blazor.Web/Menus/CRMMenuContributor.cs) class + +### 6. Don't forget migrate your database when you first run the app