社区系统 Nodeclub​ 的二次开发 Pinclub

码农软件 · 软件分类 · 论坛系统BBS · 2020-01-22 23:41:57

软件介绍

介绍

Pinclub 是基于 Nodeclub 进行的二次开发. 增加了瀑布流展示方式, 主要参考花瓣网的设计风格(感谢花瓣网的设计师和前端工程师的辛勤工作), 加入了hanming距离的算法, 当然是在mongodb中使用了 function 的形式实现.

状态

Pinclub 目前处于开发阶段,尚未发布 Stable 版本.

图片相似度算法说明

在 Topic 模型中加入了 image 的相关属性值, 其中就包括 image_hash, 使用 imghash 模块生成了 16 bits 的二进制字符串.

在 Mongodb 中创建了一个 function 命名为 hammingDistance, 代码如下:

function (a, b) {
    if (typeof(a) === "undefined" || typeof(b) === "undefined") return 64;
    var aa = a.split("");
    var bb = b.split("");
    var count = 0;
    for (var i = 0; i < aa.length; i++) if (aa[i] !== bb[i]) count++;
        return count;
}

通过 mongo 命令行创建 Function

创建脚本:

db.system.js.save(
   {
     _id: "hammingDistance",
     value : function (a, b) {
                 if (typeof(a) === "undefined" || typeof(b) === "undefined") return 64;
                 var aa = a.split("");
                 var bb = b.split("");
                 var count = 0;
                 for (var i = 0; i < aa.length; i++) if (aa[i] !== bb[i]) count++;
                     return count;
             }
   }
)

Chrome 插件获取外部图片

如果目标网站做了引用保护,则无法完成图片的 Get 操作

插件下载地址 / Download Chrome plugin

插件应用商店地址 / Download Chrome plugin from web store

插件项目地址 / Plugin Project

TODO / How to Contribute

如果你想贡献一份力量, 请查看 TODO 列表

安装部署

不保证 Windows 系统的兼容性

线上跑的是 Node.js v4.4.0,MongoDB 是 v3.0.5,Redis 是 v3.0.3。

1. 安装 `Node.js[必须]` `MongoDB[必须]` `Redis[必须]`
2. 启动 MongoDB 和 Redis
3. `$ make install` 安装 Nodeclub 的依赖包
4. `cp config.default.js config.js` 请根据需要修改配置文件
5. `$ make test` 确保各项服务都正常
6. `$ node app.js`
7. visit `http://localhost:3000`
8. done!

API接口文档

使用 npm run apidoc 命令在本地生成文档后, 访问: http://localhost:3000/public/apidoc

截图

首页上传图片设置board图片box Get图片

关于 Nodeclub

Nodeclub 是使用 Node.js 和 MongoDB 开发的社区系统,界面优雅,功能丰富,小巧迅速, 已在Node.js 中文技术社区 CNode(http://cnodejs.org) 得到应用,但你完全可以用它搭建自己的社区。

测试(完善中)

跑测试

$ make test

跑覆盖率测试

$ make test-cov

贡献

Pinclub 可以联系 @hhdem

Nodeclub 有任何意见或建议都欢迎提 issue,或者直接提给 @alsotang

License

Pinclub is released under the MIT License. Have at it.

本文地址:https://www.codercto.com/soft/d/23979.html

Rust编程之道

Rust编程之道

张汉东 / 电子工业出版社 / 2019-1 / 128

Rust 是一门利用现代化的类型系统,有机地融合了内存管理、所有权语义和混合编程范式的编程语言。它不仅能科学地保证程序的正确性,还能保证内存安全和线程安全。同时,还有能与C/C++语言媲美的性能,以及能和动态语言媲美的开发效率。 《Rust编程之道》并非对语法内容进行简单罗列讲解,而是从四个维度深入全面且通透地介绍了Rust 语言。从设计哲学出发,探索Rust 语言的内在一致性;从源码分析入......一起来看看 《Rust编程之道》 这本书的介绍吧!

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具