diff --git a/common.props b/common.props
index 89c7bcfb9c..eb7060b4ec 100644
--- a/common.props
+++ b/common.props
@@ -19,13 +19,10 @@
     
   
   
-    
-    
-      true
-      Never
-    
     
     
+    
+    
   
   
     
diff --git a/modules/cms-kit/host/Volo.CmsKit.HttpApi.Host/Volo.CmsKit.HttpApi.Host.abppkg.analyze.json b/modules/cms-kit/host/Volo.CmsKit.HttpApi.Host/Volo.CmsKit.HttpApi.Host.abppkg.analyze.json
new file mode 100644
index 0000000000..ad90be89bd
--- /dev/null
+++ b/modules/cms-kit/host/Volo.CmsKit.HttpApi.Host/Volo.CmsKit.HttpApi.Host.abppkg.analyze.json
@@ -0,0 +1,11 @@
+{
+  "name": "Volo.CmsKit.HttpApi.Host",
+  "hash": "eb81ec0f5b253810c1e601ba9870b4bd",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit",
+      "contentType": "abpModule",
+      "name": "CmsKitHttpApiHostModule"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/host/Volo.CmsKit.Web.Host/Volo.CmsKit.Web.Host.abppkg.analyze.json b/modules/cms-kit/host/Volo.CmsKit.Web.Host/Volo.CmsKit.Web.Host.abppkg.analyze.json
new file mode 100644
index 0000000000..b5597b4825
--- /dev/null
+++ b/modules/cms-kit/host/Volo.CmsKit.Web.Host/Volo.CmsKit.Web.Host.abppkg.analyze.json
@@ -0,0 +1,11 @@
+{
+  "name": "Volo.CmsKit.Web.Host",
+  "hash": "c6f20bbf779c9183f9142fe9ff9513db",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit",
+      "contentType": "abpModule",
+      "name": "CmsKitWebHostModule"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo.CmsKit.Admin.Application.Contracts.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo.CmsKit.Admin.Application.Contracts.abppkg.analyze.json
new file mode 100644
index 0000000000..debf7433be
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application.Contracts/Volo.CmsKit.Admin.Application.Contracts.abppkg.analyze.json
@@ -0,0 +1,11 @@
+{
+  "name": "Volo.CmsKit.Admin.Application.Contracts",
+  "hash": "73f9e2092b8844301e560bd08be02780",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit.Admin",
+      "contentType": "abpModule",
+      "name": "CmsKitAdminApplicationContractsModule"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo.CmsKit.Admin.Application.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo.CmsKit.Admin.Application.abppkg.analyze.json
new file mode 100644
index 0000000000..f219849f45
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Application/Volo.CmsKit.Admin.Application.abppkg.analyze.json
@@ -0,0 +1,256 @@
+{
+  "name": "Volo.CmsKit.Admin.Application",
+  "hash": "881e15230c730c90b8f1524a53549298",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit.Admin",
+      "contentType": "abpModule",
+      "name": "CmsKitAdminApplicationModule"
+    },
+    {
+      "namespace": "Volo.CmsKit.Admin.Tags",
+      "summary": null,
+      "implementingInterfaces": [
+        "Volo.CmsKit.Admin.Tags.IEntityTagAdminAppService"
+      ],
+      "contentType": "applicationService",
+      "name": "EntityTagAdminAppService"
+    },
+    {
+      "namespace": "Volo.CmsKit.Admin.Tags",
+      "summary": null,
+      "implementingInterfaces": [
+        "Volo.CmsKit.Admin.Tags.ITagAdminAppService",
+        "Volo.Abp.Application.Services.ICrudAppService`5[[Volo.CmsKit.Tags.TagDto, Volo.CmsKit.Common.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[Volo.CmsKit.Admin.Tags.TagGetListInput, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Tags.TagCreateDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Tags.TagUpdateDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.ICrudAppService`6[[Volo.CmsKit.Tags.TagDto, Volo.CmsKit.Common.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Tags.TagDto, Volo.CmsKit.Common.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[Volo.CmsKit.Admin.Tags.TagGetListInput, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Tags.TagCreateDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Tags.TagUpdateDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.IReadOnlyAppService`4[[Volo.CmsKit.Tags.TagDto, Volo.CmsKit.Common.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Tags.TagDto, Volo.CmsKit.Common.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[Volo.CmsKit.Admin.Tags.TagGetListInput, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.ICreateUpdateAppService`4[[Volo.CmsKit.Tags.TagDto, Volo.CmsKit.Common.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[Volo.CmsKit.Admin.Tags.TagCreateDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Tags.TagUpdateDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.ICreateAppService`2[[Volo.CmsKit.Tags.TagDto, Volo.CmsKit.Common.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Tags.TagCreateDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.IUpdateAppService`3[[Volo.CmsKit.Tags.TagDto, Volo.CmsKit.Common.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[Volo.CmsKit.Admin.Tags.TagUpdateDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.IDeleteAppService`1[[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]"
+      ],
+      "contentType": "applicationService",
+      "name": "TagAdminAppService"
+    },
+    {
+      "namespace": "Volo.CmsKit.Admin.Pages",
+      "summary": null,
+      "implementingInterfaces": [
+        "Volo.CmsKit.Admin.Pages.IPageAdminAppService",
+        "Volo.Abp.Application.Services.ICrudAppService`6[[Volo.CmsKit.Admin.Pages.PageDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Pages.PageDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[Volo.CmsKit.Admin.Pages.GetPagesInputDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Pages.CreatePageInputDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Pages.UpdatePageInputDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.IReadOnlyAppService`4[[Volo.CmsKit.Admin.Pages.PageDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Pages.PageDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[Volo.CmsKit.Admin.Pages.GetPagesInputDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.ICreateUpdateAppService`4[[Volo.CmsKit.Admin.Pages.PageDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[Volo.CmsKit.Admin.Pages.CreatePageInputDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Pages.UpdatePageInputDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.ICreateAppService`2[[Volo.CmsKit.Admin.Pages.PageDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Pages.CreatePageInputDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.IUpdateAppService`3[[Volo.CmsKit.Admin.Pages.PageDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[Volo.CmsKit.Admin.Pages.UpdatePageInputDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.IDeleteAppService`1[[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]"
+      ],
+      "contentType": "applicationService",
+      "name": "PageAdminAppService"
+    },
+    {
+      "namespace": "Volo.CmsKit.Admin.Menus",
+      "summary": null,
+      "implementingInterfaces": [
+        "Volo.CmsKit.Admin.Menus.IMenuItemAdminAppService"
+      ],
+      "contentType": "applicationService",
+      "name": "MenuItemAdminAppService"
+    },
+    {
+      "namespace": "Volo.CmsKit.Admin.MediaDescriptors",
+      "summary": null,
+      "implementingInterfaces": [
+        "Volo.CmsKit.Admin.MediaDescriptors.IMediaDescriptorAdminAppService"
+      ],
+      "contentType": "applicationService",
+      "name": "MediaDescriptorAdminAppService"
+    },
+    {
+      "namespace": "Volo.CmsKit.Admin.Comments",
+      "summary": null,
+      "implementingInterfaces": [
+        "Volo.CmsKit.Admin.Comments.ICommentAdminAppService"
+      ],
+      "contentType": "applicationService",
+      "name": "CommentAdminAppService"
+    },
+    {
+      "namespace": "Volo.CmsKit.Admin.Blogs",
+      "summary": null,
+      "implementingInterfaces": [
+        "Volo.CmsKit.Admin.Blogs.IBlogAdminAppService",
+        "Volo.Abp.Application.Services.ICrudAppService`5[[Volo.CmsKit.Admin.Blogs.BlogDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[Volo.CmsKit.Admin.Blogs.BlogGetListInput, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Blogs.CreateBlogDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Blogs.UpdateBlogDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.ICrudAppService`6[[Volo.CmsKit.Admin.Blogs.BlogDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Blogs.BlogDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[Volo.CmsKit.Admin.Blogs.BlogGetListInput, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Blogs.CreateBlogDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Blogs.UpdateBlogDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.IReadOnlyAppService`4[[Volo.CmsKit.Admin.Blogs.BlogDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Blogs.BlogDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[Volo.CmsKit.Admin.Blogs.BlogGetListInput, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.ICreateUpdateAppService`4[[Volo.CmsKit.Admin.Blogs.BlogDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[Volo.CmsKit.Admin.Blogs.CreateBlogDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Blogs.UpdateBlogDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.ICreateAppService`2[[Volo.CmsKit.Admin.Blogs.BlogDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Blogs.CreateBlogDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.IUpdateAppService`3[[Volo.CmsKit.Admin.Blogs.BlogDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[Volo.CmsKit.Admin.Blogs.UpdateBlogDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.IDeleteAppService`1[[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]"
+      ],
+      "contentType": "applicationService",
+      "name": "BlogAdminAppService"
+    },
+    {
+      "namespace": "Volo.CmsKit.Admin.Blogs",
+      "summary": null,
+      "implementingInterfaces": [
+        "Volo.CmsKit.Admin.Blogs.IBlogFeatureAdminAppService"
+      ],
+      "contentType": "applicationService",
+      "name": "BlogFeatureAdminAppService"
+    },
+    {
+      "namespace": "Volo.CmsKit.Admin.Blogs",
+      "summary": null,
+      "implementingInterfaces": [
+        "Volo.CmsKit.Admin.Blogs.IBlogPostAdminAppService",
+        "Volo.Abp.Application.Services.ICrudAppService`6[[Volo.CmsKit.Admin.Blogs.BlogPostDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Blogs.BlogPostListDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[Volo.CmsKit.Admin.Blogs.BlogPostGetListInput, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Blogs.CreateBlogPostDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Blogs.UpdateBlogPostDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.IReadOnlyAppService`4[[Volo.CmsKit.Admin.Blogs.BlogPostDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Blogs.BlogPostListDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[Volo.CmsKit.Admin.Blogs.BlogPostGetListInput, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.ICreateUpdateAppService`4[[Volo.CmsKit.Admin.Blogs.BlogPostDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[Volo.CmsKit.Admin.Blogs.CreateBlogPostDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Blogs.UpdateBlogPostDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.ICreateAppService`2[[Volo.CmsKit.Admin.Blogs.BlogPostDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[Volo.CmsKit.Admin.Blogs.CreateBlogPostDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.IUpdateAppService`3[[Volo.CmsKit.Admin.Blogs.BlogPostDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null],[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e],[Volo.CmsKit.Admin.Blogs.UpdateBlogPostDto, Volo.CmsKit.Admin.Application.Contracts, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null]]",
+        "Volo.Abp.Application.Services.IDeleteAppService`1[[System.Guid, System.Private.CoreLib, Version=6.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]"
+      ],
+      "contentType": "applicationService",
+      "name": "BlogPostAdminAppService"
+    },
+    {
+      "displayName": "Comment Management",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Comments"
+    },
+    {
+      "displayName": "Delete",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Comments.Delete"
+    },
+    {
+      "displayName": "Tag Management",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Tags"
+    },
+    {
+      "displayName": "Create",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Tags.Create"
+    },
+    {
+      "displayName": "Update",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Tags.Update"
+    },
+    {
+      "displayName": "Delete",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Tags.Delete"
+    },
+    {
+      "displayName": "Page Management",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Pages"
+    },
+    {
+      "displayName": "Create",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Pages.Create"
+    },
+    {
+      "displayName": "Update",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Pages.Update"
+    },
+    {
+      "displayName": "Delete",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Pages.Delete"
+    },
+    {
+      "displayName": "Blog Management",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Blogs"
+    },
+    {
+      "displayName": "Create",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Blogs.Create"
+    },
+    {
+      "displayName": "Update",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Blogs.Update"
+    },
+    {
+      "displayName": "Delete",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Blogs.Delete"
+    },
+    {
+      "displayName": "Features",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Blogs.Features"
+    },
+    {
+      "displayName": "Blog Post Management",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.BlogPosts"
+    },
+    {
+      "displayName": "Create",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.BlogPosts.Create"
+    },
+    {
+      "displayName": "Update",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.BlogPosts.Update"
+    },
+    {
+      "displayName": "Delete",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.BlogPosts.Delete"
+    },
+    {
+      "displayName": "Menu Management",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Menus"
+    },
+    {
+      "displayName": "Create",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Menus.Create"
+    },
+    {
+      "displayName": "Update",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Menus.Update"
+    },
+    {
+      "displayName": "Delete",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Menus.Delete"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/Volo.CmsKit.Admin.HttpApi.Client.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/Volo.CmsKit.Admin.HttpApi.Client.abppkg.analyze.json
new file mode 100644
index 0000000000..3bf1f06863
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi.Client/Volo.CmsKit.Admin.HttpApi.Client.abppkg.analyze.json
@@ -0,0 +1,11 @@
+{
+  "name": "Volo.CmsKit.Admin.HttpApi.Client",
+  "hash": "f975d702b96a24d6b4cb9c664999c90b",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit.Admin",
+      "contentType": "abpModule",
+      "name": "CmsKitAdminHttpApiClientModule"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi/Volo.CmsKit.Admin.HttpApi.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi/Volo.CmsKit.Admin.HttpApi.abppkg.analyze.json
new file mode 100644
index 0000000000..00454bbc8f
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.HttpApi/Volo.CmsKit.Admin.HttpApi.abppkg.analyze.json
@@ -0,0 +1,11 @@
+{
+  "name": "Volo.CmsKit.Admin.HttpApi",
+  "hash": "81e8bc6c36a59191762b59e39212e5cd",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit.Admin",
+      "contentType": "abpModule",
+      "name": "CmsKitAdminHttpApiModule"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Volo.CmsKit.Admin.Web.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Volo.CmsKit.Admin.Web.abppkg.analyze.json
new file mode 100644
index 0000000000..184a89b09a
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Admin.Web/Volo.CmsKit.Admin.Web.abppkg.analyze.json
@@ -0,0 +1,11 @@
+{
+  "name": "Volo.CmsKit.Admin.Web",
+  "hash": "a2828967355b9551c0b6550cdaf903d1",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit.Admin.Web",
+      "contentType": "abpModule",
+      "name": "CmsKitAdminWebModule"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.Application.Contracts/Volo.CmsKit.Application.Contracts.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Application.Contracts/Volo.CmsKit.Application.Contracts.abppkg.analyze.json
new file mode 100644
index 0000000000..2abdb67cc2
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Application.Contracts/Volo.CmsKit.Application.Contracts.abppkg.analyze.json
@@ -0,0 +1,11 @@
+{
+  "name": "Volo.CmsKit.Application.Contracts",
+  "hash": "4d3f90b1b5397adde6b2cd39238185e2",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit",
+      "contentType": "abpModule",
+      "name": "CmsKitApplicationContractsModule"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.Application/Volo.CmsKit.Application.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Application/Volo.CmsKit.Application.abppkg.analyze.json
new file mode 100644
index 0000000000..111440cb56
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Application/Volo.CmsKit.Application.abppkg.analyze.json
@@ -0,0 +1,149 @@
+{
+  "name": "Volo.CmsKit.Application",
+  "hash": "31f7b336e15076c7af75eb2e808f605c",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit",
+      "contentType": "abpModule",
+      "name": "CmsKitApplicationModule"
+    },
+    {
+      "displayName": "Comment Management",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Comments"
+    },
+    {
+      "displayName": "Delete",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Comments.Delete"
+    },
+    {
+      "displayName": "Tag Management",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Tags"
+    },
+    {
+      "displayName": "Create",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Tags.Create"
+    },
+    {
+      "displayName": "Update",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Tags.Update"
+    },
+    {
+      "displayName": "Delete",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Tags.Delete"
+    },
+    {
+      "displayName": "Page Management",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Pages"
+    },
+    {
+      "displayName": "Create",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Pages.Create"
+    },
+    {
+      "displayName": "Update",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Pages.Update"
+    },
+    {
+      "displayName": "Delete",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Pages.Delete"
+    },
+    {
+      "displayName": "Blog Management",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Blogs"
+    },
+    {
+      "displayName": "Create",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Blogs.Create"
+    },
+    {
+      "displayName": "Update",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Blogs.Update"
+    },
+    {
+      "displayName": "Delete",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Blogs.Delete"
+    },
+    {
+      "displayName": "Features",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Blogs.Features"
+    },
+    {
+      "displayName": "Blog Post Management",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.BlogPosts"
+    },
+    {
+      "displayName": "Create",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.BlogPosts.Create"
+    },
+    {
+      "displayName": "Update",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.BlogPosts.Update"
+    },
+    {
+      "displayName": "Delete",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.BlogPosts.Delete"
+    },
+    {
+      "displayName": "Menu Management",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Menus"
+    },
+    {
+      "displayName": "Create",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Menus.Create"
+    },
+    {
+      "displayName": "Update",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Menus.Update"
+    },
+    {
+      "displayName": "Delete",
+      "isEnabled": true,
+      "contentType": "permission",
+      "name": "CmsKit.Menus.Delete"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo.CmsKit.Common.Application.Contracts.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo.CmsKit.Common.Application.Contracts.abppkg.analyze.json
new file mode 100644
index 0000000000..588b8e1891
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Common.Application.Contracts/Volo.CmsKit.Common.Application.Contracts.abppkg.analyze.json
@@ -0,0 +1,11 @@
+{
+  "name": "Volo.CmsKit.Common.Application.Contracts",
+  "hash": "843aa197d8aaf6ad4d79a2dd5e86937c",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit",
+      "contentType": "abpModule",
+      "name": "CmsKitCommonApplicationContractsModule"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Application/Volo.CmsKit.Common.Application.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Common.Application/Volo.CmsKit.Common.Application.abppkg.analyze.json
new file mode 100644
index 0000000000..0a1d4e9285
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Common.Application/Volo.CmsKit.Common.Application.abppkg.analyze.json
@@ -0,0 +1,38 @@
+{
+  "name": "Volo.CmsKit.Common.Application",
+  "hash": "3f20c55a628ce70eded10f246bfc47ad",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit",
+      "contentType": "abpModule",
+      "name": "CmsKitCommonApplicationModule"
+    },
+    {
+      "namespace": "Volo.CmsKit.Tags",
+      "summary": null,
+      "implementingInterfaces": [
+        "Volo.CmsKit.Tags.ITagAppService"
+      ],
+      "contentType": "applicationService",
+      "name": "TagAppService"
+    },
+    {
+      "namespace": "Volo.CmsKit.MediaDescriptors",
+      "summary": null,
+      "implementingInterfaces": [
+        "Volo.CmsKit.MediaDescriptors.IMediaDescriptorAppService"
+      ],
+      "contentType": "applicationService",
+      "name": "MediaDescriptorAppService"
+    },
+    {
+      "namespace": "Volo.CmsKit.Blogs",
+      "summary": null,
+      "implementingInterfaces": [
+        "Volo.CmsKit.Blogs.IBlogFeatureAppService"
+      ],
+      "contentType": "applicationService",
+      "name": "BlogFeatureAppService"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.HttpApi.Client/Volo.CmsKit.Common.HttpApi.Client.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Common.HttpApi.Client/Volo.CmsKit.Common.HttpApi.Client.abppkg.analyze.json
new file mode 100644
index 0000000000..ae43214594
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Common.HttpApi.Client/Volo.CmsKit.Common.HttpApi.Client.abppkg.analyze.json
@@ -0,0 +1,11 @@
+{
+  "name": "Volo.CmsKit.Common.HttpApi.Client",
+  "hash": "9b23050f81c47ccb46857acd8ad556bc",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit",
+      "contentType": "abpModule",
+      "name": "CmsKitCommonHttpApiClientModule"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.HttpApi/Volo.CmsKit.Common.HttpApi.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Common.HttpApi/Volo.CmsKit.Common.HttpApi.abppkg.analyze.json
new file mode 100644
index 0000000000..ed48eca253
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Common.HttpApi/Volo.CmsKit.Common.HttpApi.abppkg.analyze.json
@@ -0,0 +1,11 @@
+{
+  "name": "Volo.CmsKit.Common.HttpApi",
+  "hash": "90eb1298e746d1cc3746080f2353f419",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit",
+      "contentType": "abpModule",
+      "name": "CmsKitCommonHttpApiModule"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.Common.Web/Volo.CmsKit.Common.Web.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Common.Web/Volo.CmsKit.Common.Web.abppkg.analyze.json
new file mode 100644
index 0000000000..c7d1106248
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Common.Web/Volo.CmsKit.Common.Web.abppkg.analyze.json
@@ -0,0 +1,11 @@
+{
+  "name": "Volo.CmsKit.Common.Web",
+  "hash": "0ed851e40c32f928cb057e6d2bbe1a51",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit.Web",
+      "contentType": "abpModule",
+      "name": "CmsKitCommonWebModule"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo.CmsKit.Domain.Shared.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo.CmsKit.Domain.Shared.abppkg.analyze.json
new file mode 100644
index 0000000000..6664aefaab
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Domain.Shared/Volo.CmsKit.Domain.Shared.abppkg.analyze.json
@@ -0,0 +1,11 @@
+{
+  "name": "Volo.CmsKit.Domain.Shared",
+  "hash": "fbbea377828585f693c9dcb5a17bc7ae",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit",
+      "contentType": "abpModule",
+      "name": "CmsKitDomainSharedModule"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.Domain/Volo.CmsKit.Domain.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo.CmsKit.Domain.abppkg.analyze.json
new file mode 100644
index 0000000000..6e37586d3e
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Domain/Volo.CmsKit.Domain.abppkg.analyze.json
@@ -0,0 +1,360 @@
+{
+  "name": "Volo.CmsKit.Domain",
+  "hash": "5e1493ed13521520b7f3d11d97d8177c",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit",
+      "contentType": "abpModule",
+      "name": "CmsKitDomainModule"
+    },
+    {
+      "namespace": "Volo.CmsKit.Users",
+      "primaryKeyType": "Guid",
+      "summary": null,
+      "collectionProperties": [],
+      "navigationProperties": [],
+      "contentType": "aggregateRoot",
+      "name": "CmsUser"
+    },
+    {
+      "namespace": "Volo.CmsKit.Tags",
+      "primaryKeyType": "Guid",
+      "summary": null,
+      "collectionProperties": [],
+      "navigationProperties": [],
+      "contentType": "aggregateRoot",
+      "name": "Tag"
+    },
+    {
+      "namespace": "Volo.CmsKit.Reactions",
+      "primaryKeyType": "Guid",
+      "summary": null,
+      "collectionProperties": [],
+      "navigationProperties": [],
+      "contentType": "aggregateRoot",
+      "name": "UserReaction"
+    },
+    {
+      "namespace": "Volo.CmsKit.Ratings",
+      "primaryKeyType": "Guid",
+      "summary": null,
+      "collectionProperties": [],
+      "navigationProperties": [],
+      "contentType": "aggregateRoot",
+      "name": "Rating"
+    },
+    {
+      "namespace": "Volo.CmsKit.Pages",
+      "primaryKeyType": "Guid",
+      "summary": null,
+      "collectionProperties": [],
+      "navigationProperties": [],
+      "contentType": "aggregateRoot",
+      "name": "Page"
+    },
+    {
+      "namespace": "Volo.CmsKit.Menus",
+      "primaryKeyType": "Guid",
+      "summary": null,
+      "collectionProperties": [],
+      "navigationProperties": [],
+      "contentType": "aggregateRoot",
+      "name": "MenuItem"
+    },
+    {
+      "namespace": "Volo.CmsKit.MediaDescriptors",
+      "primaryKeyType": "Guid",
+      "summary": null,
+      "collectionProperties": [],
+      "navigationProperties": [],
+      "contentType": "aggregateRoot",
+      "name": "MediaDescriptor"
+    },
+    {
+      "namespace": "Volo.CmsKit.Comments",
+      "primaryKeyType": "Guid",
+      "summary": null,
+      "collectionProperties": [],
+      "navigationProperties": [],
+      "contentType": "aggregateRoot",
+      "name": "Comment"
+    },
+    {
+      "namespace": "Volo.CmsKit.Blogs",
+      "primaryKeyType": "Guid",
+      "summary": null,
+      "collectionProperties": [],
+      "navigationProperties": [],
+      "contentType": "aggregateRoot",
+      "name": "Blog"
+    },
+    {
+      "namespace": "Volo.CmsKit.Blogs",
+      "primaryKeyType": "Guid",
+      "summary": null,
+      "collectionProperties": [],
+      "navigationProperties": [],
+      "contentType": "aggregateRoot",
+      "name": "BlogFeature"
+    },
+    {
+      "namespace": "Volo.CmsKit.Blogs",
+      "primaryKeyType": "Guid",
+      "summary": null,
+      "collectionProperties": [],
+      "navigationProperties": [
+        "Volo.CmsKit.Users.CmsUser"
+      ],
+      "contentType": "aggregateRoot",
+      "name": "BlogPost"
+    },
+    {
+      "namespace": "Volo.CmsKit.Tags",
+      "summary": null,
+      "contentType": "domainService",
+      "name": "EntityTagManager"
+    },
+    {
+      "namespace": "Volo.CmsKit.Tags",
+      "summary": null,
+      "contentType": "domainService",
+      "name": "TagManager"
+    },
+    {
+      "namespace": "Volo.CmsKit.Reactions",
+      "summary": null,
+      "contentType": "domainService",
+      "name": "ReactionManager"
+    },
+    {
+      "namespace": "Volo.CmsKit.Ratings",
+      "summary": null,
+      "contentType": "domainService",
+      "name": "RatingManager"
+    },
+    {
+      "namespace": "Volo.CmsKit.Pages",
+      "summary": null,
+      "contentType": "domainService",
+      "name": "PageManager"
+    },
+    {
+      "namespace": "Volo.CmsKit.Menus",
+      "summary": null,
+      "contentType": "domainService",
+      "name": "MenuItemManager"
+    },
+    {
+      "namespace": "Volo.CmsKit.MediaDescriptors",
+      "summary": null,
+      "contentType": "domainService",
+      "name": "MediaDescriptorManager"
+    },
+    {
+      "namespace": "Volo.CmsKit.Comments",
+      "summary": null,
+      "contentType": "domainService",
+      "name": "CommentManager"
+    },
+    {
+      "namespace": "Volo.CmsKit.Blogs",
+      "summary": null,
+      "contentType": "domainService",
+      "name": "BlogFeatureManager"
+    },
+    {
+      "namespace": "Volo.CmsKit.Blogs",
+      "summary": null,
+      "contentType": "domainService",
+      "name": "BlogManager"
+    },
+    {
+      "namespace": "Volo.CmsKit.Blogs",
+      "summary": null,
+      "contentType": "domainService",
+      "name": "BlogPostManager"
+    },
+    {
+      "namespace": "Volo.CmsKit.Users",
+      "summary": null,
+      "entityModel": {
+        "namespace": "Volo.CmsKit.Users",
+        "primaryKeyType": "Guid",
+        "summary": null,
+        "collectionProperties": [],
+        "navigationProperties": [],
+        "contentType": "entity",
+        "name": "CmsUser"
+      },
+      "contentType": "repositoryInterface",
+      "name": "ICmsUserRepository"
+    },
+    {
+      "namespace": "Volo.CmsKit.Tags",
+      "summary": null,
+      "entityModel": {
+        "namespace": "Volo.CmsKit.Tags",
+        "primaryKeyType": null,
+        "summary": null,
+        "collectionProperties": [],
+        "navigationProperties": [],
+        "contentType": "entity",
+        "name": "EntityTag"
+      },
+      "contentType": "repositoryInterface",
+      "name": "IEntityTagRepository"
+    },
+    {
+      "namespace": "Volo.CmsKit.Tags",
+      "summary": null,
+      "entityModel": {
+        "namespace": "Volo.CmsKit.Tags",
+        "primaryKeyType": "Guid",
+        "summary": null,
+        "collectionProperties": [],
+        "navigationProperties": [],
+        "contentType": "entity",
+        "name": "Tag"
+      },
+      "contentType": "repositoryInterface",
+      "name": "ITagRepository"
+    },
+    {
+      "namespace": "Volo.CmsKit.Reactions",
+      "summary": null,
+      "entityModel": {
+        "namespace": "Volo.CmsKit.Reactions",
+        "primaryKeyType": "Guid",
+        "summary": null,
+        "collectionProperties": [],
+        "navigationProperties": [],
+        "contentType": "entity",
+        "name": "UserReaction"
+      },
+      "contentType": "repositoryInterface",
+      "name": "IUserReactionRepository"
+    },
+    {
+      "namespace": "Volo.CmsKit.Ratings",
+      "summary": null,
+      "entityModel": {
+        "namespace": "Volo.CmsKit.Ratings",
+        "primaryKeyType": "Guid",
+        "summary": null,
+        "collectionProperties": [],
+        "navigationProperties": [],
+        "contentType": "entity",
+        "name": "Rating"
+      },
+      "contentType": "repositoryInterface",
+      "name": "IRatingRepository"
+    },
+    {
+      "namespace": "Volo.CmsKit.Pages",
+      "summary": null,
+      "entityModel": {
+        "namespace": "Volo.CmsKit.Pages",
+        "primaryKeyType": "Guid",
+        "summary": null,
+        "collectionProperties": [],
+        "navigationProperties": [],
+        "contentType": "entity",
+        "name": "Page"
+      },
+      "contentType": "repositoryInterface",
+      "name": "IPageRepository"
+    },
+    {
+      "namespace": "Volo.CmsKit.Menus",
+      "summary": null,
+      "entityModel": {
+        "namespace": "Volo.CmsKit.Menus",
+        "primaryKeyType": "Guid",
+        "summary": null,
+        "collectionProperties": [],
+        "navigationProperties": [],
+        "contentType": "entity",
+        "name": "MenuItem"
+      },
+      "contentType": "repositoryInterface",
+      "name": "IMenuItemRepository"
+    },
+    {
+      "namespace": "Volo.CmsKit.MediaDescriptors",
+      "summary": null,
+      "entityModel": {
+        "namespace": "Volo.CmsKit.MediaDescriptors",
+        "primaryKeyType": "Guid",
+        "summary": null,
+        "collectionProperties": [],
+        "navigationProperties": [],
+        "contentType": "entity",
+        "name": "MediaDescriptor"
+      },
+      "contentType": "repositoryInterface",
+      "name": "IMediaDescriptorRepository"
+    },
+    {
+      "namespace": "Volo.CmsKit.Comments",
+      "summary": null,
+      "entityModel": {
+        "namespace": "Volo.CmsKit.Comments",
+        "primaryKeyType": "Guid",
+        "summary": null,
+        "collectionProperties": [],
+        "navigationProperties": [],
+        "contentType": "entity",
+        "name": "Comment"
+      },
+      "contentType": "repositoryInterface",
+      "name": "ICommentRepository"
+    },
+    {
+      "namespace": "Volo.CmsKit.Blogs",
+      "summary": null,
+      "entityModel": {
+        "namespace": "Volo.CmsKit.Blogs",
+        "primaryKeyType": "Guid",
+        "summary": null,
+        "collectionProperties": [],
+        "navigationProperties": [],
+        "contentType": "entity",
+        "name": "BlogFeature"
+      },
+      "contentType": "repositoryInterface",
+      "name": "IBlogFeatureRepository"
+    },
+    {
+      "namespace": "Volo.CmsKit.Blogs",
+      "summary": null,
+      "entityModel": {
+        "namespace": "Volo.CmsKit.Blogs",
+        "primaryKeyType": "Guid",
+        "summary": null,
+        "collectionProperties": [],
+        "navigationProperties": [
+          "Volo.CmsKit.Users.CmsUser"
+        ],
+        "contentType": "entity",
+        "name": "BlogPost"
+      },
+      "contentType": "repositoryInterface",
+      "name": "IBlogPostRepository"
+    },
+    {
+      "namespace": "Volo.CmsKit.Blogs",
+      "summary": null,
+      "entityModel": {
+        "namespace": "Volo.CmsKit.Blogs",
+        "primaryKeyType": "Guid",
+        "summary": null,
+        "collectionProperties": [],
+        "navigationProperties": [],
+        "contentType": "entity",
+        "name": "Blog"
+      },
+      "contentType": "repositoryInterface",
+      "name": "IBlogRepository"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo.CmsKit.EntityFrameworkCore.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo.CmsKit.EntityFrameworkCore.abppkg.analyze.json
new file mode 100644
index 0000000000..54fe5b9439
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.EntityFrameworkCore/Volo.CmsKit.EntityFrameworkCore.abppkg.analyze.json
@@ -0,0 +1,18 @@
+{
+  "name": "Volo.CmsKit.EntityFrameworkCore",
+  "hash": "4619f783b3acb98bc13aa198c890fca1",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit.EntityFrameworkCore",
+      "contentType": "abpModule",
+      "name": "CmsKitEntityFrameworkCoreModule"
+    },
+    {
+      "namespace": "Volo.CmsKit.EntityFrameworkCore",
+      "connectionStringName": "CmsKit",
+      "databaseTables": [],
+      "contentType": "efCoreDbContext",
+      "name": "CmsKitDbContext"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.HttpApi.Client/Volo.CmsKit.HttpApi.Client.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.HttpApi.Client/Volo.CmsKit.HttpApi.Client.abppkg.analyze.json
new file mode 100644
index 0000000000..01a6e02067
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.HttpApi.Client/Volo.CmsKit.HttpApi.Client.abppkg.analyze.json
@@ -0,0 +1,11 @@
+{
+  "name": "Volo.CmsKit.HttpApi.Client",
+  "hash": "65cf421b98bd2fd425f4ff54726faa75",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit",
+      "contentType": "abpModule",
+      "name": "CmsKitHttpApiClientModule"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.HttpApi/Volo.CmsKit.HttpApi.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.HttpApi/Volo.CmsKit.HttpApi.abppkg.analyze.json
new file mode 100644
index 0000000000..a4aff8c97b
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.HttpApi/Volo.CmsKit.HttpApi.abppkg.analyze.json
@@ -0,0 +1,11 @@
+{
+  "name": "Volo.CmsKit.HttpApi",
+  "hash": "d90a7dc687ddf2aa76d744cf4902f3d5",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit",
+      "contentType": "abpModule",
+      "name": "CmsKitHttpApiModule"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo.CmsKit.MongoDB.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo.CmsKit.MongoDB.abppkg.analyze.json
new file mode 100644
index 0000000000..5f1833d48d
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.MongoDB/Volo.CmsKit.MongoDB.abppkg.analyze.json
@@ -0,0 +1,79 @@
+{
+  "name": "Volo.CmsKit.MongoDB",
+  "hash": "68106be3cdf339145c2c20f6dbad47bc",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit.MongoDB",
+      "contentType": "abpModule",
+      "name": "CmsKitMongoDbModule"
+    },
+    {
+      "namespace": "Volo.CmsKit.MongoDB",
+      "connectionStringName": "CmsKit",
+      "databaseCollections": [
+        {
+          "entityFullName": "Volo.CmsKit.Tags.EntityTag",
+          "contentType": "databaseCollection",
+          "name": "CmsEntityTags"
+        },
+        {
+          "entityFullName": "Volo.CmsKit.Menus.MenuItem",
+          "contentType": "databaseCollection",
+          "name": "CmsMenuItems"
+        },
+        {
+          "entityFullName": "Volo.CmsKit.Blogs.BlogFeature",
+          "contentType": "databaseCollection",
+          "name": "CmsBlogFeatures"
+        },
+        {
+          "entityFullName": "Volo.CmsKit.Blogs.BlogPost",
+          "contentType": "databaseCollection",
+          "name": "CmsBlogPosts"
+        },
+        {
+          "entityFullName": "Volo.CmsKit.Pages.Page",
+          "contentType": "databaseCollection",
+          "name": "CmsPages"
+        },
+        {
+          "entityFullName": "Volo.CmsKit.Users.CmsUser",
+          "contentType": "databaseCollection",
+          "name": "CmsUsers"
+        },
+        {
+          "entityFullName": "Volo.CmsKit.Comments.Comment",
+          "contentType": "databaseCollection",
+          "name": "CmsComments"
+        },
+        {
+          "entityFullName": "Volo.CmsKit.MediaDescriptors.MediaDescriptor",
+          "contentType": "databaseCollection",
+          "name": "CmsMediaDescriptors"
+        },
+        {
+          "entityFullName": "Volo.CmsKit.Reactions.UserReaction",
+          "contentType": "databaseCollection",
+          "name": "CmsUserReactions"
+        },
+        {
+          "entityFullName": "Volo.CmsKit.Ratings.Rating",
+          "contentType": "databaseCollection",
+          "name": "CmsRatings"
+        },
+        {
+          "entityFullName": "Volo.CmsKit.Blogs.Blog",
+          "contentType": "databaseCollection",
+          "name": "CmsBlogs"
+        },
+        {
+          "entityFullName": "Volo.CmsKit.Tags.Tag",
+          "contentType": "databaseCollection",
+          "name": "CmsTags"
+        }
+      ],
+      "contentType": "mongoDbContext",
+      "name": "CmsKitMongoDbContext"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo.CmsKit.Public.Application.Contracts.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo.CmsKit.Public.Application.Contracts.abppkg.analyze.json
new file mode 100644
index 0000000000..017365888d
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.Application.Contracts/Volo.CmsKit.Public.Application.Contracts.abppkg.analyze.json
@@ -0,0 +1,11 @@
+{
+  "name": "Volo.CmsKit.Public.Application.Contracts",
+  "hash": "a01da2b14d4a9d4120e519587828e915",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit.Public",
+      "contentType": "abpModule",
+      "name": "CmsKitPublicApplicationContractsModule"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo.CmsKit.Public.Application.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo.CmsKit.Public.Application.abppkg.analyze.json
new file mode 100644
index 0000000000..6c0b688ece
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.Application/Volo.CmsKit.Public.Application.abppkg.analyze.json
@@ -0,0 +1,65 @@
+{
+  "name": "Volo.CmsKit.Public.Application",
+  "hash": "bb8a74383fd91a888c1a6bdd8793886a",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit.Public",
+      "contentType": "abpModule",
+      "name": "CmsKitPublicApplicationModule"
+    },
+    {
+      "namespace": "Volo.CmsKit.Public.Reactions",
+      "summary": null,
+      "implementingInterfaces": [
+        "Volo.CmsKit.Public.Reactions.IReactionPublicAppService"
+      ],
+      "contentType": "applicationService",
+      "name": "ReactionPublicAppService"
+    },
+    {
+      "namespace": "Volo.CmsKit.Public.Ratings",
+      "summary": null,
+      "implementingInterfaces": [
+        "Volo.CmsKit.Public.Ratings.IRatingPublicAppService"
+      ],
+      "contentType": "applicationService",
+      "name": "RatingPublicAppService"
+    },
+    {
+      "namespace": "Volo.CmsKit.Public.Pages",
+      "summary": null,
+      "implementingInterfaces": [
+        "Volo.CmsKit.Public.Pages.IPagePublicAppService"
+      ],
+      "contentType": "applicationService",
+      "name": "PagePublicAppService"
+    },
+    {
+      "namespace": "Volo.CmsKit.Public.Menus",
+      "summary": null,
+      "implementingInterfaces": [
+        "Volo.CmsKit.Public.Menus.IMenuItemPublicAppService"
+      ],
+      "contentType": "applicationService",
+      "name": "MenuItemPublicAppService"
+    },
+    {
+      "namespace": "Volo.CmsKit.Public.Comments",
+      "summary": null,
+      "implementingInterfaces": [
+        "Volo.CmsKit.Public.Comments.ICommentPublicAppService"
+      ],
+      "contentType": "applicationService",
+      "name": "CommentPublicAppService"
+    },
+    {
+      "namespace": "Volo.CmsKit.Public.Blogs",
+      "summary": null,
+      "implementingInterfaces": [
+        "Volo.CmsKit.Public.Blogs.IBlogPostPublicAppService"
+      ],
+      "contentType": "applicationService",
+      "name": "BlogPostPublicAppService"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/Volo.CmsKit.Public.HttpApi.Client.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/Volo.CmsKit.Public.HttpApi.Client.abppkg.analyze.json
new file mode 100644
index 0000000000..a5b5f14e4a
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi.Client/Volo.CmsKit.Public.HttpApi.Client.abppkg.analyze.json
@@ -0,0 +1,11 @@
+{
+  "name": "Volo.CmsKit.Public.HttpApi.Client",
+  "hash": "a0b2cb60c467f7ac82d80601c07539e7",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit.Public",
+      "contentType": "abpModule",
+      "name": "CmsKitPublicHttpApiClientModule"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi/Volo.CmsKit.Public.HttpApi.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi/Volo.CmsKit.Public.HttpApi.abppkg.analyze.json
new file mode 100644
index 0000000000..738ea4f1c5
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.HttpApi/Volo.CmsKit.Public.HttpApi.abppkg.analyze.json
@@ -0,0 +1,11 @@
+{
+  "name": "Volo.CmsKit.Public.HttpApi",
+  "hash": "88ad7e71fb481d317541e032a3b597bd",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit.Public",
+      "contentType": "abpModule",
+      "name": "CmsKitPublicHttpApiModule"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.Public.Web/Volo.CmsKit.Public.Web.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Volo.CmsKit.Public.Web.abppkg.analyze.json
new file mode 100644
index 0000000000..dcb063b25c
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Public.Web/Volo.CmsKit.Public.Web.abppkg.analyze.json
@@ -0,0 +1,11 @@
+{
+  "name": "Volo.CmsKit.Public.Web",
+  "hash": "c7cf0e41e624b65fa6a45e007cfaee63",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit.Public.Web",
+      "contentType": "abpModule",
+      "name": "CmsKitPublicWebModule"
+    }
+  ]
+}
\ No newline at end of file
diff --git a/modules/cms-kit/src/Volo.CmsKit.Web/Volo.CmsKit.Web.abppkg.analyze.json b/modules/cms-kit/src/Volo.CmsKit.Web/Volo.CmsKit.Web.abppkg.analyze.json
new file mode 100644
index 0000000000..4207fdb2e3
--- /dev/null
+++ b/modules/cms-kit/src/Volo.CmsKit.Web/Volo.CmsKit.Web.abppkg.analyze.json
@@ -0,0 +1,11 @@
+{
+  "name": "Volo.CmsKit.Web",
+  "hash": "692a8765c904d63f3c1c0b14d18baa4e",
+  "contents": [
+    {
+      "namespace": "Volo.CmsKit.Web",
+      "contentType": "abpModule",
+      "name": "CmsKitWebModule"
+    }
+  ]
+}
\ No newline at end of file