• Stars
    star
    658
  • Rank 68,043 (Top 2 %)
  • Language Vue
  • License
    zlib License
  • Created almost 9 years ago
  • Updated over 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

🕊️ An opensource community/forum project write with python3 aiohttp and vue.js. 一个开源的社区程序,临时测试站:https://t.myrpg.cn

Icarus

A opensource forum project write with python3 and vue.js

更多截图(旧版)

2.0分支开发中,路线图见此

注意

目前的master分支已经合并了2.0部分内容,实际上等价于1.3的SSR版本。

此分支将暂时不再添加新的功能,只做BUG维护。功能的开发将在2.0分支进行。

这个版本就不单独release了,如有bug请及时反馈,谢谢。

如何部署

内容较多,详见部署文档

开源协议

ZLIB

免费且商业友好,这个协议基本上和MIT相同。

特性

  • 全局

    • 文件上传(七牛云)

    • 超宽屏支持

    • 简易的移动端支持

    • 实时在线人数

    • Markdown发帖和评论

    • 包含主题、评论、百科内容的全文搜索(基于Elasticsearch)

  • 用户系统

    • 注册、登录

    • 邮件激活

    • 邮箱找回密码

    • 修改个人信息

    • 上传头像(七牛云)

    • 每日签到

    • 个人提醒

  • 论坛

    • 扁平化的内容展示

    • 创建和管理板块

    • 板块主题颜色

    • 发表和编辑主题

    • 文章页自动生成快捷导航

    • @功能

  • 百科

    • 自定义侧边栏和主页

    • 文章的创建和编辑

    • 全部文章列表

    • 文章历史

    • 随机页面

  • 管理后台

    • 提供对板块、主题、用户、评论的管理

    • 管理日志

  • 安全机制

    • 前端密码加密,后端不取得用户的初始密码,最大限度降低了中间人攻击和数据库泄露的危害

    • 后端二次加密,sha512加盐迭代十万次后储存用户密码

    • 密码相关API均有防爆破,可设置IP请求间隔和账号请求间隔,分别提升批量撞库和单点爆破的难度

    • 隐私数据,例如IP地址脱敏后才可存入数据库

升级指南

首先停止服务并更新源码。

然后请寻找 backend/misc/upgrade 目录下对应的升级文件,例如1.2升级1.3使用u12-u13.py

backend 目录下执行后删除即可。

注意如果使用了 pipenv 或其他虚拟环境,要在项目对应环境中完成这个操作。

然后分别升级前端项目(根目录)和后端项目(backend目录)的项目依赖。

如该版本无特别的升级说明,此时直接重新开启服务即可。

规划

由于空闲时间有限,而且是单枪匹马做整个项目的开发。

目前的版本还有一些不完善的地方以及缺少的功能来不及完成,姑且规划如下:

近期:

  • 收藏、感谢、点赞

  • 个人中心

  • 强化移动端体验

  • 支持用户对评论进行自删和编辑等操作

后续:

  • 多终端同时登录的支持

  • 支持第三方登录

  • 搭建独立的项目站点

  • RSS支持

  • 完善tests

捐赠

在开发这个项目的过程中,我付出了大量的时间和精力。希望这个项目能对大家所有帮助,或者你们能够喜欢这个项目。

这对我来说已经是很好的肯定,请务必点个star让我知道。

也欢迎以捐助的形式来支持我的开发:

微信

More Repositories

1

fpage

Tornado project generator. Start a project with tornado, mako/jinjia2 and sqlalchemy/peewee in a minute.
Python
234
star
2

EasySelect

爬虫工具:一个Chrome插件,让你根据页面元素快速获取可读可维护的 CSS 选择器。 A chrome extension, let you get readable & maintainable css selector from elements.
JavaScript
93
star
3

tinyre

A light fork of python's regex engine (but slow, ~3k lines).
C
78
star
4

python_lite

[WIP] A simple, lightweight implementation of python3 language.
C
77
star
5

slim

[WIP] web framework provides instant restful api for sql table.
Python
43
star
6

unity-tskit

Unity JavaScript脚手架,使用puerts,集成FairyGUI并预置一个脚本框架
C#
29
star
7

myctf

A ctf competition program.
Python
27
star
8

miniblink-go-example

借助 cgo 对 miniblink 进行绑定
JavaScript
23
star
9

simple_avatar

Use first character to generate avatar.
Python
20
star
10

fairygui-puerts-unity

fairygui插件,用于在unity+puerts场景接入fairygui
JavaScript
20
star
11

nuxt-example-project-like-vue-cli3

Vue
13
star
12

godot-doc-cn

godot 中文文档
Python
12
star
13

miniblink-simple-demo

使用miniblink中各种常见需求的单文件demo,例如创建窗口,JS/CPP互调,无边框窗口拖动,根据exe文件图标设置窗口图标,最大化/最小化,获取窗口句柄,只允许单实例等等
C++
10
star
14

chat

A chatroom with tornado
HTML
8
star
15

storynote

simple markdown blog made by tornado and vue.js demo: http://fy0.me
Python
7
star
16

pycrud

A common crud framework for web.
Python
5
star
17

syncopy

Sync files from directory src to directory dest, skip same files and preserve all timestamps.
Go
5
star
18

XGPush-SDK-fy

腾讯信鸽(Xinge)推送 SDK 修改版,支持了py3,使用ujson代替json,requests代替httplib和urllib
Python
4
star
19

tornado-sphinx

Show search results for sphinx2.
Python
3
star
20

web-toolbox

3
star
21

IMGFont

使用 lua 脚本来控制参数的字库生成工具,字体部分基于 freetype。
C
3
star
22

ctftools

Python
2
star
23

fjnu-scs-navipages

-
2
star
24

qiniu-lite

一个轻量级的七牛SDK. A lightweight Qiniu Python SDK.
Python
2
star
25

my-object-id

A simple module for generate Mongodb ObjectID. Written in python.
Python
2
star
26

a5ime

IME support for Allegro 5.
C++
1
star
27

baidu-push

百度云推送 API
Python
1
star
28

compact_string

Flexible String Implementation for C99 (fixed-length coding)
C
1
star
29

socks5-tool

A very simple socks5 server tool
Go
1
star