ivqBlog 开源博客 (angularjs + express + mongodb)
转向做全职前端差不多一年的时间了,其中学习了构建工具grunt,gulp,angularjs,coffeescript,less,sass,自己想要做全栈开发,所以自学了mongodb,nodejs,express后端开发。
这个博客是对前段时间的学习做一个总结,整理需求,架构,开发,测试,部署大概花了一个半月的时间,代码水平是入门级别。
线上地址:http://www.ivqblog.com/
项目源码:https://github.com/TerryChenUI/ivqBlog
系统环境和部署
环境版本:
NodeJS:v0.12.2
Express:4.0
MongoDB:3.04
bower:1.72
gulp:3.9
安装:
MongoDB官网下载后,修改ivqBlog\scripts\mongodb目录下的配置项,安装MongoDB服务并启动。
创建ivqBlog数据库,创建users数据表,并且导入ivqBlog\db\users.json数据,账号和密码都为admin。
webui和www目录下执行npm run prebuild安装相关包。(若相关的包安装失败,请将它删掉再重新安装。gulp-sass总是安装失败,有解决办法请指教)
启动:
在webui目录下执行gulp命令即可启动项目。
项目架构
本项目采用前后端开发分离的方式。根据gulp任务配置,会将webui编译到www目录下,分为开发版本和产品版本。
组件开发,模块包含模板html,sass样式,js脚本,单元测试spec,自动化测试等。
任务配置
具体可查看build相关配置。
dev:
copy
编译sass文件为css
编译模板文件html为angularjs模块
动态为index.html,admin/index.html,admin/login.html 注入css文件,js文件
prod:
copy
编译sass文件为css
合并并压缩css和js
编译模板文件html为angularjs模块
动态为index.html,admin/index.html,admin/login.html 注入css文件,js文件
default:
dev
nodemon启动express
watch sass,html,js文件
browser-sync,设置proxy端口与express的保持一致,自动打开浏览器
debug:
dev
watch sass,html,js文件
browser-sync,设置proxy端口与express的保持一致,自动打开浏览器
身份验证
nodejs使用jwt-simple生成token输出到客户端,根据这个token作身份验证,相关使用请查看以下链接。
http://www.sitepoint.com/using-json-web-tokens-node-js/
https://www.npmjs.com/package/jwt-simple
https://cnodejs.org/topic/53c652bfc9507b404446ee40
调试
使用webstrom调试nodejs,如下图配置,执行gulp debug即可调试。
ivqBlog 开源博客 (angularjs + express + mongodb)的更多相关文章
- 基于Node.js的ghost开源博客平台
Ghost 是一套基于Node.js 构建的开源博客平台(Open source blogging platform),具有易用的书写界面和体验. 1.安装node windows 下安装npm:ht ...
- 《开源博客Q群》和《NET上海Q群》入群须知
开源博客Q群 群名:<嗨-博客> 群号:469075305(已满) 491585006(New) 群简介:“我们每个猿都有一个搭建自己独立博客的梦”. 入群要求: 您可以是HR,私聊管理员 ...
- Java 开源博客——B3log Solo 0.6.6 正式版公布了!
Java 开源博客 -- B3log Solo 0.6.6 正式版公布了!欢迎大家下载. 该版本号引入了数据库连接池:Druid. 另外,欢迎观摩 B3log 团队的新项目:Noty,也很欢迎大家參与 ...
- Java 开源博客——B3log Solo 0.6.7 正式版公布了!
Java 开源博客 -- B3log Solo 0.6.7 正式版公布了!欢迎大家下载. 另外,欢迎观摩 B3log 团队的新项目:Wide,也很欢迎大家參与进来 :-) 特性 基于标签的文章分类 P ...
- Java 开源博客——B3log Solo 0.6.1 正式版发布了!
Java 开源博客 —— B3LOG Solo 0.6.1 正式版发布了!欢迎大家下载. 该版本主要是改善细节体验,并加入了一款 Metro 风格的皮肤. 特性 基于标签的文章分类 Ping Goog ...
- Java开源博客My-Blog(SpringBoot+Docker)系列文章
My Blog 1.Docker+SpringBoot+Mybatis+thymeleaf的Java博客系统开源啦 2.My-Blog搭建过程:如何让一个网站从零到可以上线访问 3.将数据的初始化放到 ...
- Java 开源博客 Solo 1.9.0 发布 - 新皮肤
这个版本主要是改进了评论模版机制,让大家更方便皮肤制作,并发布了一款新皮肤:9IPHP. Solo 是一款一个命令就能搭建好的 Java 开源博客系统,并内置了 15+ 套精心制作的皮肤.除此之外,S ...
- Go 开源博客平台 Pipe 1.0.0 发布!
这是 Pipe 博客平台的第一个正式版,欢迎大家使用和反馈建议! 简介 Pipe 是一款小而美的开源博客平台,通过黑客派账号登录即可使用. 动机 产品层面: 市面上缺乏支持多独立博客的平台级系统 实现 ...
- Java 开源博客 Solo 2.5.0 发布
Java 开源博客 Solo 2.5.0 发布 Solo 是一款一个命令就能搭建好的 Java 开源博客系统,如果你想开个独立博客,请一定不要错过! 2.5.0 版本主要支持了 Markdown/JS ...
随机推荐
- Visual Studio 2013 新功能 Memory Dump 分析器
本文为 Dennis Gao 原创技术文章,发表于博客园博客,未经作者本人允许禁止任何形式的转载. TechEd2013 发现新功能 12月5日和6日,在国家会议中心参加了微软的 TechEd2013 ...
- 深入理解java虚拟机【Java Class类文件结构】
Java语言从诞生之时就宣称一次编写,到处运行的跨平台特性,其实现原理是源码文件并没有直接编译成机器指令,而是编译成Java虚拟机可以识别和运行的字节码文件(Class类文件,*.class),字节码 ...
- jpa 注解使用说明
1.@Entity(name="EntityName") 必须,name为可选,对应数据库中一的个表 2.@Table(name="",catalog=&quo ...
- Mac系统下lipo, ar, nm等工具的使用简介
引言 开发第三方库时, 如果没有进行特殊处理, 很容易把其他第三方库的符号暴露出来, 导致链接时产生符号重复. 如下图所示 如果用户链接了其他版本的libjpeg, 会因为入口地址不正确让程序直接崩溃 ...
- 深入浅出OOP(三): 多态和继承(动态绑定/运行时多态)
在前面的文章中,我们介绍了编译期多态.params关键字.实例化.base关键字等.本节我们来关注另外一种多态:运行时多态, 运行时多态也叫迟绑定. 运行时多态或迟绑定.动态绑定 在C#语音中,运行时 ...
- 使用Swift代码演示Cocoa框架
通过使用简单的代码学习Cocoa框架,每一个例子都通过代码和StoryBoard实现,并且总结他们的各自特点 所有完整代码将会托管到github库,https://github.com/land-pa ...
- Emmet语法预览
Emmet 是一个能提高前端开发效率的编辑器插件,支持 Sublime,Atom,TextMate,Nodepad++ 等主流编辑器.Emmet 定义了一些缩写,当我们输入缩写代码后,按展开键(默认是 ...
- atitit.RESTful服务的概览and框架选型
atitit.RESTful服务的概览and框架选型 1. REST基础概念: 1 2. URL说明: 1 3. 1 4. RESTful框架选型 2 1. spring mvc( recomm) ...
- VS2015 ASP.NET5 Web项目结构浅析
前言 本文个人同步博客地址http://aehyok.com/Blog/Detail/76.html 个人网站地址:aehyok.com QQ 技术群号:206058845,验证码为:aehyok 本 ...
- Initializing a collection
Before Java 1.7, only this one is permitted: ArrayList<String> a = new ArrayList<String> ...