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

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

背景

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

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

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

产品介绍

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

核心功能点:

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

放产品一些截图:

主页

注册

首页

收藏

技术点

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

网页端

网页端收藏夹主页

收藏快捷图标

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

前端

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

持久层

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

session

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

其它

使用grade做为项目的构建工具、使用了一点webjarsvuejsJsoupScheduled

客户端

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

未来计划做的内容

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

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

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

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

产品主页

产品地址
源码地址


作者:纯洁的微笑
出处:http://www.ityouknow.com/
版权所有,欢迎保留原文链接进行转载:)

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

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

    原文出处: 纯洁的微笑 在信息爆炸时代,如何避免持续性信息过剩,使自己变得专注而不是被纷繁的信息所累?每天会看到各种各样的新闻,各种新潮的技术层出不穷,如何筛选出自己所关心的? 各位看官会想,我们是来 ...

  2. spring boot实战(第一篇)第一个案例

    版权声明:本文为博主原创文章,未经博主允许不得转载.   目录(?)[+]   spring boot实战(第一篇)第一个案例 前言 写在前面的话 一直想将spring boot相关内容写成一个系列的 ...

  3. Spring Boot 实战 —— MyBatis(注解版)使用方法

    原文链接: Spring Boot 实战 -- MyBatis(注解版)使用方法 简介 MyBatis 官网 是这么介绍它自己的: MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过 ...

  4. spring boot实战(第十三篇)自动配置原理分析

    前言 spring Boot中引入了自动配置,让开发者利用起来更加的简便.快捷,本篇讲利用RabbitMQ的自动配置为例讲分析下Spring Boot中的自动配置原理. 在上一篇末尾讲述了Spring ...

  5. spring boot实战(第十二篇)整合RabbitMQ

    前言 最近几篇文章将围绕消息中间件RabbitMQ展开,对于RabbitMQ基本概念这里不阐述,主要讲解RabbitMQ的基本用法.Java客户端API介绍.spring Boot与RabbitMQ整 ...

  6. RabbitMQ与Spring的框架整合之Spring Boot实战

    1.RabbitMQ与Spring的框架整合之Spring Boot实战. 首先创建maven项目的RabbitMQ的消息生产者rabbitmq-springboot-provider项目,配置pom ...

  7. 《Spring Boot实战》笔记(目录)

    目录 目 录第一部分 点睛Spring 4.x第1 章 Spring 基础 .............................................................. ...

  8. Spring Boot实战:集成Swagger2

    一.Swagger简介 上一篇文章中我们介绍了Spring Boot对Restful的支持,这篇文章我们继续讨论这个话题,不过,我们这里不再讨论Restful API如何实现,而是讨论Restful ...

  9. 《spring boot 实战》读书笔记

    前言:虽然已经用spring boot开发过一套系统,但是之前都是拿来主义,没有系统的,全面的了解过这套框架.现在通过学习<spring boot实战>这本书,希望温故知新.顺便实现自己的 ...

随机推荐

  1. 漫扯:从polling到Websocket

    Http被设计成了一个单向的通信的协议,即客户端发起一个request,然后服务器回应一个response.这让服务器很为恼火:我特么才是老大,我居然不能给小弟发消息... 轮询 老大发火了,小弟们自 ...

  2. 小白解决CENTOS7错误:Cannot find a valid baseurl for repo: base/7/x86_6

    刚入手的MacBook想着学点东西,本汪还是决定玩玩CentOS服务器,安装好了VirtualBox + CentOS. 打开一看,懵逼了!命令行! 行吧,先装个图形界面: $sudo yum gro ...

  3. C#基础篇 - 正则表达式入门

    1.基本概念 正则表达式(Regular Expression)就是用事先定义好的一些特定字符(元字符)或普通字符.及这些字符的组合,组成一个“规则字符串”,这个“规则字符串”用来判断我们给定的字符串 ...

  4. .NET Core的日志[5]:利用TraceSource写日志

    从微软推出第一个版本的.NET Framework的时候,就在“System.Diagnostics”命名空间中提供了Debug和Trace两个类帮助我们完成针对调试和跟踪信息的日志记录.在.NET ...

  5. JavaScript动画-磁性吸附

    ▓▓▓▓▓▓ 大致介绍 磁性吸附是以模拟拖拽为基础添加一个拖拽时范围的限定而来的一个效果,如果对模拟拖拽有疑问的同学请移步模拟拖拽. 源代码.效果:点这里 ▓▓▓▓▓▓ 范围限定(可视区) 先来看一个 ...

  6. Entity Framework 手动使用migration里面的up 和down方法。

    add-migration -IgnoreChanges 201606100717405_201606100645298_InitialCreate 执行这一句后 ,清空使用map生成的代码,个人不太 ...

  7. bcp 命令实例

    set sql_flow="select Id,',',ApplierName,',',FlowStatus,',',IsApproved,',',CreateTime from *** w ...

  8. const let,console.log('a',a)跟console.log('a'+a)的区别

    const 创建一个只读的常量 let块级作用域 const let重复赋值都会报错 console.log('a',a) a console.log('a'+a) a2 逗号的值会有空格:用加号的值 ...

  9. 微信小程序二维码推广统计

    微信小程序可以通过生成带参数的二维码,那么这个参数是可以通过APP的页面进行监控的 这样就可以统计每个二维码的推广效果. 今天由好推二维码推出的小程序统计工具HotApp小程序统计也推出了带参数二维码 ...

  10. myrocks复制中断问题排查

    背景 mysql可以支持多种不同的存储引擎,innodb由于其高效的读写性能,并且支持事务特性,使得它成为mysql存储引擎的代名词,使用非常广泛.随着SSD逐渐普及,硬件存储成本越来越高,面向写优化 ...