Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
謎コイン
Search
ようかん(YosukeInoue
August 25, 2023
Programming
0
69
謎コイン
ようかん(YosukeInoue
August 25, 2023
Tweet
Share
More Decks by ようかん(YosukeInoue
See All by ようかん(YosukeInoue
今から始めるLINEBot入門
inoue2002
0
110
未来の投げ銭箱
inoue2002
2
71
LINEでAI占い師に相談できる “AI占いくん”の開発/改善の過程
inoue2002
0
300
LINEトークルーム広告v1
inoue2002
0
55
レシピ保存くん
inoue2002
0
410
初めてのServiceMessage
inoue2002
0
100
トーク履歴を分析してみる
inoue2002
0
14k
LINEで使えるAIチャットBot “AIチャットくん”とLINEAPI
inoue2002
0
81
LIFFで動く割り勘アプリTATEKAをリリースしてみた話
inoue2002
0
910
Other Decks in Programming
See All in Programming
PHPとAPI Platformで作る本格的なWeb APIアプリケーション(入門編) / phpcon 2024 Intro to API Platform
ttskch
0
160
良いユニットテストを書こう
mototakatsu
5
2k
生成AIでGitHubソースコード取得して仕様書を作成
shukob
0
310
これが俺の”自分戦略” プロセスを楽しんでいこう! - Developers CAREER Boost 2024
niftycorp
PRO
0
190
nekko cloudにおけるProxmox VE利用事例
irumaru
3
420
「Chatwork」Android版アプリを 支える単体テストの現在
okuzawats
0
180
Recoilを剥がしている話
kirik
5
6.6k
Webエンジニア主体のモバイルチームの 生産性を高く保つためにやったこと
igreenwood
0
330
今年一番支援させていただいたのは認証系サービスでした
satoshi256kbyte
1
250
たのしいparse.y
ydah
3
120
From Translations to Multi Dimension Entities
alexanderschranz
2
130
ソフトウェアの振る舞いに着目し 複雑な要件の開発に立ち向かう
rickyban
0
890
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
789
250k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
1.9k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
0
97
Building a Scalable Design System with Sketch
lauravandoore
460
33k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
45
2.2k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
229
52k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
132
33k
Imperfection Machines: The Place of Print at Facebook
scottboms
266
13k
The Cost Of JavaScript in 2023
addyosmani
45
7k
Fireside Chat
paigeccino
34
3.1k
How to train your dragon (web standard)
notwaldorf
88
5.7k
Transcript
謎コイン チーム名
メンバー 井上 陽介(いのうえ ようすけ) フロントエンド担当 LINEBot大好き 大阪からきました
岩田 理央(いわた りおう) バックエンド担当 臼井 陸(うすい りく) フロントエンド担当 太田 圭祐(おおた けいすけ) バックエンド担当 村松 侑(むらまつ ゆう) フロントエンド担当
誰に向けたものか? ・”地元民と旅行客” 地元の人のみが投稿できる口コミサー ビスです アプリケーション概要 ・自分の地元について投稿できる (マップピンで表示) ・地元について質問できる (ex.
旅行客が訪れたとき) 作ったもの「じもとコイン」
まずはぜひ触って見てください!
成果物のデモ
・地元ボイスチャンネルのグループのため,地元色強めで ・地元の課題 → 人口減少 ・最終目標は移住 ・今回は地元の魅力を伝えることに着目 ・地元民は地元の良さを再認識できる(イイねされると気分がいい!) 作ろうと思った背景
まちのコイン ・イベント参加,ゴミ拾い,フードロス削減などに貢献することで コインがもらえる,いろいろ使い道がある(ex. 超高級肉の抽選)! じもとコイン ・「おすすめスポットの投稿」,「投稿にいいね!される」, 「質問に回答する」とコインがもらえる
・コインを使うことで地元について質問できる 類似サービスとの比較
移住支援・地方創生 簡単にその目標は達成できないので、今回はその一歩手前である 「移住するかもしれないになるはじめてのアクション」を設計する 目指すところはただの承認欲求で動くサービスではない → あえていいね数やコイン数のランキングは実装していない →地元から連想される暖かさ、故郷への思いをメインパワーにしたい 私たちが目指す最終目標
作った機能について ・おすすめスポット投稿機能(タイトル,本文,画像) ・イイね機能 ・マップ機能 ・プロフィール機能 ・コイン機能
謎コイン コインを貯めても特に何もない → 貯めるのが楽しい → 行動につながる じもとコインでは… ・もらえる条件 「おすすめスポットの投稿」、「投稿にいいね!される」「質問に回答する」 ・消費方法
コインを使うことで地元について質問できる
コインの分配方法の仮説実装について • 質問回答してxコイン貰える • 質問に答えると何人目に答えたかによってもらえるコインが変動する • もらえるコインの下限は1コイン • 100コイン貰える質問 ◦
1人目: 100コイン ◦ 2人目: 100/2 = 50コイン ◦ … ◦ n人目: 100/n コイン • 貰えるコインが変動することでインフレを防ぐ • 質問に早く答えることに意味を持たせる • 最初は少なめから設定することでインフレを防ぎつつ、市場を調節したい。
使った技術や構成 バックとフロントでリポジトリを分けた バックのapiをフロントで呼び出す 使用技術 フロントエンド ・ TypeScript,React, Vercel, Mapbox GL
JS, PRTIMES API バックエンド ・PHP(Laravel), ClearDB(mysql), LINE API(ログイン)
こだわったポイント フロントエンド ・FireBaseによる画像管理 ・ ・Mapbox GL JSを使用してマップピンを表示 etc… バックエンド ・herokuにデプロイ ・LINE認証
etc…
チャレンジしたこと ・バックからS3へ画像保存(apiでまとめた方がきれい,時間決めて粘った) → 最終的にはフロント側でFirebase Storageに直接アップロードして解決した ・LINE Login (LIFF)を用いたIdToken検証でAPIとのやり取りを実現 ・なぜかわからないけど触りたい、コインを集めたいと思わせる体験設計 ・野良参加メンバー(初対面)での開発でどこまでのアプリを作ることができるか
→ デザインファイルの90%ぐらいは作れた(!?) ・みんなで仲良く、どうすればスムーズに開発できるのかをみんなで考えた
今後の展望 ・コイン機能をもっと検証して、ユーザーが投稿&回答したくなるような バランスを研究していきたい ・APIのレスポンスを早くしたい ・実際に使われるサービスになるように改善と広報を進めていきたい
個別発表: 井上 陽介(いのうえ ようすけ) • デザインファイルの作成 • チームのタスク管理 • フロントエンド
x LINE API の連携 • React App x TypeScript の開発 • Laravel APIの開発のお手伝い “悩みこまずアウトプット 一番テンションが上がるものから作る” “行動者発になるサービスが作れて良かっ た”
None
None
個別発表: 岩田 理央(いわた りおう) 達成した点・こだわった点 ・herokuへのデプロイ(データベース構築) ・apiの作成(/user, /favorite) --[初めて]-- ・方針のすり合わせ(仕様,役割分担,引き際)
感想 ・初ハッカソン ・スピード感 ・初チーム開発(frontとback) debag できること,できないことわかった メンターさん
個別発表: 臼井 陸(うすい りく) 達成した点・こだわった点 • 顔出しでのミーティング、ハッカソンの事前の関係性の構築 • TypeScriptでの本格的な開発への初挑戦 •
複数のコンポーネントで使うことのできるコンポーネントの作成 • MUIの導入によるわかりやすく使いやすいUI 感想 • ハッカソンへの初挑戦 • 自身の課題
個別発表: 太田 圭祐(おおた けいすけ) 達成した点・こだわった点 ・APIの作成(/question, /answer, /report) ・LaravelのMiddlewareを使ってLINE認証プロセスを実装 感想
・Laravelを使うのは初めて ・自身の開発速度を上げたい
個別発表: 村松 侑(むらまつ ゆう) 達成した点とこだわった点 ・MUIを利用したフロント作成 ・ユーザーが使いやすいデザインとなるように意識しました 感想 ・本格的なバックエンドがある環境でフロントを作ることが初めてだったで 認証周りを含めて良い経験が出来ました。
質問タイム 井上 陽介 github.com/inoue2002 岩田 理央 github.com/Rio-Rf
臼井 陸 github.com/Ricccck 太田 圭祐 github.com/melon0658 村松 侑 github.com/Murayu0225