Git Product home page Git Product logo

flog's Introduction

Flog

Build Status

一个简单的博客系统,由 Flask 驱动

功能特性

  • 集成后台管理页面
  • 完善的SEO优化
  • 可选的,集成第三方登录的内置评论系统
  • 支持接入Disqus, Google Analytics, 腾讯云对象存储
  • Docker 部署
  • Letsencrypt SSL证书

开发本项目

  1. 安装 pipenv
$ pip install pipenv
  1. 常用命令
# 安装所有开发依赖
$ pipenv install -d
# 生成翻译文件
$ pipenv run make compile
# 升级DB
$ pipenv run flask db upgrade

后台开发

本项目管理后台使用前后端分离结构(Vue.js + Flask),应当分别开发与调试,再进行联调。所以开发模式上存在以下几种组合:

  1. 调试前端

    • 确保static/env.developmentVUE_APP_BASE_API = '/dev-api'
    • 启动开发服务器:cd static && npm run dev
    • 此模式下所有后端请求将被 mock 拦截,http://localhost:9527将自动在浏览器中打开
  2. 前后端联调

    • 确保static/env.developmentVUE_APP_BASE_API = 'http://127.0.0.1:5000/api
    • 启动后端开发服务器:FLASK_ENV=development pipenv run flask run,地址为http://127.0.0.1:5000
    • 启动前端开发服务器:cd static && npm run dev,地址为http://localhost:9527
    • 此模式下前后端改动均能自动重启,且后端请求真实发至后端服务器
  3. 准生产环境调试

    • 构建前端页面cd static && npm run build:prod,此时前端页面将以生产模式编译压缩
    • 启动后端开发服务器:FLASK_ENV=development pipenv run flask run
    • 此模式将模拟生产环境行为,后端服务器可更新,但前端不可以。

部署到远程服务器

部署到 Heroku

Deploy

部署到云服务器

Flask+Nginx 博客容器化部署

使用管理员后台

前往$your_domain/admin使用账号admin密码admin(默认)登录,然后就可以开始写文章了。 前往$your_domain/admin/setting配置页更改密码及其他设定。

Markdown 特性

Flog 的 Markdown 语法遵循 GitHub Flavored Markdown 规范,支持脚注、表格、文章目录、数字公式等。

此外,Flog 还支持图片排版,使用方法是将多个图片放在一起(不换行),将渲染为多列图片。例:

![](/images/image1.jpg) ![](/images/image2.jpg)
![](/images/image3.jpg) ![](/images/image4.jpg)

效果:

完整效果可见我的博文

Flog 使用以下组件

License

本项目使用MIT License许可开源。

flog's People

Contributors

frostming avatar dependabot-support avatar davshen avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.