尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗A clickable TikTok-style app (plain HTML/CSS/JS, no build step) that adds one new feature: Tune My Feed. Long-press any video, tap Tune My Feed, set how much of each topic you want, and the upcoming For You videos are re-ranked right away.
This is a concept prototype for a demo. It is not affiliated with TikTok.
The problem. I interviewed 7 college students about how they use TikTok. The top frustration: when the For You feed goes off (one friend-sent video can skew it), there's no fast way to fix it, so people switch to Instagram Reels. TikTok does have topic settings, but they're buried in Settings.
The idea. Put feed control where users already are. Long-press a video, right where "Not interested" lives, and turn each topic up, down or off. The next videos change immediately instead of after days of retraining.
What to try. Open the live demo, long-press any video, tap Tune My Feed, drag Food to "More" and save. Upcoming videos re-rank on the spot. In a demo run, that took Food from about 1 in 10 upcoming videos to 5 in 10.
What happened. In a usability test, 3 of 3 NYU students understood the sliders with no explanation, and 2 of 3 picked them as their favorite feature. I pitched the MVP to 7 product managers at the NYU Product Management Club.
How it was built. Plain HTML, CSS and JavaScript, built with Claude Code. Each slider sets a topic's weight, and the queue re-ranks 45 videos across 6 topics.
Full case study: https://www.kasonlin.com/tiktok.html
👉 https://tiktok-tune-my-feed.vercel.app
Works on any phone or laptop, no setup needed. On a laptop it shows inside an iPhone frame.
On an iPhone: open the link in Safari, tap Share → Add to Home Screen, then open it from the home screen. It runs full-screen with no Safari bars, like a real app.
The site is hosted on Vercel and connected to this GitHub repo. Every push to main redeploys it automatically in about 30 seconds:
git add .
git commit -m "What I changed"
git push
For offline work or testing changes before pushing, run this from this folder:
python3 -m http.server 8000 --bind 0.0.0.0
Then open http://localhost:8000. To try it on a phone on the same Wi-Fi, find your laptop's IP with ipconfig getifaddr en0 and open http://<that-ip>:8000. If macOS asks whether Python can accept incoming connections, click Allow.
| File | What it is |
|---|---|
index.html | App shell (feed, top bar, bottom nav, phone frame) |
styles.css | All visuals |
app.js | Feed, gestures, sheets, screens, ranking engine, demo panel |
icons.js | Inline SVG icons |
data/videos.json | The 45 videos (topic, creator, caption, sound, counts) |
data/videos.js | Copy of the JSON, used only if you open index.html directly without the server |
videos/ | 720×1280 H.264 clips with music (≈3 MB each) plus a .jpg poster for each |
img/avatars/ | Creator avatars (cropped from the clips) |
DEMO.md | 60-second walkthrough script |
To swap in your own clips: drop a vertical .mp4 and a .jpg poster into videos/, then add or edit an entry in data/videos.json. topic must be one of food, travel, music, fitness, pets, comedy. If you edit the JSON, regenerate the fallback with:
python3 -c "import json;d=json.load(open('data/videos.json'));open('data/videos.js','w').write('window.VIDEOS_FALLBACK = '+json.dumps(d,ensure_ascii=False)+';\n')"
D (laptop), tap the video with two fingers (phone), or triple-tap the status bar. It shows the topic mix of the next 10 videos before and after your last save, and has a Reset demo button.Video clips and music are from Mixkit under the free Mixkit license. Track names are shown as each video's sound. Font: TikTok Sans (Google Fonts).