AI驱动的轻量级笔记应用Blinko

什么是 Blinko ?
Blinko是一个创新的开源项目,专为想要快速捕捉和整理瞬间想法的个人而设计。Blinko允许用户在灵感迸发的瞬间无缝记录想法,确保不会错过任何创意火花。
Blinko 的设计初衷是让笔记记录变得更简单,让用户专注于内容本身,而不会被繁琐的管理任务所困扰。Blinko 帮助用户轻松捕捉和管理他们的想法,设计上分为两个核心部分:“闪念” 和 “笔记” 。
“闪念” 专为记录灵光一闪而打造,用户无需担心格式或复杂操作,即可即刻记下即兴想法。这些记录可设置为每隔一段时间自动清除,确保内容不会过度堆积,从而保持该部分的整洁和高效。
“笔记” 部分提供了更有条理的管理系统,用户可以使用标签对笔记进行分类,并利用批量操作轻松地组织和分类大量笔记。
🚀主要功能:
-  
AI 增强的笔记检索 🤖:借助
Blinko的先进AI驱动的RAG(检索增强生成)技术,您可以使用自然语言查询快速搜索和访问您的笔记,轻松找到所需内容。 -  
数据拥有权 🔒:您的隐私至关重要。所有笔记和数据都安全存储在您自托管的环境中,确保您对信息的完全控制。
 -  
高效快速 🚀:即时捕捉想法,并以纯文本形式存储,方便访问,完全支持
Markdown格式,便于快速格式化和无缝共享。 -  
轻量架构,强大性能 💡:基于
Next.js构建,Blinko提供流畅、轻量的架构,具备强大的性能,同时不牺牲速度或效率。 -  
开放协作 🔓:作为一个开源项目,
Blinko欢迎社区的贡献。所有代码透明且可在GitHub上获取,促进合作精神和持续改进。 -  
完全免费 🎉:
Blinko是且将始终是免费的,没有隐藏费用或锁定在付费墙后的高级功能。 

如果不想安装,可以去看看官方的 Live Demo
- 地址:https://blinko-demo.vercel.app
 - 账号:
blinko - 密码:
blinko 
安装
在群晖上以 Docker 方式安装。
本文写作时,
latest版本对应为0.0.26;
采用 docker-compose 安装,将下面的内容保存为 docker-compose.yml 文件
version: '3'services:blinko-website:image: blinkospace/blinko:latestcontainer_name: blinko-website# restart: unless-stoppedenvironment:NODE_ENV: production# NEXTAUTH_URL: http://localhost:1111# NEXT_PUBLIC_BASE_URL: http://localhost:1111NEXTAUTH_SECRET: my_ultra_secure_nextauth_secretDATABASE_URL: postgresql://postgres:mysecretpassword@postgres:5432/postgresdepends_on:postgres:condition: service_healthy# Make sure you have enough permissions.volumes:- ./data:/app/.blinko restart: alwayslogging:options:max-size: "10m"max-file: "3"ports:- 1111:1111healthcheck:test: ["CMD", "curl", "-f", "http://localhost:1111/"]interval: 30s timeout: 10s   retries: 5     start_period: 30s postgres:image: postgres:14container_name: blinko-postgresrestart: always# ports:#   - 5435:5432volumes:  - ./db:/var/lib/postgresql/dataenvironment:POSTGRES_DB: postgresPOSTGRES_USER: postgresPOSTGRES_PASSWORD: mysecretpasswordTZ: Asia/Shanghaihealthcheck:test:["CMD", "pg_isready", "-U", "postgres", "-d", "postgres"]interval: 5stimeout: 10sretries: 5
 
- 容器 
blinko-postgres的环境变量 
| 可变 | 值 | 
|---|---|
POSTGRES_DB | 指定要创建的数据库名称 | 
POSTGRES_USER | 定义 PostgreSQL 数据库的用户名 | 
POSTGRES_PASSWORD | 设置用于连接 PostgreSQL 数据库的密码 | 
TZ | 设置时区 | 
- 容器 
blinko-website的环境变量 
| 可变 | 值 | 
|---|---|
NODE_ENV | 设置 Node.js 的运行环境。通常设为 production 用于生产环境 | 
NEXTAUTH_URL | 指定 NextAuth.js 的回调 URL,用于处理身份验证。在生产环境中应更改为实际域名 | 
NEXT_PUBLIC_BASE_URL | 公开的基础 URL,客户端可以访问,用于构建 API 请求的基础路径。在生产环境中也应设置为实际域名 | 
NEXTAUTH_SECRET | 设置用于加密会话和生成 JWT 的秘密字符串 | 
DATABASE_URL | 定义数据库连接字符串,用于连接 PostgreSQL 数据库。格式为 postgresql://用户名:密码@主机:端口/数据库名 | 
然后执行下面的命令
# 新建文件夹 blinko 和 子目录
mkdir -p /volume1/docker/blinko/{data,db}# 进入 blinko 目录
cd /volume1/docker/blinko# 将 docker-compose.yml 放入当前目录# 一键启动
docker-compose up -d
 

运行
在浏览器中输入 http://群晖IP:1111 就能看到登录界面

第一次需要点 Sign Up 注册账号

登录成功后的主界面

设置中文
Settings --> Language 中找到 简体中文

不需要刷新

现在回到 闪念,可以开始记录你的新想法

链接能够直接提取 title 等信息

支持右键菜单

手机上的效果相当哇塞

AI 驱动(失败)
默认情况下,AI 并没有启用

虽然 AI服务商 只能是 OpenAI,但因为可以输入 接口地址,所以老苏打算用其他的 AI 来模拟 OpenAI
文章传送门:
- 长文本大模型API服务kimi-free-api
 - 大模型接口管理和分发系统One API
 

- 使用 
Blinko ai:启用; AI服务商:只能选OpenAI;人工智能模型:选择gpt-3.5-turbo,因为One API中模型只设置了kimi和gpt-3.5-turbo;API Key:用One API的令牌;- 接口地址:用 
One API的地址;但是要注意,要求必须用https开头,格式为https://域名/v1; 
设置完成后

回到首界面,右下角会多出一个图标

但是聊天时,返回了错误
Error: Error: Error: 503 当前分组 default 下对于模型 text-embedding-ada-002 无可用渠道 (request id: 2024111016093058572008963658571)
 

说明还需要用到 Embedding 模型。继续用 M3E 来模拟 text-embedding-ada-002
文章传送门:开源文本嵌入模型M3E

这次返回了另一个错误
Error: Error: 422 bad response status code 422 (request id: 2024111017481662117653978385149)
 
M3E 容器中的日志更明确
172.17.0.1:33778 - "POST /v1/embeddings HTTP/1.1" 422 Unprocessable Entity
 

说明请求的格式正确,但是由于含有语义错误,无法响应。看来虽然都是嵌入式模型,但两者存在差异。
暂时没想到怎么解决这个问题,或者等待作者支持其他的 AI模型吧。
即便暂时用不上 AI 搜索,Blinko 从设计理念上,也不失为一款很好的轻量级笔记软件。
参考文档
blinko-space/blinko: An open-source, self-hosted personal note tool prioritizing privacy, built using TypeScript .
地址:https://github.com/blinko-space/blinko
Blinko HomePage
地址:https://blinko-doc.vercel.app/
Blinko live demo
地址:https://blinko-demo.vercel.app
相关文章:
AI驱动的轻量级笔记应用Blinko
什么是 Blinko ? Blinko 是一个创新的开源项目,专为想要快速捕捉和整理瞬间想法的个人而设计。Blinko 允许用户在灵感迸发的瞬间无缝记录想法,确保不会错过任何创意火花。 Blinko 的设计初衷是让笔记记录变得更简单,让用户专注于内…...
一文搞懂 UML 类图
面向对象设计 主要就是使用UML的类图,类图用于描述系统中所包含的类以及它们之间的相互关系,帮助人们简化对系统的理解,它是系统分析和设计阶段的重要产物,也是系统编码和测试的重要模型依据 一、UML类图简介 统一建模语言 UML …...
Zabbix 7 最新版本安装 Rocky Linux 8
前言 本实验主要在Rocky Linux 中安装Zabbix,其他centos8、Debian、Ubuntu、Alma Linux都可以安装,就是在中间件有点不同。Nginx就要配置一下,官网给的教程也算是很规范的,就是在MySQL上要自己安装,他没有告诉我们&am…...
使用HTML、CSS和JavaScript创建动态雪人和雪花效果
✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 ✨特色专栏:…...
redis bind 127.0.0.1和bind 10.34.56.78的区别
绑定到 127.0.0.1,默认情况下,Redis 只会接受来自本地主机的连接。其他地址的则无法成功连接。如果绑定到主机的IP地址,则是可以被其他主机连接的。 可以通过iptables规则,进一步限制对redis的访问。 1、允许本地回环接口链接 …...
基于点云的 3D 目标检测模型 PointPillars 部署 tensorRT
PointPillars 3D 目标检测模型部署 tensorRT 一直想折腾一下基于点云的目标检测模型,但由于没有实际项目或工作需要,搞也搞的不够深入,把开源的模型跑一下似乎好像做过又好像没有做过。内心一直想搞一下,选定了 PointPillars 这个…...
centos查看硬盘资源使用情况命令大全
在 CentOS 系统中,你可以使用几个命令来查看硬盘的资源和使用情况。以下是一些常用的命令: 1. df 命令 df (disk free) 用于显示文件系统的磁盘空间占用情况。 df -h-h 参数表示以人类可读的格式(如 GB, MB)显示。输出会显示每…...
Solon MVC 的 @Mapping 用法说明
在 Solon Mvc 里,Mapping 注解一般是配合 Controller 和 Remoting,作请求路径映射用的。且,只支持加在 public 函数 或 类上。 1、注解属性 属性说明备注value路径与 path 互为别名path路径与 value 互为别名method请求方式限定(defall)可用…...
uni-app表单⑪
文章目录 十七、用户登录-登录界面搭建一、结构样式代码编写 十八、用户登录-表单验证一、userRulesMixin 文件使用二、验证规则编写 十七、用户登录-登录界面搭建 一、结构样式代码编写 uni-forms 插件下载 下载地址:https://ext.dcloud.net.cn/plugin?id2773 s…...
PyQt5 加载UI界面与资源文件
步骤一: 使用 Qt Designer 创建 XXX.ui文件 步骤二: 使用 Qt Designer 创建 资源文件 步骤三: Python文件中创建相关类, 使用 uic.loadUi(mainwidget.ui, self ) 加载UI文件 import sys from PyQt5 import QtCore, QtWidgets, uic from PyQt5.QtCore import Qt f…...
【MySQL】数据库知识突破:数据类型全解析与详解
前言:本节内容讲述MySQL的数据类型, 我们在学习之前的建表的时候已经用过各种各样的数据类型。 比如int、varchar、char类型等等。其中它们是对表的结构的操作, 并没有对数据的内容进行操作,所以它叫做DDL。另外,还有…...
使用Golang实现开发中常用的【实例设计模式】
使用Golang实现开发中常用的【实例设计模式】 设计模式是解决常见问题的模板,可以帮助我们提升思维能力,编写更高效、可维护性更强的代码。 单例模式: 描述:确保一个类只有一个实例,并提供一个全局访问点。 优点&…...
【Java学习】电脑基础操作和编程环境配置
CMD 在Windows中用命令行的方式操作计算机。 打开CMD Win R输入CMD按下回车键 Win E 进入我的电脑 常用的CMD命令 盘符名称冒号 说明:盘符切换 举例:E:回车,表示切换到E盘 dir 说明:查看当前路径下的内容 cd目录 说明&a…...
AVL树解析
目录 一. AVL的概念 二 AVL树的插入 2.1先按二叉搜索树的规则插入 2.2 AVL的重点:平衡因子更新 3.1 更新后parent的平衡因子等于0。 3.2 更新后parent的平衡因子等于1 或 -1,需要继续往上更新。 3.3 更新后parent的平衡因子等于2 或 -2,需…...
栈和队列(Java)
一.栈(Stack) 1.定义 栈是限定仅在表尾进行插入或删除操作的线性表 一般的表尾称为栈顶 表头称为栈底 栈具有“后进先出”的特点 2.对栈的模拟 栈主要具有以下功能: push(Object item):将元素item压入栈顶。 pop()&am…...
C#设计原则
文章目录 项目地址一、开放封闭原则1.1 不好的版本1.2 将BankProcess的实现改为接口1.3 修改BankStuff类和IBankClient类二、依赖倒置原则2.1 高层不应该依赖于低层模块2.1.1 不好的例子2.1.2 修改:将各个国家的歌曲抽象2.2 抽象不应该依于细节2.2.1 不同的人开不同的车(接口…...
easyfs 简易文件系统
easyfs easyfs 简易文件系统文件系统虚拟文件系统 VFS简易文件系统 easyfs磁盘布局超级块 easyfs 文件系统结构磁盘上的索引结构索引节点Inode 和 DiskInode 之间的关系举例说明读取文件的过程( /hello ) 参考文档 easyfs 简易文件系统 文件系统 常规文…...
【架构论文-1】面向服务架构(SOA)
【摘要】 本文以我参加公司的“生产线数字孪生”项目为例,论述了“面向服务架构设计及其应用”。该项目的目标是构建某车企的数字孪生平台,在虚拟场景中能够仿真还原真实产线的动作和节拍,实现虚实联动,从而提前规避问题ÿ…...
刚刚!更新宁德时代社招Verify测评语言理解数字推理SHL题库、网盘资料、高分答案
宁德时代社招入职的Verify测评主要分为两大块:语言理解和数字推理。语言理解部分包括阅读理解、逻辑填空和语句排序,要求在17分钟内完成30题。数字推理部分包括数字序列、数学问题解决和图表分析,同样要求在17分钟内完成18题。这些测评题目旨…...
C++笔记---智能指针
1. 什么是智能指针 1.1 RALL设计思想 RAII(Resource Acquisition Is Initialization,资源获取即初始化)是一种资源管理类的设计思想,广泛应用于C等支持对象导向编程的语言中。它的核心思想是将资源的管理与对象的生命周期紧密绑定…...
golang循环变量捕获问题
在 Go 语言中,当在循环中启动协程(goroutine)时,如果在协程闭包中直接引用循环变量,可能会遇到一个常见的陷阱 - 循环变量捕获问题。让我详细解释一下: 问题背景 看这个代码片段: fo…...
React Native 导航系统实战(React Navigation)
导航系统实战(React Navigation) React Navigation 是 React Native 应用中最常用的导航库之一,它提供了多种导航模式,如堆栈导航(Stack Navigator)、标签导航(Tab Navigator)和抽屉…...
AtCoder 第409场初级竞赛 A~E题解
A Conflict 【题目链接】 原题链接:A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串,只有在同时为 o 时输出 Yes 并结束程序,否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...
屋顶变身“发电站” ,中天合创屋面分布式光伏发电项目顺利并网!
5月28日,中天合创屋面分布式光伏发电项目顺利并网发电,该项目位于内蒙古自治区鄂尔多斯市乌审旗,项目利用中天合创聚乙烯、聚丙烯仓库屋面作为场地建设光伏电站,总装机容量为9.96MWp。 项目投运后,每年可节约标煤3670…...
微信小程序云开发平台MySQL的连接方式
注:微信小程序云开发平台指的是腾讯云开发 先给结论:微信小程序云开发平台的MySQL,无法通过获取数据库连接信息的方式进行连接,连接只能通过云开发的SDK连接,具体要参考官方文档: 为什么? 因为…...
深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南
🚀 C extern 关键字深度解析:跨文件编程的终极指南 📅 更新时间:2025年6月5日 🏷️ 标签:C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言🔥一、extern 是什么?&…...
css3笔记 (1) 自用
outline: none 用于移除元素获得焦点时默认的轮廓线 broder:0 用于移除边框 font-size:0 用于设置字体不显示 list-style: none 消除<li> 标签默认样式 margin: xx auto 版心居中 width:100% 通栏 vertical-align 作用于行内元素 / 表格单元格ÿ…...
图表类系列各种样式PPT模版分享
图标图表系列PPT模版,柱状图PPT模版,线状图PPT模版,折线图PPT模版,饼状图PPT模版,雷达图PPT模版,树状图PPT模版 图表类系列各种样式PPT模版分享:图表系列PPT模板https://pan.quark.cn/s/20d40aa…...
laravel8+vue3.0+element-plus搭建方法
创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...
Reasoning over Uncertain Text by Generative Large Language Models
https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829 1. 概述 文本中的不确定性在许多语境中传达,从日常对话到特定领域的文档(例如医学文档)(Heritage 2013;Landmark、Gulbrandsen 和 Svenevei…...
