原文出处: 纯洁的微笑

在信息爆炸时代,如何避免持续性信息过剩,使自己变得专注而不是被纷繁的信息所累?每天会看到各种各样的新闻,各种新潮的技术层出不穷,如何筛选出自己所关心的?

各位看官会想,我们是来看开源软件的,你给我扯什么信息干嘛,别着急,听我慢慢道来。

背景

浏览器收藏夹应该是我们在收藏文章、网站的第一个利器,平时遇到喜欢的网站或者文章很方便的收藏到收藏夹中;很快我们的收藏夹就满了,于是就像我这样,创建文件夹来分组两层、三层都有:

有的也会借助百度首页导航这样的一些功能来整理自己收藏的网站,以前我记得QQ还有一款产品叫做网络收藏夹,用过一段时间,后来QQ也把这款产品给淘汰了;也尝试了去用印象笔记、有道笔记这些产品,这些产品都偏向收藏一些具体的文章或者自己整理的日志信息方面。

当浏览器收藏夹收藏的网站或者文章在一百份以内的时候收藏和查找问题都不是特别大。当收藏大于1000份的时候,去查找自己收藏的内容绝对是个体力活,另外还有一些文章我仅仅只是暂时保存下来,准备随后找时间看看就行,也需要收藏、整理、删除的时候就很麻烦。

产品介绍

于是在这样的背景下,我就想着需要做这么一款产品,可以方便随时随地的收藏我喜欢的文章或者网站,方便整理,我日后需要的时候非常方便的去检索,另外如果可以的话,我是否可以分享我自己收藏的文章或者网站,同时也可以看看大牛们或者是同行都收藏了什么文章我是否感兴趣,于是就开发了这么一款产品:云收藏

核心功能点:

  • 收藏、分类、检索文章
  • 导出、导出(包活从浏览器中)
  • 可以点赞、分享、讨论
  • 注册、登录、个人账户
  • 临时收藏、查看别人收藏
  • 其它…

放产品一些截图:

主页

注册

首页

收藏


技术点

这段时间我们团队主要在学习spring boot,这个开源项目也就成了我们的练习新技术的一个非常好的产品,主要的技术都是和spring boot相关,可以参考我以前文章 spring boot系列文章

网页端

网页端收藏夹主页

收藏快捷图标

这个是收藏的最关键一步,一段js代码,拖入到浏览器的收藏夹,每次点击收藏的时候负责读取网站的title、描述、网址等信息,并且提交到收藏的页面。

前端

前端页面由Angle – Bootstrap Admin theme这套主题改造而来;模版引擎使用了thymeleaf,可以参考这篇文章:springboot(四):thymeleaf使用详解

持久层

数据库主要使用了 Spring data jpa模版来实现,可以参考这篇文章:springboot(五):spring data jpa的使用

session

session使用持久化技术来保存登录状态,登录一次保持需要会话30天,主要是依赖redis来实现,参考:springboot(三):Spring boot中Redis的使用

其它

使用grade做为项目的构建工具、使用了一点webjars、vuejs、Jsoup、Scheduled …

客户端

客户端技术使用react native来开发安卓和IOS的app,目前还在开发中,完成之后也会开源出来。

未来计划做的内容

这个开源产品暂时只是开源了我们web端产品,安卓端、IOS端内容的开发还在进行中。

未来我们还会持续的来完善这些产品,做一些有意思的小功能,以下可能是我们近期准备要做的

  • 可以自定义个人收藏页面
  • 无登录可以查看热门收藏内容
  • 首页展示热门收藏家
  • 小纸条
  • 智能推荐
  • 其它…

大家有什么更好玩想法,也可以在建议给我们

产品主页

产品地址
源码地址

SpringBoot实战:我们的第一款开源软件的更多相关文章

  1. spring boot 实战:我们的第一款开源软件

    在信息爆炸时代,如何避免持续性信息过剩,使自己变得专注而不是被纷繁的信息所累?每天会看到各种各样的新闻,各种新潮的技术层出不穷,如何筛选出自己所关心的? 各位看官会想,我们是来看开源软件的,你给我扯什 ...

  2. 2016年开源软件排名TOP50,最受IT公司欢迎的50款开源软件

    2016年开源软件排名TOP50,最受IT公司欢迎的50款开源软件 过去十年间,许多科技公司已开始畅怀拥抱开源.许多公司使用开源工具来运行自己的 IT 基础设施和网站,一些提供与开源工具相关的产品和服 ...

  3. 最受IT公司欢迎的50款开源软件

    文章来自:云头条编译 本文介绍了多款知名的开源应用软件,科技公司可以用它们来管理自己的 IT 基础设施.开发产品. 过去十年间,许多科技公司已开始畅怀拥抱开源.许多公司使用开源工具来运行自己的 IT ...

  4. 具有可视化的功能的一款开源软件Gource

    今天为大家介绍一个非常有趣儿的开源软件,Gource可以将代码版本控制系统里面的日志全部可视化,也就是说可以看见每个成员在系统里面提交代码的行为,Gource目前支持git,hg,svn. 650) ...

  5. 一款开源Office软件---Lotus Symphony在Linux系统下的应用

    点击下载观看试用录像   Linux系统下的办公软件有OpenOffice.永中Office.红旗Red Office.金山Wps Office及StarOffice等,今天我为大家介绍IBM推进军O ...

  6. 微软、谷歌、亚马逊、Facebook等硅谷大厂91个开源软件盘点(附下载地址)

    开源软件中有大量专家构建的代码,大大节省了开发人员的时间和成本,热衷于开源的大厂们总是能够带给我们新的惊喜.2016年9月GitHub报告显示,GitHub已经有超过 520 万的用户和超 30 万的 ...

  7. 2015年度新增开源软件排名TOP100

    2015年度新增开源软件排名TOP100 本榜单包含2015年开源中国新收录的软件中,根据软件本身的关注度.活跃程度进行排名前100名的软件.从这份榜单中或许可以了解到最新业界的趋势. 1.Switc ...

  8. 2015 年度新增开源软件排名TOP100

    本榜单包括 2015 年开源中国新收录的 5977 款开源软件中,依据软件本身的关注度.活跃程度进行排名前 100 名的软件.从这份榜单中也许能够了解到最新业界的趋势. 1.SwitchyOmega ...

  9. 开源中国 2014 最受关注开源软件排行榜 TOP 50

    开源中国 2014 最受关注开源软件排行榜 TOP 50 开源中国 2014 年最受关注软件排行榜 TOP 50 正式出炉!2014 年结束了,我们来了解一下过去一年里开源中国最受欢迎的 50 款软件 ...

随机推荐

  1. [BUAA OO]第二次博客作业

    第五次作业 这次作业是电梯系列作业的终极版,要求是使用多线程实现三部电梯的运行.这次作业的难点在于第一次运用多线程技术,对于线程中的行为并不了解,以及电梯功能的实现(如果之前作业采取的是扫描指令队列预 ...

  2. VANET

    VANET知识 VANET与普通网络相比,与IOV的区别: VANET中Greedy Routing:基于距离(GPSR):基于速度和角度:基于道路层(TDR): Repair Strategy:Fa ...

  3. 代码上传不到github远程仓库的经历和总结

    第二次的作业是分布式版本控制系统Git的安装与使用.一切都好端端地进行,知道最后的上传到给远程仓库时一直都上传失败.舍友也过来调试和助教的指导,依然不成功.我也上网进行了大量的翻查资料也未能成功.这是 ...

  4. 简单Profibus/DP实验系统的组建

    转自:http://www.dndev.com/Profibus/profibustr/system_4.html 引言: 为了让更多刚接触到Profibus系统的朋友能对Profibus的网络架构及 ...

  5. T4模板_T4基本结构

    T4文本模板由 指令块.文本块.控制块 组成. 一. 指令块(MSDN文本模板指令) 指令块以@开头,基本的指令块包括<#@ template #> .<#@ parameter# ...

  6. 关于jsonp知识的理解

    jsonp 之前知道是用来解决ajax跨域的问题,但是其本质的原理,还是不清楚. 所以看了一下. js的script 的src里面的连接是可以跨域的,所以可以通过她来实现跨域资源获取. 但是也需要后端 ...

  7. 获取ios设备的udid

    今天get的第二个技能~~~ UDID指的是设备的唯一设备识别符,ipa包未上架之前如果不添加udid是无法安装成功的.那么如何快速获取ios设备的udid呢? 今天get的方法是用蒲公英,网址:ht ...

  8. loadrunner在win10破解提示:Cannot save the license information because acceses to the registry is denied的解决办法

    方法1 下图1-1中提示就是说明了破解的时候权限不足导致,解决办法就是使用管理员权限打开loadrunner破解就好了,但是右键“以管理员身份运行”选项打开loadrunner又是会提示1-2中的问题 ...

  9. QT源码解析(七)Qt创建窗体的过程,作者“ tingsking18 ”(真正的创建QPushButton是在show()方法中,show()方法又调用了setVisible方法)

    前言:分析Qt的代码也有一段时间了,以前在进行QT源码解析的时候总是使用ue,一个函数名在QTDIR/src目录下反复的查找,然后分析函数之间的调用关系,效率实在是太低了,最近总结出一个更简便的方法, ...

  10. 利用ZooKeeper简单实现分布式锁

    1.分布式锁的由来: 在程序开发过程中不得不考虑的就是并发问题.在java中对于同一个jvm而言,jdk已经提供了lock和同步等.但是在分布式情况下,往往存在多个进程对一些资源产生竞争关系,而这些进 ...