My Blog Using Sanic
- 4.0版本开始已经使用了最新的Python3.10语法
- 3.X版本使用Python3.8语法
- 2.X版本兼容Python2
强烈建议升级到最新的CPython版本。
这是一个使用asyncio生态开发的个人技术博客。具体如下:
- Web框架: Sanic
- 模板: Mako/Sanic-Mako
- 数据库: TortoiseORM/aiomysql
- 缓存: aiomcache
- KV数据库: aioredis
- 任务队列: arq
- 代码质量: mypy/flake8/isort/bandit
其他aio扩展: Sanic-Auth、Sanic-wtf、sanic-session、aiotask-context、asyncblink、sanic-sentry、sanic-jwt、aiosmtplib
管理后台使用: ElementUI + Vue-CLI + Vue-Router + Vuex
Inspired by vue-element-admin and vue3-admin-plus
动态 使用: Vue-CLI + Vue-Router + Vuex
- 可以通过后台对文章、标签等做增删改查
- 后台支持Markdown编辑/预览
- 支持代码语法高亮
- 支持TOC
- 支持文章搜索
- 支持Github登录评论
- 支持Github登录对文章和平台表态
- 可以分享文章到微信/微博/豆瓣/印象笔记/Linkedin
- 支持Hexo等其他Markdown源文件的导入
- 支持文章的语法高亮
- 支持个人设置(如设置头像,个人介绍)
- 支持定制导航栏
- 支持RSS/Sitemap
- 相关文章推荐(根据相似标签)
- 响应式设计
- 支持评论提及邮件
- 支持 Github Cards. 具体用法请看 这里
- 文章内容(除代码部分之外)自动「盘古之白」
- 支持「文章专题」
- 支持「动态」
- 可对评论回应
- 支持用Docker Compose本地开发
- 支持kubernetes上运行
- Widget系统,内置aboutme、blogroll、most_viewed、latest_comments、tagcloud、html等widget
- 导航栏项可以设置icon和颜色(如RSS)
- 支持配置CDN域名服务静态文件
- 支持笔记类型的文章,在右侧会显示对应条目信息
- 支持展示收藏的Movie(Tv)、Book和Game三种类型条目,并可以通过widget展示在主页右侧
- 支持通过Widget显示rss阅读器feedly和inoreader的订阅链接,可以显示feedly订阅数
文章中支持引用Github User/Repo Card,代码源于Github Cards,对样式做了微调,感恩~
效果: 我的博客
在文章中可以这么用:
```card { 'user': 'dongweiming', 'repo': 'lyanna', 'right': 1 } ```
card是lang,内容是json数据,你需要确保它可以作为参数让ast.literal_eval
正常执行。其中user
是必选键值对,包含repo
会从user
里面搜索这个repo
,找不到的话会「Not Found」。right
项是为了让Card向右对齐(默认向左对齐)
这些博客使用了Lyanna:
PS: 如果博主不希望自己的博客出现在此列表中可以各种渠道私信我或者提PR去掉~