我想要分享我的个人项目Thank Japan,这是一个平台,用户可以通过视觉小游戏和打字来学习日语。
技术栈:
后端:Heroku 上的 Django 5.x
数据库:PostgreSQL
图片:Cloudinary + Midjourney
国际化:使用 Django 的内置翻译系统支持 15 种语言。
目前碰到的技术挑战:
计时器同步:我遇到一个错误,游戏计时器在“结果视图”(4.5s)转场时会持续在后台运行。通过 POST 请求,将客户端的 exact client-side timeLeft 回传到后端,并在会话中重新计算下一个问题的 game_end_time 来解决这个问题。
动态 UI 格式化:我的数据库中有类似“每日对话”这样的无空格分类名,我不想进行有风险的数据库迁移。因此,我实现了一个自定义模板过滤器来处理格式化和翻译。
banner 持久化:通过实现本地存储检查以及 Django 会话逻辑,解决了隐私政策协议的弹窗在服务器端延迟时不断弹出的问题。
视频:
这是日语模式的Kanji游戏模式。我的游戏中使用的是 confetti.js 来实现庆祝效果,以及 Web Speech API 来提供原生的音频。
作为单人开发者,我学到的是:虽然 AI 可以帮助初期的代码撰写和翻译,但是为了保证产品质量,人工检查不可或缺。
我非常願意收到您的反馈,关于架构或如何处理大型.po 文件管理的问题,也有15+语言了!
评论 (0)