jsGen是用纯JavaScript编写的新一代开源社区网站系统,主要用于搭建SNS类型的专业社区,对客户端AngularJS应用稍作修改也可变成多用户博客系统、论坛或者CMS内容管理系统。

jsGen基于NodeJS编写服务器端程序,提供静态文件响应和REST API接口服务;基于AngularJS编写浏览器端应用,构建交互式网页UI视图;基于MongoDB编写数据存储系统。

jsGen基本原理:客户端浏览器发起访问请求后,NodeJS服务器先响应由AngularJS编写的Web应用,这个应用是由html模板、js和css静态文件组成。客户端获取到AngularJS应用后,再由AngularJS与后台的NodeJS服务器API接口通信,根据用户请求交换数据,这些数据是纯粹json数据包,AngularJS获取到json数据包后再编译成相关页面展现给用户。因此,用户进入网站时,只需在首次载入视图模板(html、js、css),其后的所有请求都是纯json数据交换,不再包含html代码,大大减少了数据流量。

特点:
  1. 前沿的WEB技术,前所未有的网站构架形态,前端与后端完全分离,前端由 AngularJS 生成视图,后端由 Node.js 提供REST API数据接口和静态文件服务。只需改动前端AngularJS应用形态,即可变成论坛、多用户博客、内容管理系统等。

  2. 用户数据、文章评论数据、标签数据、分页缓存数据、用户操作间隔限时等都使用 LRU缓存 ,降低数据库IO操作,同时保证同步更新数据。

  3. 前后端利用 json 数据包进行数据通信。文章、评论采用 Markdown 格式编辑、存储,支持GitHub的GFM(GitHub Flavored Markdown),Markdown解析成HTML DOM并进行 XSS攻击 过滤由前端AngularJS应用完成。

  4. 用户帐号系统,关注(follow)用户/粉丝、邮箱验证激活、邮箱重置密码、SHA256加密安全登录、登录失败5次锁定/邮箱解锁、用户标签、用户积分、用户权限等级、用户阅读时间线等功能。用户首页展现用户关注标签、关注作者的相关的文章(即用户感兴趣的文章)。

  5. 文章/评论系统,文章、评论使用统一数据结构,均可被评论、支持、反对、标记(mark,即收藏),当评论达到一定条件(精彩评论)可自动提升为文章(独立出来,类branch功能),同样文章达到一定条件即可自动推荐。自动实时统计文章、评论热度,自动生成最新文章列表、一周内最热文章列表、一周内最热评论列表、最近更新文章列表。强大的文章、评论列表分页导航功能,缓存每个用户的分页导航浏览记录。

  6. 标签系统,文章和用户均可加标签,可设置文章、用户标签数量上限。用户通过标签设置自己关注话题,文章通过标签形成分类。标签在用户编辑个人信息或编辑文章时自动生成,自动管理,也可管理员后台管理。自动展现热门标签。

  7. 文章合集系统,作者、编辑、管理员可将一系列相关文章组成合集,形成有章节大纲目录的电子书形态。教程文档、主题合集甚至小说连载等均可由合集系统形成。(待完成)

  8. 站内短信系统,提供在文章、评论中 @用户的功能,重要短信发送邮件通知功能等。(待完成)

  9. 后台管理系统,网站参数设置、缓存设置、网站运行信息、文章、评论、用户、标签、合集、站内短信等管理。

  10. Robot SEO系统,由于AngularJS网页内容在客户端动态生成,对搜索引擎robot天生免疫。jsGen针对robot访问,在服务器端动态生成robot专属html页面。搜索引擎Robot名称可在管理后台添加。

说明

jsGen 是为AngularJS中文社区开发的网站系统,测试版已上线。 github地址:https://github.com/zensh/jsgen

<script type="text/javascript"> </script><script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>

社区网站系统 jsGen相关推荐

  1. 2014年最热门的国人开发开源软件TOP100

    2014年最热门的国人开发开源软件TOP100 不知道从什么时候开始,很多一说起国产好像就非常愤慨,其实大可不必.做开源中国六年有余,这六年时间国内的开源蓬勃发展,从一开始的使用到贡献,到推出自己很多 ...

  2. 热门的国人开发开源项目

    来源:开源中国 1. JFinal JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速.代码量少.学习简单.功能强大.轻量级.易扩展.Restful.在拥有 ...

  3. 2014 年最热门的国人开发开源软件 TOP 100 - 开源中国社区

    不知道从什么时候开始,很多一说起国产好像就非常愤慨,其实大可不必.做开源中国六年有余,这六年时间国内的开源蓬勃发展,从一开始的使用到贡献,到推出自己很多的开源软件,而且还有很多软件被国外的认可.中国是 ...

  4. 2014年国人开发的最热门的开源软件TOP 100

    摘要:不知道从什么时候开始,很多一说起国产好像就非常愤慨,其实大可不必.做开源中国六年有余,这六年时间国内的开源蓬勃发展,从一开始的使用到贡献,到推出自己很多的开源软件,而且还有很多软件被国外的认可. ...

  5. 2014 年最热门的国人开发开源软件 TOP 100

    不知道从什么时候开始,很多一说起国产好像就非常愤慨,其实大可不必.做开源中国六年有余,这六年时间国内的开源蓬勃发展,从一开始的使用到贡献,到推出自己很多的开源软件,而且还有很多软件被国外的认可.中国是 ...

  6. 开源软件 TOP 100

    2014 年最热门的国人开发开源软件 TOP 100  电脑网络  小K  1年前 (2015-01-20)  1378浏览  0评论 不知道从什么时候开始,很多一说起国产好像就非常愤慨,其实大可不必 ...

  7. 中文热门开源项目Top100,你知道多少?

    http://www.open-open.com/news/view/74dbf4/ http://www.open-open.com/news/view/74dbf4/ http://www.ope ...

  8. 2014 top100

    下面是 TOP 100 的软件列表: 1. JFinal JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速.代码量少.学习简单.功能强大.轻量级.易扩展. ...

  9. 国人开发开源软件TOP100

    TOP 100 的国产开源软件列表: (里面有cocos2d-x.pomelo.CrossApp等...) 1. JFinal JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其 ...

最新文章

  1. jsp调试java_调试从Tomcat(JSP)运行的Java程序
  2. Silverlight 游戏开发小技巧:角色升级特效
  3. Realm Mobile Platform添加水平可扩展性,支持遗留数据源和复制
  4. 理解 Cinder 架构 - 每天5分钟玩转 OpenStack(45)
  5. 跟踪Makefile输出调试信息
  6. 30可以刷什么系统_刷脸支付系统可以对接原来的收银系统吗?
  7. python与正则表达式(part4)--正则表达式分组
  8. 没有内存条电脑能开机吗_电脑没内存条能开机吗?这位朋友说他的电脑没内存条都用几年了!...
  9. struts2文件上传中,如何限制上传的文件类型
  10. android 百度map 一个layout加载多个mapview,android 百度地图API 使用Marker和InfoWindow
  11. 为什么大部分的婚姻都是凑合?数据告诉你真相
  12. 使用libjpeg进行JPEG图像解码
  13. 创建设计模式 - Builder设计模式
  14. C#应用视频教程3.4 Halcon+C#测试
  15. 情人节程序员用HTML网页表白【时光不老,我们不散love520】 HTML5七夕情人节表白网页源码 HTML+CSS+JavaScript
  16. Mac系统添加MySQL配置文件
  17. SpringBoot(30) 整合PageOffice实现在线编辑Word和Excel
  18. 嵌入式开发日记(3)——利用Python接收并处理JY61传感器数据
  19. java8 foreach 异常_在java 8流foreach中抛出异常
  20. 什么是 P2P、P2C 、O2O 、B2C、B2B、 C2C

热门文章

  1. 计算机相关美文摘抄,值得摘抄的好文章,好文章摘抄大全
  2. 微型计算机逻辑元件有哪些,目前普遍使用的微型计算机所采用的逻辑元件有哪些...
  3. 递推算法6——逆推法之存取问题
  4. genicam 相机java,机器视觉必知-GenICam相机通用接口标准
  5. 国产半导体设备多年沉淀终爆发!2020制程、测试、硅片设备全面开花
  6. c语言中对用户乱输入信息处理,C语言程序设计教程 第06章.ppt
  7. Nowcoder java-二维数组中的查找
  8. java生成word报告echart_Java这几个用 Pyecharts 做出来的交互图表,领导说叼爆了!...
  9. 计算机桌面体验,平板电脑Aero桌面体验
  10. 外箱条码标签如何用条码标签编辑软件制作?