Go to file
2024-10-08 18:45:58 +08:00
.github/workflows 更新 github action 2024-10-08 17:06:04 +08:00
.vscode Initial 2024-10-07 01:52:57 +08:00
public 对移动端进行适配 2024-10-07 23:24:05 +08:00
src revert Home router 2024-10-08 18:31:29 +08:00
.env 加个配cx的地方 2024-10-08 02:00:08 +08:00
.gitignore Initial 2024-10-07 01:52:57 +08:00
Dockerfile 添加Dockefile 2024-10-08 16:47:49 +08:00
index.html 加了点介绍 2024-10-08 00:53:24 +08:00
jsconfig.json Initial 2024-10-07 01:52:57 +08:00
LICENSE Create LICENSE 2024-10-07 18:35:58 +08:00
package.json Initial 2024-10-07 01:52:57 +08:00
pnpm-lock.yaml Initial 2024-10-07 01:52:57 +08:00
README.md Merge pull request #2 from shadowofmoo/main 2024-10-08 18:37:57 +08:00
vercel.json 尝试解决vercel 404的问题 2024-10-08 18:45:58 +08:00
vite.config.js Initial 2024-10-07 01:52:57 +08:00

Luxirty Search

search.luxirty.com

一个搜索引擎,基于 Google屏蔽内容农场无广告无跟踪干净简洁快。

如果想添加到浏览器中,搜索语法是 search.luxirty.com/search?q=

特性&功能

  1. 内置内容农场屏蔽包括csdn、华x云、百度云智能、腾讯云开发者等seo网站以及一些 stackoverflow 中文翻译站。

  2. 点击For Program一键拉高 GitHub、Stackoverflow、v2ex、cnblog 权重,免去手打 site: 的麻烦。

  3. 一键搜索 v2ex 、 Raddit

  4. 内置广告屏蔽、跟踪链接移除。

与 uBlackList, Hit by Hidden 等工具的区别

这些工具在前端屏蔽搜索结果,也就是等到内容农场已经出现在搜索结果中,再将其删除或隐藏。

而 Luxirty Search 通过配置 Annotations 让 Google 直接屏蔽垃圾网站,服务器在执行搜索时就已经将网站排除,可以理解为内置多条 '-site:domain.com' 。

Contribute

欢迎 pr 和 issue。

本项目并不复杂,只需要基础的前端知识 (css + js) 即可看懂本项目。

下面是两个较简单的切入点,可以尝试从这里入手。

优化样式

本项目最大的作用其实是美化 cse 那个上古默认样式,我进行了基础的调整、暗黑适配、移动端适配,但肉眼可见的还有很多问题 Orz。

分享黑名单或优化名单

理论上而言,利用 GitHub Action 来自动生成 Annotations 文件是最好的做法,但我还没写(逃,所以目前直接写在 issue 里。

你可以分享这些域名:

  1. 黑名单域名:这些域名会直接被屏蔽
  2. 代码相关的高质量来源这些域名被视作优质来源当点击“For Program”标签时优先级会被提高。
  3. 当然,如果你认为有必要添加新的标签也可以提出来。

当前的缺陷

  1. 对不同尺寸的屏幕适配不完整

  2. 暗黑模式下还有部分元素过亮或者过暗

未来计划

  1. 根据标题进行二次拦截

  2. 加入自动翻页(这个还不知道怎么实现)

原理

Luxirty Search 基于 Google 的可编程自定义搜索引擎(Google cse),允许通过 Annotations 自定义屏蔽网站及搜索范围等,同时使用 Refinement Labels 提高 Github 等优质来源的权重。

用人话来说,就是内置了屏蔽哪些网站、优先搜索哪些网站。

部署

本质上而言,这是一个简单的 vue3 + vite 项目,因此你应该可以方便地将它部署到任何你喜欢的托管网站,例如 GitHub Pages、netfliy、Cloudflare Pages、vercel之类的。

当然你也可以将其部署在自己的服务器上。

无论你喜欢哪种方式,都只需要查看 vite 部署教程: https://cn.vitejs.dev/guide/static-deploy

(可选)如果你想使用自己的cse只需设置环境变量 VITE_GOOGLE_CSE_CX ,从这里创建你的 cse 并获取 cx https://programmablesearchengine.google.com/about/

一键部署

目前好像会出现使用 vercel 部署后,搜索出现 404: NOT_FOUND 的问题,等修。(实话说我也不太懂怎么修,大佬救救。)

Deploy with Vercel

Deploy with Vercel

Deploy to Netlify

Deploy to Netlify

Docker 运行

docker run --rm -p 80:80 ghcr.io/shadowofmoo/luxirty-search

开发

参考资料

唯一要看的参考资料:https://developers.google.com/custom-search/docs/element

在本地调试

pnpm install

Compile and Hot-Reload for Development

pnpm dev

Compile and Minify for Production

pnpm build