推荐一个Star超过2K的.Net轻量级的CMS开源项目

news/2024/11/13 15:17:51/

推荐一个具有模块化和可扩展的架构的CMS开源项目。

01 项目简介

Piranha CMS是一个轻量级且跨平台的CMS库,专为.NET 8设计。

该项目提供多种模板,具备CMS基本功能,也有空模板方便从头开始构建新网站,甚至可以作为移动应用的后端。

是一个完全解耦的CMS,意味着我们可以使用任何技术以任何方式构建的应用程序。

02 技术架构

1、基于.Net 8开发。

2、数据库支持:SQL数据库(本地和Azure)、SQLite、MySQL、PostgreSQL和Azure Cosmos DB等。

3、技术栈:Asp.net Mvc Core、EntityFrameworkCore、JQuery、Bootstrap。

03 使用方法

1、安装模板

 dotnet new -i Piranha.Templates

2、创建空模板

dotnet new piranha.empty

图片

3、创建ASP.NET MVC模板项目

dotnet new piranha.mvc

图片

4、创建Razor Pages模板项目

dotnet new piranha.razor

图片

5、也可以直接通过Visual Studio创建项目。

图片

04 界面部分截图

1、启动页面

图片

2、首页

图片

3、博客

图片

4、后台登录页面

图片

5、后台首页

图片

6、用户管理

图片

7、角色管理

图片

8、设置管理

图片

9、页面管理

图片

05 项目地址

https://github.com/PiranhaCMS/piranha.core

更多开源项目: https://github.com/bianchenglequ/NetCodeTop

我是编程乐趣,一个.Net开发经验老程序员,欢迎“关注”我,每天为你分享开源项目和编程知识。
也欢迎加入【.Net技术编程交流社区】,和大家共同学习交流!,点击加入:https://bbs.csdn.net/topics/613465368

- End -

推荐阅读

2个零基础入门框架教程!

tesseract:一个.Net版本的开源OCR项目

盘点下5个Winform UI开源控件库

AutoFixture:.NET 的假数据生成工具

CodeMaid:Visual Studio代码自动整理插件!


http://www.ppmy.cn/news/1546703.html

相关文章

Oceanbase-Topk直方图

文章目录 计算公式:公式的含义:举例解释场景设定直方图记录情况结果分析 总结 计算公式: (1 - (1 / bucket_size)) * 100 这个计算公式,用来确定在 Topk 直方图中,哪些值会被认为是“重要值”,即超过特定的…

网络安全-蓝队基础

声明 学习视频来自 B 站UP主泷羽sec,如涉及侵权马上删除文章。 笔记的只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负。 ✍🏻作者简介:致…

企业信息表的多维数据增强:资质属性与海关数据的添加方法

文章目录 摘要1. 背景介绍2. 原始数据简介海关数据 3. 企业资质添加:代码实现3.1 表格拼接3.2 企业资质属性添加 4. 海关数据添加5. 总结 摘要 本文探讨了如何通过企业资质和海关出口数据的加入,丰富企业信息表的维度,为企业分析提供更强大的…

进程 线程 和go协程的区别

进程和线程是操作系统中两个重要的执行单元,理解它们的区别对于编程和系统设计非常重要。以下是它们的主要区别: ### 进程(Process) 定义:进程是一个正在执行的程序的实例,具有独立的地址空间。 资源&…

使用JS实现文件流转换excel?

要在JavaScript中将文件流转换为Excel,可以使用第三方库,如SheetJS (也称为xlsx库)。以下是一个简单的例子,展示如何使用SheetJS将Blob文件流转换为Excel文件并导出。 首先,确保安装了xlsx库: npm install xlsx 然后…

esayExcel根据模板导出包含图片

1、效果 2、模板 3、工具类代码 /*** 根据模板填充* param response* param templateStream 模板文件流* param map 模板文件所需要的参数* param list list循环模板参数* throws IOException*/public static void templateFilling(HttpServletRequest servletRequest,HttpServ…

31DNS设置

每天五分钟学Linux | 第三十一课:DNS设置 大家好!欢迎再次来到我们的“每天五分钟学Linux”系列教程。在前面的课程中,我们学习了如何配置Linux系统的IP地址。今天,我们将探讨如何设置DNS(域名系统)&#…

Rust 中的 match 基本用法

Rust 中的 match 是一个强大的控制流运算符,它允许你将一个值与一系列的模式进行匹配,并根据匹配的模式执行代码。以下是 match 的基本用法: 基础语法 match value {模式1 > 表达式1,模式2 > 表达式2,_ > 默认表达式, }示例 下面…