mirror of
https://github.com/1c7/chinese-independent-developer.git
synced 2026-01-10 01:05:56 +08:00
Compare commits
66 Commits
add-projec
...
7b8a33a30c
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7b8a33a30c | ||
|
|
73bc284c2b | ||
|
|
83706b5180 | ||
|
|
2d4c6f2196 | ||
|
|
c70cb97494 | ||
|
|
4e6798d728 | ||
|
|
cf034e8f58 | ||
|
|
41d8919ecf | ||
|
|
e73523b47c | ||
|
|
5ecacb8144 | ||
|
|
7efedebd4d | ||
|
|
59367aa18f | ||
|
|
56403b3d46 | ||
|
|
065b6219c9 | ||
|
|
4a3564f76d | ||
|
|
fd49649568 | ||
|
|
c21bdd7ba4 | ||
|
|
cb695f68e9 | ||
|
|
44b1fc02f9 | ||
|
|
14046cba12 | ||
|
|
c598b20ecf | ||
|
|
38ee2059ee | ||
|
|
c770cd781b | ||
|
|
62da88c1f6 | ||
|
|
6709929f33 | ||
|
|
9cec7b86bc | ||
|
|
d4bf5c7534 | ||
|
|
cbe2571d36 | ||
|
|
574ca1902f | ||
|
|
d0e83ceed3 | ||
|
|
385dbf3fdd | ||
|
|
356bf66be0 | ||
|
|
6392bdcb94 | ||
|
|
f70e563de8 | ||
|
|
2d273b49f3 | ||
|
|
0832737b39 | ||
|
|
30b4a27c90 | ||
|
|
4a32602922 | ||
|
|
2431927eae | ||
|
|
2b166791df | ||
|
|
7bd87d7b80 | ||
|
|
7bfc5a4d23 | ||
|
|
f1f63a4b51 | ||
|
|
c698c87087 | ||
|
|
ea155bd8d8 | ||
|
|
508bf6c3c8 | ||
|
|
3480b04a32 | ||
|
|
09b476b0bc | ||
|
|
2e133401c8 | ||
|
|
f83699c075 | ||
|
|
875fa8c111 | ||
|
|
28ae2734d0 | ||
|
|
cd2b9e2243 | ||
|
|
f12b822a55 | ||
|
|
a7604c6648 | ||
|
|
70d6df0ba7 | ||
|
|
53ef61c07e | ||
|
|
fb5331e6e2 | ||
|
|
120c0bc4fa | ||
|
|
28b054672a | ||
|
|
fc867f0db9 | ||
|
|
442fd51ec0 | ||
|
|
e83689f38c | ||
|
|
e71a840143 | ||
|
|
57e9b3e238 | ||
|
|
811ae026ca |
@@ -1,3 +1,3 @@
|
||||
GITHUB_TOKEN="github_pat_*"
|
||||
PAT_TOKEN="github_pat_*"
|
||||
LLM_API_KEY="sk-*"
|
||||
LLM_BASE_URL="https://api.deepseek.com"
|
||||
|
||||
5
.github/README.md → .github/MAINTAINER.md
vendored
5
.github/README.md → .github/MAINTAINER.md
vendored
@@ -1,4 +1,4 @@
|
||||
## `.github/` 的文档
|
||||
## 介绍 `.github/` 文件夹的用途
|
||||
|
||||
## 概括
|
||||
用户在 https://github.com/1c7/chinese-independent-developer/issues/160 提交评论。
|
||||
@@ -6,7 +6,7 @@
|
||||
需要用程序自动化处理,减少我的时间投入。
|
||||
|
||||
## 流程
|
||||
1. 我在用户提交的评论点击 🚀 图标(表情)
|
||||
1. 我(1c7)在用户提交的评论点击 🚀 图标(表情)
|
||||
1. 触发 Github Action 执行(手动触发 或 定时执行(每 6 小时)
|
||||
1. Github Action 会触发 .github/scripts/process_item.py
|
||||
2. 查找 "当前日期-3天" 开始(这个时间点往后) 所有标记 🚀 图标 的评论
|
||||
@@ -26,4 +26,3 @@ uv sync
|
||||
|
||||
uv run .github/scripts/process_item.py
|
||||
```
|
||||
|
||||
244
.github/scripts/process_item.py
vendored
244
.github/scripts/process_item.py
vendored
@@ -1,145 +1,217 @@
|
||||
import os
|
||||
import re
|
||||
import datetime
|
||||
from github import Github # https://github.com/PyGithub/PyGithub
|
||||
from github import Github
|
||||
from openai import OpenAI
|
||||
from datetime import datetime, timedelta, timezone
|
||||
|
||||
|
||||
# ================= 配置区 =================
|
||||
GITHUB_TOKEN = os.getenv("GITHUB_TOKEN")
|
||||
API_KEY = os.getenv("LLM_API_KEY")
|
||||
BASE_URL = os.getenv("LLM_BASE_URL", "https://api.openai.com/v1")
|
||||
REPO_NAME = "1c7/chinese-independent-developer" # os.getenv("GITHUB_REPOSITORY")
|
||||
ISSUE_NUMBER = 160 # 你在维护的那个 Issue 编号
|
||||
ADMIN_HANDLE = "1c7" # 替换为你的 GitHub ID
|
||||
TRIGGER_EMOJI = "rocket" # 🚀
|
||||
SUCCESS_EMOJI = "hooray" # 🎉
|
||||
PAT_TOKEN = os.getenv("PAT_TOKEN") # GitHub Personal Access Token
|
||||
API_KEY = os.getenv("LLM_API_KEY") # LLM API 密钥(如 DeepSeek、OpenAI)
|
||||
BASE_URL = os.getenv("LLM_BASE_URL", "https://api.openai.com/v1") # LLM API 基础 URL
|
||||
REPO_NAME = "1c7/chinese-independent-developer" # GitHub 仓库名称
|
||||
ISSUE_NUMBER = 160 # 用于收集项目提交的 Issue 编号
|
||||
ADMIN_HANDLE = "1c7" # 管理员 GitHub 用户名
|
||||
TRIGGER_EMOJI = "rocket" # 触发处理的表情符号 🚀
|
||||
SUCCESS_EMOJI = "hooray" # 处理成功的表情符号 🎉
|
||||
# ==========================================
|
||||
|
||||
def check_environment():
|
||||
"""检查必需的环境变量是否存在"""
|
||||
if not PAT_TOKEN:
|
||||
raise ValueError("❌ 缺少环境变量 PAT_TOKEN!请设置 GitHub Personal Access Token。")
|
||||
if not API_KEY:
|
||||
raise ValueError("❌ 缺少环境变量 LLM_API_KEY!请设置 LLM API Key。")
|
||||
|
||||
print(f"✅ 环境变量检查通过")
|
||||
print(f" - PAT_TOKEN: {'*' * 10}{PAT_TOKEN[-4:]}")
|
||||
print(f" - API_KEY: {'*' * 10}{API_KEY[-4:]}")
|
||||
print(f" - BASE_URL: {BASE_URL}\n")
|
||||
|
||||
def remove_quote_blocks(text: str) -> str:
|
||||
"""移除 GitHub 引用回复块(以 > 开头的行)"""
|
||||
"""移除 GitHub 引用回复块"""
|
||||
lines = text.split('\n')
|
||||
cleaned_lines = []
|
||||
|
||||
for line in lines:
|
||||
# 检查去除前导空格后是否以 > 开头
|
||||
if not line.lstrip().startswith('>'):
|
||||
cleaned_lines.append(line)
|
||||
|
||||
# 重新拼接,并清理多余空行
|
||||
result = '\n'.join(cleaned_lines)
|
||||
|
||||
# 移除连续多个空行,保留单个空行
|
||||
result = re.sub(r'\n{3,}', '\n\n', result)
|
||||
|
||||
return result.strip()
|
||||
|
||||
def get_ai_format(raw_text):
|
||||
def get_ai_project_line(raw_text):
|
||||
"""让 AI 提取项目名称、链接和描述(支持多个产品)"""
|
||||
client = OpenAI(api_key=API_KEY, base_url=BASE_URL)
|
||||
prompt = f"""
|
||||
你是一个严格的文案编辑。任务是将用户的项目介绍转换为标准的 Markdown 格式。
|
||||
任务:将用户的项目介绍转换为 Markdown 格式。
|
||||
|
||||
4. 格式模板:
|
||||
#### 制作者名字 - [Github](链接)
|
||||
* :white_check_mark: [项目名](链接):用途描述
|
||||
要求:
|
||||
1. 识别文本中的所有产品/项目(可能有多个)
|
||||
2. 每个项目占一行
|
||||
3. 在文字的开头,去掉"一款、一个、完全免费、高效、简洁、强大、快速、好用、安全"等营销废话
|
||||
4. 严禁使用加粗格式(不要使用 **)
|
||||
5. 将产品名称从文字的后面提升到最前面
|
||||
6. 每行格式:* :white_check_mark: [项目名](网址):用途描述
|
||||
|
||||
示例 1:
|
||||
输入:https://example.com:一款基于 AI 的高效视频生成网站
|
||||
输出:* :white_check_mark: [example.com](https://example.com):AI 视频生成网站
|
||||
|
||||
示例 2:
|
||||
输入:[MyApp](https://myapp.com) 完全免费的强大工具,帮助用户管理任务
|
||||
输出:* :white_check_mark: [MyApp](https://myapp.com):任务管理工具
|
||||
|
||||
示例 3(多个项目):
|
||||
输入:
|
||||
[ProductA](https://a.com):AI 绘画工具
|
||||
[ProductB](https://b.com):AI 写作助手
|
||||
输出:
|
||||
* :white_check_mark: [ProductA](https://a.com):AI 绘画工具
|
||||
* :white_check_mark: [ProductB](https://b.com):AI 写作助手
|
||||
|
||||
待处理文本:
|
||||
{raw_text}
|
||||
"""
|
||||
response = client.chat.completions.create(
|
||||
model="deepseek-reasoner", # 或者使用 deepseek-chat
|
||||
model="deepseek-chat",
|
||||
messages=[{"role": "user", "content": prompt}],
|
||||
temperature=0.3
|
||||
)
|
||||
return response.choices[0].message.content.strip()
|
||||
|
||||
def main():
|
||||
g = Github(GITHUB_TOKEN)
|
||||
# 检查环境变量
|
||||
check_environment()
|
||||
|
||||
g = Github(PAT_TOKEN)
|
||||
repo = g.get_repo(REPO_NAME)
|
||||
issue = repo.get_issue(ISSUE_NUMBER)
|
||||
|
||||
# 计算 3 天前的时间(GitHub API 使用的是 UTC 时间)
|
||||
|
||||
time_threshold = datetime.now(timezone.utc) - timedelta(days=3)
|
||||
|
||||
# 如果你一定要死守 2025-12-15,也可以手动指定:
|
||||
# time_threshold = datetime(2025, 12, 15, tzinfo=timezone.utc)
|
||||
|
||||
# 重点:在这里加上 since 参数
|
||||
comments = issue.get_comments(since=time_threshold)
|
||||
|
||||
processed_count = 0
|
||||
# ===== 阶段 1:收集待处理评论 =====
|
||||
pending_comments = []
|
||||
formatted_entries = []
|
||||
|
||||
for comment in comments:
|
||||
# 1. 检查是否有你的 🚀 反应
|
||||
reactions = comment.get_reactions()
|
||||
has_trigger = any(r.content == TRIGGER_EMOJI and r.user.login == ADMIN_HANDLE for r in reactions)
|
||||
# 2. 检查是否已经标记过成功 🎉
|
||||
has_success = any(r.content == SUCCESS_EMOJI for r in reactions)
|
||||
|
||||
if has_trigger and not has_success:
|
||||
print(f"发现待处理评论 ID: {comment.id}")
|
||||
print(f"\n{'='*60}")
|
||||
print(f"处理评论:\n{comment.body}")
|
||||
print(f"\n评论链接:{comment.html_url}")
|
||||
print(f"{'='*60}\n")
|
||||
|
||||
# 清理引用块,然后 AI 格式化内容
|
||||
cleaned_body = remove_quote_blocks(comment.body)
|
||||
formatted_entry = get_ai_format(cleaned_body)
|
||||
|
||||
# 准备修改 README.md
|
||||
content = repo.get_contents("README.md", ref="master")
|
||||
readme_text = content.decoded_content.decode("utf-8")
|
||||
|
||||
# 插入日期逻辑
|
||||
today_str = datetime.now().strftime("%Y 年 %m 月 %d 号添加")
|
||||
date_header = f"### {today_str}"
|
||||
|
||||
if date_header not in readme_text:
|
||||
# 在 "3. 项目列表" 下方插入新日期
|
||||
new_readme = readme_text.replace("3. 项目列表\n", f"3. 项目列表\n\n{date_header}\n")
|
||||
# 判断用户是否自带了 Header
|
||||
header_match = re.search(r'^####\s+.*', cleaned_body, re.MULTILINE)
|
||||
|
||||
if header_match:
|
||||
header_line = header_match.group(0).strip()
|
||||
body_for_ai = cleaned_body.replace(header_line, "").strip()
|
||||
print(f"检测到用户自带 Header: {header_line}")
|
||||
else:
|
||||
new_readme = readme_text
|
||||
author_name = comment.user.login
|
||||
author_url = comment.user.html_url
|
||||
header_line = f"#### {author_name} - [Github]({author_url})"
|
||||
body_for_ai = cleaned_body
|
||||
print(f"自动生成 Header: {header_line}")
|
||||
|
||||
# 在日期标题下插入新条目
|
||||
insertion_point = new_readme.find(date_header) + len(date_header)
|
||||
final_readme = new_readme[:insertion_point] + "\n\n" + formatted_entry + new_readme[insertion_point:]
|
||||
# AI 处理项目详情行
|
||||
project_line = get_ai_project_line(body_for_ai)
|
||||
formatted_entry = f"{header_line}\n{project_line}"
|
||||
|
||||
# 创建新分支并提交 PR
|
||||
branch_name = f"add-project-{comment.id}"
|
||||
base = repo.get_branch("master")
|
||||
pending_comments.append(comment)
|
||||
formatted_entries.append(formatted_entry)
|
||||
|
||||
# 检查分支是否已存在,如果存在则删除
|
||||
try:
|
||||
existing_ref = repo.get_git_ref(f"heads/{branch_name}")
|
||||
existing_ref.delete()
|
||||
print(f"已删除现有分支: {branch_name}")
|
||||
except:
|
||||
pass # 分支不存在,继续
|
||||
# ===== 阶段 2:批量提交 =====
|
||||
if not pending_comments:
|
||||
print("无待处理评论")
|
||||
return
|
||||
|
||||
repo.create_git_ref(ref=f"refs/heads/{branch_name}", sha=base.commit.sha)
|
||||
|
||||
repo.update_file(
|
||||
"README.md",
|
||||
f"docs: add new project from comment {comment.id}",
|
||||
final_readme,
|
||||
content.sha,
|
||||
branch=branch_name
|
||||
)
|
||||
print(f"\n共收集 {len(pending_comments)} 个待处理评论")
|
||||
|
||||
pr = repo.create_pull(
|
||||
title=f"新增项目:来自评论 {comment.id}",
|
||||
body=f"{comment.body}\n\n---\n原始评论:`{comment.html_url}`",
|
||||
head=branch_name,
|
||||
base="master"
|
||||
)
|
||||
# 更新 README
|
||||
content = repo.get_contents("README.md", ref="master")
|
||||
readme_text = content.decoded_content.decode("utf-8")
|
||||
|
||||
# 用表情标记为成功,并回复
|
||||
comment.create_reaction(SUCCESS_EMOJI)
|
||||
# comment.create_comment(f"感谢提交,已添加!\n\nPR 链接:{pr.html_url}")
|
||||
|
||||
processed_count += 1
|
||||
print(f"评论 {comment.id} 处理成功,已创建 PR。")
|
||||
today_str = datetime.now().strftime("%Y 年 %m 月 %d 号添加")
|
||||
date_header = f"### {today_str}"
|
||||
|
||||
if processed_count == 0:
|
||||
print("没有发现需要处理的新评论。")
|
||||
if date_header not in readme_text:
|
||||
new_readme = readme_text.replace("3. 项目列表\n", f"3. 项目列表\n\n{date_header}\n")
|
||||
else:
|
||||
new_readme = readme_text
|
||||
|
||||
# 插入所有条目(用两个换行分隔)
|
||||
insertion_point = new_readme.find(date_header) + len(date_header)
|
||||
all_entries = "\n\n".join(formatted_entries)
|
||||
final_readme = new_readme[:insertion_point] + "\n\n" + all_entries + new_readme[insertion_point:]
|
||||
|
||||
# 创建分支
|
||||
branch_name = f"batch-add-projects-{datetime.now().strftime('%Y%m%d-%H%M%S')}"
|
||||
base = repo.get_branch("master")
|
||||
|
||||
try:
|
||||
repo.get_git_ref(f"heads/{branch_name}").delete()
|
||||
except:
|
||||
pass
|
||||
|
||||
repo.create_git_ref(ref=f"refs/heads/{branch_name}", sha=base.commit.sha)
|
||||
repo.update_file(
|
||||
"README.md",
|
||||
f"docs: batch add {len(pending_comments)} projects",
|
||||
final_readme,
|
||||
content.sha,
|
||||
branch=branch_name
|
||||
)
|
||||
|
||||
# 构建 PR body
|
||||
comment_links = "\n".join([
|
||||
f"- [{c.user.login}]({c.html_url})"
|
||||
for c in pending_comments
|
||||
])
|
||||
|
||||
formatted_list = "\n\n".join([
|
||||
f"### {i+1}. {formatted_entries[i]}"
|
||||
for i in range(len(formatted_entries))
|
||||
])
|
||||
|
||||
pr_body = f"""批量添加 {len(pending_comments)} 个项目
|
||||
|
||||
## 原始评论链接
|
||||
{comment_links}
|
||||
|
||||
## 格式化结果
|
||||
{formatted_list}
|
||||
|
||||
---
|
||||
自动生成,触发机制:用户 {ADMIN_HANDLE} 点击 🚀
|
||||
"""
|
||||
|
||||
pr = repo.create_pull(
|
||||
title=f"新增项目:批量添加 {len(pending_comments)} 个项目",
|
||||
body=pr_body,
|
||||
head=branch_name,
|
||||
base="master"
|
||||
)
|
||||
|
||||
print(f"\n✅ PR 创建成功:{pr.html_url}")
|
||||
|
||||
# 标记所有评论(添加 🎉 表情)
|
||||
for comment in pending_comments:
|
||||
comment.create_reaction(SUCCESS_EMOJI)
|
||||
|
||||
# 创建一条评论提及所有用户
|
||||
user_mentions = " ".join([f"@{c.user.login}" for c in pending_comments])
|
||||
reply_body = f"{user_mentions} 感谢提交,已添加!\n\n PR 链接:{pr.html_url}"
|
||||
issue.create_comment(reply_body)
|
||||
|
||||
print(f"\n✅ 已标记所有 {len(pending_comments)} 个评论")
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
8
.github/workflows/process_list.yml
vendored
8
.github/workflows/process_list.yml
vendored
@@ -1,7 +1,7 @@
|
||||
name: 提交项目
|
||||
name: 提交项目(每 24 小时运行一次,晚上 00:00)
|
||||
on:
|
||||
# schedule:
|
||||
# - cron: '0 */6 * * *' # 每 6 小时运行一次
|
||||
schedule:
|
||||
- cron: '0 16 * * *' # 每天 UTC 16:00 运行(北京时间 00:00)
|
||||
workflow_dispatch: # 支持手动触发
|
||||
|
||||
jobs:
|
||||
@@ -22,7 +22,7 @@ jobs:
|
||||
|
||||
- name: Run script
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
PAT_TOKEN: ${{ secrets.PAT_TOKEN }}
|
||||
LLM_API_KEY: ${{ secrets.LLM_API_KEY }}
|
||||
# 如果你用的不是 OpenAI 原生接口,可以设置这个环境变量,否则默认使用 OpenAI
|
||||
LLM_BASE_URL: "https://api.deepseek.com"
|
||||
|
||||
@@ -2,6 +2,20 @@
|
||||
|
||||
本版面放的都是游戏,起始于2025年1月4号
|
||||
|
||||
### 2026 年 1 月 3 号添加
|
||||
#### 290713469 - [Github](https://github.com/290713469)
|
||||
* :white_check_mark: [Anime Fighting Simulator Calculator](https://anime-fighting-simulator.com):Roblox Anime Fighting Simulator游戏工具
|
||||
|
||||
### 2026 年 1 月 2 号添加
|
||||
* :white_check_mark: [PokePath-TD](https://play-pokepath-td.online/):PokePath-TD一款海外爆火的宝可梦塔防游戏,在9 条不同的路线上抵御一波又一波的敌人,失败了也可以累积资源和升级宝可梦成员。
|
||||
|
||||
### 2025 年 12 月 27 号添加
|
||||
* :white_check_mark: [Riddle School](https://riddle-school.online/):Riddle School 是一款以校园为背景的解谜冒险游戏,采用简单直观的点击操作方式,适合各类玩家上手。游戏通过一系列环环相扣的谜题,引导玩家不断思考不同道具和场景之间的关系。解谜过程清晰,让人能够专注于推理本身。
|
||||
|
||||
### 2025 年 12 月 21 号添加
|
||||
#### shuiwuhen - [GitHub](https://github.com/290713469)
|
||||
* :white_check_mark: [Universal Tower Defense Calculator](https://universaltowerdefensecalculator.com):Roblox 游戏 Universal Tower Defense 工具站
|
||||
|
||||
### 2025 年 12 月 14 号添加
|
||||
#### seven(沈阳)
|
||||
* :white_check_mark: [Pips game](https://pipsgame.dev/): 每日逻辑谜题,你通过纯推理放置多米诺骨牌——无需猜测(Pips Game is a daily logic puzzle where you place dominoes using pure deduction — no guessing)
|
||||
|
||||
108
README.md
108
README.md
@@ -20,7 +20,113 @@
|
||||
|
||||
## 3. 项目列表
|
||||
|
||||
### 2026 年 01 月 03 号添加
|
||||
|
||||
#### Space Time - [Github](https://github.com/SpaceTimee), [博客](https://blog.spacetimee.xyz)
|
||||
* :white_check_mark: [Sheas Frameg](https://frameg.spacetimee.xyz):开源光流法在线视频插帧工具 - [更多介绍](https://github.com/SpaceTimee/Sheas-Frameg)
|
||||
|
||||
#### WtecHtec(深圳)
|
||||
* :white_check_mark: [WordMoment](https://wordmoment.xujingyichang.top/):专注于背单词的纯前端 Web 应用 - [开源地址](https://github.com/WtecHtec/WordMoment)
|
||||
|
||||
#### hackun666 - [Github](https://github.com/hackun666)
|
||||
* :white_check_mark: [软著 Pro](https://ruanzhu.pro):AI 软著生成器,帮助用户生成软件著作权申请文档
|
||||
|
||||
### 2026 年 01 月 01 号添加
|
||||
|
||||
#### Flicker(成都)
|
||||
* :white_check_mark: [VoiceAILabs](https://voiceailabs.com/):专业AI声音克隆平台,创建您的语音克隆角色
|
||||
|
||||
#### zhouzhili - [Github](https://github.com/zhouzhili)
|
||||
* :white_check_mark: [QQ相册下载器](https://blog.aitoolwang.com/qq/):三步完成QQ空间、QQ群相册照片批量下载到电脑,原图原视频下载,保留拍摄时间。
|
||||
|
||||
### 2025 年 12 月 31 号添加
|
||||
|
||||
#### wangxiaosu - [Github](https://github.com/wangxiaosu)
|
||||
* :white_check_mark: [Text Behind Image](https://text-behind-image.org/):实现“字在人后”视觉深度,制作高级感海报
|
||||
|
||||
#### xiaolige 长沙
|
||||
* :white_check_mark: [nano-banana中文站](https://www.nano-banana.cn/zh):提供提示词模板,帮助用户快速生成图片
|
||||
|
||||
#### lingglee(武汉) - [Github](https://github.com/lingglee)
|
||||
* :white_check_mark: [authletter.com](https://www.authletter.com):委托信模板站,提供各种场景委托信模板,支持 AI 一句话生成委托信、编辑和下载
|
||||
|
||||
### 2025 年 12 月 29 号添加
|
||||
|
||||
#### jiyifeng(重庆) -
|
||||
* :white_check_mark: [Upscale image](https://upscale-image.org/):增强和放大图像
|
||||
|
||||
### 2025 年 12 月 28 号添加
|
||||
|
||||
#### StarCityBro(长沙)
|
||||
* :white_check_mark: [FeiHub](https://feihub.top):公开的飞书文档搜索,已收录包括:垂直小店、Gemini、AI产品、Claude Code、CPS、Sora、AI工作流、AI视频、AI短剧、AI漫剧、AI漫画、YouTube、小红书电商、电商选品、AI自媒体、n8n、私域运营、B站好物、外卖推客、RPA等 6000+的知识文档。
|
||||
|
||||
#### Albert-Weasker - [Github](https://github.com/Albert-Weasker)
|
||||
* :white_check_mark: [fuckpua](https://www.saynopua.com):用 AI 帮助识别和抵抗情感操控与PUA套路、提供分析和练习工具的心理防护平台
|
||||
|
||||
### 2025 年 12 月 26 号添加
|
||||
|
||||
#### LeeYuze - [Github](https://github.com/LeeYuze)
|
||||
* :white_check_mark: [WhatsMyName](https://www.whatsmyname.cc/):OSINT 用户名搜索与可用性检查工具,可实时扫描 700+ 平台,验证账号存在与数字足迹(匿名、不记录搜索历史)。
|
||||
|
||||
#### 菩提尘埃(厦门) - [Github](https://github.com/waterlines)
|
||||
* :white_check_mark: [外链管理系统](https://backlink.dreamthere.cn):SEO外链管理系统
|
||||
|
||||
### picaro - [Github](https://github.com/2002pipi)
|
||||
* :white_check_mark: [FlowSpeech](https://flowspeech.io):文本转语音,声音接近人类
|
||||
|
||||
### 2025 年 12 月 24 号添加
|
||||
|
||||
#### nanobanana-co - [Github](https://github.com/nanobanana-co)
|
||||
* :white_check_mark: [Nano Banana Pro](https://nanobanana.co/zh):AI 图像与视频生成平台,支持精准区域编辑、照片修复、风格转换、多图融合、角色一致性保持及视频生成
|
||||
|
||||
#### Rock(上海)
|
||||
* :white_check_mark: [Graffiti generator](https://www.graffitigenerators.com/):AI 街头涂鸦艺术生成器(基于 Nano Banana Pro)
|
||||
|
||||
### 2025 年 12 月 23 号添加
|
||||
|
||||
#### Albert-Weasker - [Github](https://github.com/Albert-Weasker)
|
||||
* :white_check_mark: [牛逼 Star](https://www.niubistar.com):面向开源开发者的 GitHub Star 互助与项目展示平台,让用户互相为项目点 “Star”,帮助开源项目获得真实曝光和更高关注度
|
||||
* :white_check_mark: [Intent-Leads](https://www.intent-leads.com/):帮助企业自动发现和整理“高意图潜在客户”线索,基于社交媒体和公开平台行为数据(即正在主动寻找产品/服务的人)以便联系和转化的获客工具
|
||||
|
||||
#### tancky777 - [Github](https://github.com/tancky777)
|
||||
* :white_check_mark: [LensGo AI](https://lensgoai.co/):AI 视频 & 图片创作,专注于动漫艺术风格的图片风格迁移或图片、视频制作
|
||||
* :white_check_mark: [Gemini Watermark Remover](https://geminiwatermark.net/):Gemini AI 图片、nano banana、nano banana pro 去水印
|
||||
|
||||
#### zhangchenchen - [Github](https://github.com/zhangchenchen)
|
||||
* :white_check_mark: [music0](https://music0.org/):AI 音乐/音乐视频生成平台
|
||||
|
||||
### 2025 年 12 月 22 号添加
|
||||
|
||||
#### Yiann(大连) - [Github](https://github.com/taingh)
|
||||
* :white_check_mark: [UniMusic AI](https://unimusic.ai):AI 音乐生成 - 根据你的描述一键生成专业完整的音乐
|
||||
|
||||
#### amierhan - [Github](https://github.com/amierhan)
|
||||
* :white_check_mark: [nbpro.io](https://nbpro.io/):一站式 AI 图像与视频生成平台,整合了当前领先的图像与视频生成模型,包括 Nano Banana、Nano Banana Pro、sora2 等。平台内置智能提示词优化器,并提供大量真实可参考的生成案例,帮助用户创作高质量内容,生成的图片和视频均不带水印,适用于多种专业与商业场景
|
||||
|
||||
#### zhugezifang - [Github](https://github.com/zhugezifang)
|
||||
* :white_check_mark: [颜值评分](https://howattractiveami.app/zh):AI 颜值测试
|
||||
* :white_check_mark: [在线眼型测试](https://eyeshapedetector.app/zh):AI 眼型分析
|
||||
* :white_check_mark: [面部年龄计算器](https://howolddoyoulook.app/zh):AI 面部年龄检测器
|
||||
|
||||
### 2025 年 12 月 21 号添加
|
||||
|
||||
#### azt1112 - [Github](https://github.com/azt1112)
|
||||
* :white_check_mark: [GPT Image 1.5](https://chatgptimage15.com/):AI 图片生成网站,基于 GPT Image 1.5
|
||||
|
||||
### 2025 年 12 月 20 号添加
|
||||
|
||||
#### yoga666yoga888-lgtm - [Github](https://github.com/yoga666yoga888-lgtm)
|
||||
* :white_check_mark: [Sora21](https://www.sora21.com/):视频生成网站,基于 Sora2 模型,高性价比
|
||||
|
||||
#### hwlvipone - [Github](https://github.com/hwlvipone)
|
||||
* :white_check_mark: [palm reading online](https://palm-reading.app/):AI 看手相网站
|
||||
|
||||
#### allen2peace - [Github](https://github.com/allen2peace)
|
||||
* :white_check_mark: [FluentDictation](http://fluentdictation.com/):使用任意 YouTube 视频练习英语听写、英语跟读能力
|
||||
|
||||
#### jankarong - [Github](https://github.com/jankarong)
|
||||
* :white_check_mark: [AI YouTube 缩略图生成器](https://aithumbnailcreator.com/):生成 Youtube 缩略图,可免费下载,支持纯色或渐变背景
|
||||
|
||||
#### hwlvipone - [Github](https://github.com/hwlvipone)
|
||||
* :white_check_mark: [ZestyGen](https://zestygen.com/):基于 Nano Banana Pro 的图片视频聚合网站
|
||||
|
||||
@@ -4153,6 +4259,8 @@ OldPanda [GitHub](https://github.com/OldPanda), [博客](https://old-panda.com/)
|
||||
* :white_check_mark: [红色工具箱](https://apps.apple.com/cn/app/id1473577627):多个创意实用小工具集合,如肌肉启动,截屏记事,指尖轮盘等
|
||||
|
||||
#### Hancel.Lin(深圳) - [GitHub](https://github.com/imlinhanchao), [博客](http://hancel.org/)
|
||||
* :white_check_mark: [摸鱼竞技大厅](https://room.adventext.fun/):休闲游戏竞技大厅,支持多人在线联机游戏,包含多种休闲桌游与棋牌游戏。另外包含完整二次开发接口,可以快速开发出任意多人在线回合制游戏。 - [更多介绍](https://tiaoom.com/)
|
||||
* :white_check_mark: [WJU Puzzle](https://wju.adventext.fun/):WJU 字母解密游戏,通过 5 种操作规则,解出 WJU 字母序列。 - [更多介绍](https://github.com/imlinhanchao/wju)
|
||||
* :white_check_mark: [Adventext & 千屿引擎](https://adventext.fun/):文字冒险游戏引擎,包含用来创作文字冒险游戏的在线编辑器以及运行游戏的引擎,你可以在这里创作文字冒险游戏,调试运行。然后推送给世界上的任何玩家游玩! - [更多介绍](https://github.com/imlinhanchao/adventext)
|
||||
* :white_check_mark: [Time 时间胶囊](https://time-pack.com/):封存记忆,送给未来。基于小程序实现的时间胶囊,支持胶囊提醒与赠送胶囊。 - [更多介绍](https://github.com/imlinhanchao/time-pack-miniprogram)
|
||||
* :white_check_mark: [Cashflow 钱去哪儿了](https://s.hancel.org/):个人消费交易记录管理分析网站应用,通过同步微信与支付宝对账单,管理个人消费交易数据。 - [更多介绍](https://github.com/imlinhanchao/cashflow)
|
||||
|
||||
Reference in New Issue
Block a user