feat(web): add floating feedback FAB on homepage linking to Tally form

Collect beta user feedback via Tally.so — fixed-position button in the
bottom-right corner opens the form in a new tab. Ember-orange default,
clay-dark on hover, i18n labels for zh-CN / en / ja.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
yuanzonghao
2026-06-24 18:51:28 +08:00
parent ae4d9f8873
commit 8964155b26
4 changed files with 15 additions and 0 deletions
+12
View File
@@ -2155,6 +2155,18 @@ export default function HomePage() {
</div>
</footer>
{/* ================== 反馈悬浮按钮 ================== */}
<a
href="https://tally.so/r/VLqO1M"
target="_blank"
rel="noopener noreferrer"
aria-label={t("home.ui.feedback")}
className="fixed right-5 bottom-[calc(1.25rem+env(safe-area-inset-bottom))] z-50 flex items-center gap-2 rounded-full bg-ember-500 pl-3.5 pr-4 py-2.5 text-sm text-cream-50 shadow-lg transition-all hover:bg-clay-800 active:scale-95"
>
<i className="fa-solid fa-comment-dots text-[13px]" />
<span className="font-sans tracking-wide">{t("home.ui.feedback")}</span>
</a>
{styleOpen && styleRow >= 0 && (
<StyleModal
items={OPTS[styleRow]!.items}
+1
View File
@@ -119,6 +119,7 @@ export const en = {
save: "Save",
cancel: "Cancel",
saveAndSelect: "Save and Select",
feedback: "Feedback",
},
styleModal: {
+1
View File
@@ -130,6 +130,7 @@ export const ja = {
save: "保存",
cancel: "キャンセル",
saveAndSelect: "保存して適用",
feedback: "フィードバック",
},
// Style modal
+1
View File
@@ -130,6 +130,7 @@ export const zhCN = {
save: "保存",
cancel: "取消",
saveAndSelect: "保存并选用",
feedback: "反馈",
},
// Style modal