$ cat ./feed

Community Feed

See what the community is building and sharing.

$ Projects.log

Ashton Jones
Ashton JonesinOsaka FastHacks #1

2d ago·Oct 9, 2026

0

KNOT -- Meet friends inspired by similar interests, both online and offline

A bilingual (JA/EN) web app that helps foreign residents and Japanese locals in Kansai meet and help each other. There’s no sign-up: everyone joins anonymously with a random nickname. Built for the Kansai Bridge hackathon. Features Meet: random 1:1 chats, translated both ways, opening with a bilingual icebreaker. Hangouts: small public meetups with a feed and a translated group chat. Help: an emergency mode after strong earthquakes or organizer alerts, “Are you OK?” check-ins, a mutual aid board, and emergency info.

Ashton Jones
KNOT
Shisa AIVercelCodexClaude
いっせい
いっせいinOsaka FastHacks #1

2d ago·Oct 9, 2026

0

Ohkini! Bridge

# Ohkini! Bridge ## 発表形式 / Presentation 当日はライブデモを実施します。添付動画は使用しません。 We will present a live demo. Please disregard the attached recording. 言葉だけでなく、大阪らしい親しみやすさを届ける音声翻訳アプリ。 ## プロジェクト概要 英語と日本語を双方向に音声翻訳するWebアプリです。大阪を訪れる人と日本語話者が、言葉の壁を越えて気軽に会話できることを目指しました。関西弁モードでは英語を自然な関西弁に翻訳し、表情豊かな声で読み上げます。 ## 主な機能 - マイクで話した内容を認識し、英語から日本語、日本語から英語へ翻訳 - 関西弁モードのオン・オフ切り替え - 疑問文や感嘆文に合わせた日本語音声の抑揚 - 男声と、明るい関西アクセントの女性音声「Tsuki」の切り替え - 定型フレーズ、文字起こし・翻訳結果の表示、音声の再生ボタン - 声の選択を保存し、連続操作による音声の重なりを防止 ## 試し方 1. https://ookini-bridge.vercel.app/ をChromeで開きます。 2. EN → JP または JP → EN を選びます。 3. 関西弁モードと読み上げの声を選びます。 4. マイクボタンを押して話すか、Quick phrasesを押します。 5. 翻訳結果と音声を確認します。Play againで再生できます。 例:「Where is the station?」→「駅ってどこにあるん?」。 ## 技術構成 Web Speech APIで音声認識、Anthropic Claude APIで翻訳、ElevenLabs APIで音声合成を行います。フロントエンドはJavaScript / HTML / CSSとVite、バックエンドはNode.js / Express、ホスティングはVercelです。APIキーはサーバー側の環境変数で管理しています。 ## 動作確認 本番で双方向の翻訳、音声生成・再生、実マイク入力、男女の声切り替えと選択の保存を確認しました。 公開デモ: https://ookini-bridge.vercel.app/ ソースコード: https://github.com/yasusudas/FastHack-1

いっせい
Ohkini! Bridge
Anthropic Claude APIElevenLabs APIWeb Speech APIJavaScriptHTMLCSSViteNode.jsExpressVercel
Dāvis Ķemlers
Dāvis ĶemlersinOsaka FastHacks #1

2d ago·Oct 9, 2026

0

The Lanugage Wall

# 言葉の壁 / The Language Wall **[English](#english) · [日本語](#日本語)** **▶ Play / プレイ: https://language-wall.onrender.com/** (hosted on Render / Render でホスティング) | | URL | | --- | --- | | Game / ゲーム | https://language-wall.onrender.com/ | | Projector view (QR to join) / プロジェクター表示(参加用QR) | https://language-wall.onrender.com/?screen | | Trailer / トレーラー | https://language-wall.onrender.com/?trailer | | Server status / サーバー状態 | https://language-wall.onrender.com/api/health | > Render's free tier sleeps after ~15 minutes idle. Open the site a minute before playing so it can wake up. > Render の無料プランは約15分アクセスがないとスリープします。プレイの1分ほど前にサイトを開いておいてください。 --- ## English Co-op browser game for the "Bridge Kansai / 関西をつなぐ" hackathon: Japanese- and English-speaking players break a wall by passing everyday words and phrases through a cross-language telephone game, judged by [TypeSafe Jev](https://typesafe.ai). ### Hackathon scope Some preparation was done **before** the hackathon (2026-10-07 → 2026-10-08, up to and including commit [`285a7e5`](https://github.com/Dimda/language-wall/commit/285a7e5)): the playable game itself — realtime server, teams and chains, boss, art, music, spell effects, layout and the answer guard — running with a placeholder (mock) judge. **The hackathon starts at commit [`a2f72a4`](https://github.com/Dimda/language-wall/commit/a2f72a4)** (2026-10-09). Its main goal was the **Jev integration**: replacing the mock judge with [TypeSafe Jev](https://typesafe.ai), which scores how much meaning survived each translation chain (exact / same idea / related / lost) and drives the damage. Alongside that, refinements: - Jev's verdict and confidence in the battle log, a host-only END GAME button, a 3-player minimum, removable bots - a bigger casual vocabulary with short phrases (126 terms) - furigana (hiragana readings) over kanji, and chains starting in Japanese or English with equal odds See everything done during the hackathon: [`285a7e5...main`](https://github.com/Dimda/language-wall/compare/285a7e5...main). ### How it plays 1. Everyone opens the game (or scans the QR on the projector), enters a name and picks a Kansai character. 2. The host presses **FIGHT** (3–30 players; bots count). Players are split into the fewest teams of at most 5, as evenly as possible (21 players → 5·4·4·4·4). Late joiners go to the smallest team. 3. **Party turn:** each team gets a word or phrase, randomly Japanese or English. It passes through every member, and each one translates what they received into the other language (JA ⇄ EN). Answers may not reuse the received word and must be written in the target language. 4. **Spells resolve:** the word's journey is revealed, Jev judges how much meaning survived, and the team's spell hits the wall. A perfect match is a critical hit; lost meaning fizzles. Damage scales with chain length (×hops/2), so bigger teams aren't at a disadvantage. The battle log shows Jev's verdict and confidence. 5. **Enemy turn:** the wall strikes back, harder for every fizzled spell. 6. Break the wall before the party's HP runs out and a bridge forms across Kansai. The host can add/remove bots in the lobby (dev mode) and end a running game for everyone (■ END GAME). ### Judge Each finished chain asks Jev one Choice question — does the final text keep the meaning of the original (exact / same idea / related / lost)? The probabilities feed the damage formula. An exact (normalized) match skips the API and counts as a full hit. Idioms are judged by meaning, so a literal word-for-word translation doesn't count. If Jev is unavailable the game falls back to a mock judge so a spell never hangs. ### Run locally ```bash pnpm install pnpm dev # API on :3210 (or $API_PORT), Vite on :5173 ``` - Players: http://localhost:5173 · Projector view: http://localhost:5173/?screen · Trailer: http://localhost:5173/?trailer - Tests: `pnpm test` · Type check: `pnpm typecheck` ### Production ```bash pnpm build && pnpm start # everything on :3210 (or $PORT) ``` Deployed on [Render](https://render.com) via `render.yaml` at https://language-wall.onrender.com/ (free web service). Env vars: - `TYPESAFE_API_KEY` — enables the Jev judge; without it a mock judge is used. Put it in a git-ignored `.env` locally and in Render's **Environment Variables** in production (never in the code). - `PORT` (production), `API_PORT` (dev API), `HOP_SECONDS` (time per hop, default 45), `DEV_BOTS=1` (host can add bots). ### Tech React 19 + TypeScript + Vite · Node 24 + Express + Socket.IO (server-authoritative game state) · TypeSafe Jev (judge) · kuromoji (furigana) · procedural SVG/canvas pixel art and Web Audio chiptune music. --- ## 日本語 「関西をつなぐ / Bridge Kansai」ハッカソンのための協力型ブラウザゲームです。日本語話者と英語話者が、 日常の言葉やフレーズを言語をまたいだ伝言ゲームでつなぎ、[TypeSafe Jev](https://typesafe.ai) の判定で 「言葉の壁」を壊します。 **▶ プレイはこちら(Render で公開中): https://language-wall.onrender.com/** ### ハッカソンの範囲 ハッカソン**前**に一部の準備を行いました(2026-10-07 〜 2026-10-08、コミット [`285a7e5`](https://github.com/Dimda/language-wall/commit/285a7e5) まで)。ゲーム本体 — リアルタイムサーバー、チームと伝言チェーン、ボス、アート、音楽、魔法エフェクト、レイアウト、回答チェック — を、仮の判定(モック)で動く状態まで作っています。 **ハッカソンはコミット [`a2f72a4`](https://github.com/Dimda/language-wall/commit/a2f72a4) から始まります** (2026-10-09)。主な目標は **Jev の統合** です。モック判定を [TypeSafe Jev](https://typesafe.ai) に置き換え、 伝言チェーンでどれだけ意味が残ったか(完全一致 / 同じ意味 / 関連 / 失われた)を判定し、そのままダメージに 反映します。あわせて以下の改善も行いました: - バトルログに Jev の判定と確信度を表示、ホスト専用の終了ボタン、3人以上で開始、ボットの削除 - 語彙を拡大し、短いフレーズも追加(126語) - 漢字にふりがな(ひらがな)を表示、最初の言葉は日本語・英語をランダムに出題 ハッカソン中に行った変更の一覧: [`285a7e5...main`](https://github.com/Dimda/language-wall/compare/285a7e5...main) ### 遊び方 1. 各自ゲームを開く(またはプロジェクターの QR コードを読み取る)、名前を入力して関西のキャラクターを選びます。 2. ホストが **FIGHT** を押します(3〜30人、ボットも人数に含みます)。参加者は最大5人のチームに、 できるだけ均等に自動で分かれます(21人なら 5・4・4・4・4)。途中参加の人は一番人数の少ないチームに入ります。 3. **味方のターン:** 各チームに日本語または英語(ランダム)の言葉・フレーズが出題されます。言葉はチーム全員を 順番に回り、各自が受け取った言葉をもう一方の言語に翻訳します(日本語 ⇄ 英語)。受け取った言葉をそのまま 使うことはできず、指定された言語で書く必要があります。 4. **魔法の発動:** 言葉がどう変わっていったかが表示され、Jev がどれだけ意味が残ったかを判定し、チームの魔法が 壁に命中します。完全一致はクリティカルヒット、意味が失われると魔法は不発(ぷすん…)。チェーンが長いほど ダメージが大きくなるので(×人数/2)、大きなチームも不利になりません。バトルログには Jev の判定と確信度が 表示されます。 5. **敵のターン:** 壁が反撃します。不発の魔法が多いほど強い攻撃になります。 6. パーティーの HP がなくなる前に壁を壊せば、関西に橋がかかります。 ホストはロビーでボットの追加・削除(開発モード)や、進行中のゲームを全員分終了(■ 終了)できます。 ### 判定について チェーンが完成するたびに、Jev に1つの選択式の質問をします — 最後の文は元の言葉の意味を保っているか (完全一致 / 同じ意味 / 関連 / 失われた)。その確率がそのままダメージ計算に使われます。元の言葉と完全に 一致した場合は API を使わず、そのまま完全ヒットになります。慣用句は意味で判定するため、直訳で意味が 変わってしまった場合は正解になりません。Jev に接続できない場合は、魔法が止まらないようモック判定に切り替わります。 ### ローカルで動かす ```bash pnpm install pnpm dev # API は :3210(または $API_PORT)、Vite は :5173 ``` - プレイヤー: http://localhost:5173 ・ プロジェクター表示: http://localhost:5173/?screen ・ トレーラー: http://localhost:5173/?trailer - テスト: `pnpm test` ・ 型チェック: `pnpm typecheck` ### 本番環境 ```bash pnpm build && pnpm start # すべて :3210(または $PORT)で動作 ``` `render.yaml` で [Render](https://render.com) にデプロイしています: https://language-wall.onrender.com/ (無料プラン) 環境変数: - `TYPESAFE_API_KEY` — Jev の判定を有効にします。未設定の場合はモック判定になります。ローカルでは git に 含まれない `.env` に、本番では Render の **Environment Variables** に設定してください(コードには書きません)。 - `PORT`(本番)、`API_PORT`(開発用 API)、`HOP_SECONDS`(1人あたりの制限時間、初期値45秒)、 `DEV_BOTS=1`(ホストがボットを追加可能) ### 技術 React 19 + TypeScript + Vite ・ Node 24 + Express + Socket.IO(ゲーム状態はサーバーで管理) ・ TypeSafe Jev(判定) ・ kuromoji(ふりがな) ・ SVG / canvas で描くピクセルアートと Web Audio のチップチューン音楽

Dāvis Ķemlers
Kyrylo Polovko
Matcha Brothers
ViteReactNode JSJEV
Sam Farberman
Sam FarbermaninOsaka FastHacks #1

2d ago·Oct 9, 2026

0

Hashi

Hashi is a small, portable robot that sits in the room as an interpreter between people who don’t share a language. It listens to both sides and uses a live language model to translate in real time. It introduces each party with the right level of politeness: keigo for the Japanese side and polite English for the foreign side. It can also pull up market data or company information during the conversation. A companion app records a bilingual transcript that anyone can switch between languages and search later. It costs less than a human interpreter, it already knows your business, and it feels more personal than passing a phone back and forth. It works for business meetings, for community groups, and for cultural sites like temples.

Thibault Vieux
Thibault VieuxinOsaka FastHacks #1

2d ago·Oct 9, 2026

0

Drink with me

Going out for a drink shouldn't mean drinking alone. One tap on the big drink button checks you in, and your friends see live what you're having and where. Opted-in people nearby can send you a "Hi", and nothing happens unless you accept. There's no profile and no sign-up, and it's not a dating app. It's just a quick way to turn "I'm having a drink" into "come join me."

Thibault Vieux
Drink w/ m3
NextJSPWATailwindSupabaseWeb PushVercelMapLibre
B

9/30/2026·Sep 30, 2026

0

RunIt

RunIt is the AI chief of staff I run my business on. It reads my texts, email, Instagram DMs, calendar and CRM, and drafts every reply in my own voice, with the context already in it. Plaud is what makes that context complete: most of what matters happens in person or on a call, and it never lands in a text thread or an inbox. Plaud captures it, and RunIt turns it into context. What the demo shows, live on my phone with my real data: 1. Connectors: Plaud, Messages, Gmail, Google Calendar, Instagram, Notion and phone calls, all feeding one context layer. 2. Pre-drafted replies: every text, email and DM that comes in already has a reply drafted from everything RunIt knows about that person, including what we said in a Plaud-recorded conversation. One tap sends it from my own iMessage or Gmail. Each draft shows its sources. 3. Action bundles: when a reply depends on something (check the calendar, confirm a detail), RunIt stages those actions first and waits for my approval. I can send with notes or redraft with notes. 4. Auto: RunIt can carry a conversation for me toward a goal I set (who, what, how long), and only pulls me in when it's stuck. 5. "What did I learn today?": RunIt answers from today's Plaud recordings of the conference talks, with the key takeaways, and offers to send them to someone. Built today at Hack Day: a Plaud Embedded SDK iPhone app (Capacitor) that binds a Plaud NotePin S or Note Pro, syncs recordings, gets a speaker-labeled transcript from the Plaud Transcription API, and hands it to RunIt. RunIt never shows a transcript. It shows what you owe people (drafted in your voice), what they owe you (tracked, with the day it will check in), and what's worth remembering about them (saved only when you say so, brought back at the right moment). Plus a Plaud connector in Settings and "recorded today" context in the chat. Nothing acts on its own. Every send waits for one tap, passes an allowlist and a rate cap, and leaves a receipt. Plaud hears it. RunIt makes sure it gets done.

PlaudPlaud Embedded SDKPlaud Transcription APIClaude (Anthropic)Next.jsCapacitorPythonFastAPISQLiteiMessageGmail APIGoogle Calendar APIInstagram DMsNotion API
R

9/29/2026·Sep 29, 2026

0

Voice Agent Metaharness: one ecosystem for all of your agents

One ecosystem for all of your agents: one Claude across every surface (phone voice, web, Claude Code, an agent team, a WebXR world) sharing one picture of your day. Plaud: a clip-on recorder captures what happens around you. contextlog: a shared-context MCP server hands that day to whichever surface you return to (while_away), lets every agent share what's live in its context (context_ping), and catches ideas you say out loud (idea_log). Band.ai: an org of 9 agents (PM, Architect, Frontend, Backend, QA, DevOps, UXR, Research) led by Claude Code; each logged idea becomes a GitHub issue and project card, posted to the Band room where the PM agent triages it. Similarweb: UXR and market research (41 API calls, 16 domains): ambient capture is growing fast (Plaud +155% YoY, Granola +257%) while recorders commoditize, and Plaud's audience already overlaps with Claude's, so the value is the shared context above the device. Also registered in DuploCloud as a REST provider. DuploCloud DevKit: the control plane, with Neo4j (mcp-neo4j-cypher), contextlog, Band and Similarweb registered as providers, scopes and MCP servers. Dreamspace: the spatial surface; its guide Lumen speaks with spatial audio and voice-codes the world on request, and Claude can join hands-free over MCP. Vultr: hosts the shared MCP server over HTTPS. and github.com/rachael/contextlog Repos: github.com/rachael/dreamspace and github.com/rachael/duplocloud-setup