$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
蔵書管理アプリを作りました
Search
Tiny Mouse
December 13, 2019
Programming
0
640
蔵書管理アプリを作りました
浜松IT合同勉強会 2019/12/7
Mobile Act NAGOYA 2019/12/13
Tiny Mouse
December 13, 2019
Tweet
Share
More Decks by Tiny Mouse
See All by Tiny Mouse
今年がんばったこと
tinymouse
0
34
今年がんばったこと
tinymouse
0
86
【LT会】インプット・アウトプットどうしてる?
tinymouse
0
48
今年がんばったこと
tinymouse
0
170
.NET MAUI+Blazor を使ってみた
tinymouse
0
180
【LT会】この技術書がすごい
tinymouse
1
190
蔵書管理アプリを作り直した
tinymouse
1
990
Windows アプリの開発手段の選択肢をまとめてみた
tinymouse
0
140
Google Apps Script アプリを配付する
tinymouse
0
120
Other Decks in Programming
See All in Programming
Full-Cycle Reactivity in Angular: SignalStore mit Signal Forms und Resources
manfredsteyer
PRO
0
120
「コードは上から下へ読むのが一番」と思った時に、思い出してほしい話
panda728
PRO
38
25k
JETLS.jl ─ A New Language Server for Julia
abap34
1
340
宅宅自以為的浪漫:跟 AI 一起為自己辦的研討會寫一個售票系統
eddie
0
500
sbt 2
xuwei_k
0
260
大体よく分かるscala.collection.immutable.HashMap ~ Compressed Hash-Array Mapped Prefix-tree (CHAMP) ~
matsu_chara
1
220
AIコーディングエージェント(skywork)
kondai24
0
160
Cell-Based Architecture
larchanjo
0
110
Go コードベースの構成と AI コンテキスト定義
andpad
0
120
配送計画の均等化機能を提供する取り組みについて(⽩⾦鉱業 Meetup Vol.21@六本⽊(数理最適化編))
izu_nori
0
150
まだ間に合う!Claude Code元年をふりかえる
nogu66
5
740
関数実行の裏側では何が起きているのか?
minop1205
1
680
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
34k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.2k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Unsuck your backbone
ammeep
671
58k
Documentation Writing (for coders)
carmenintech
76
5.2k
GraphQLの誤解/rethinking-graphql
sonatard
73
11k
Practical Orchestrator
shlominoach
190
11k
Context Engineering - Making Every Token Count
addyosmani
9
500
Navigating Team Friction
lara
191
16k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
Transcript
Tiny Mouse 蔵書管理アプリを作りました Mobile Act NAGOYA 2019/12/13
n @tinymouse_jp n SI 企業の SE n 日曜プログラマ n 二児の父
n 静岡県浜松市出身 n 東京都品川区在住。名古屋市在住。 n Windows 愛用。iPhone Android スマホ n Android の会浜松支部、よちよち Android の会、 Hamamatsu.js Tiny Mouse 自己紹介
蔵書のリストを作りたい l 置き場所(どの部屋かどの書棚か)記録し たい l 多量の蔵書を一気に登録したい(読んだ都 度でなく既存の蔵書を登録する) l スマホで入力してパソコンで管理したい
そんな蔵書管理ソフトが見つからない ないなら作るか 置き場所ごとに一気に登録できる スマホで入力してパソコンで管理できる
蔵書管理アプリを作る Google Spreadsheet データベースは・・
蔵書管理アプリを作る Google Apps Script バックエンドは・・
ISBN から書籍情報を取得する l 国立国会図書館のデータベースサービス →CD や DVD の情報が登録されていない l 楽天ブックスのデータベースサービス
→登録して API キーを貰う必要あり l Amazon の検索ページ →スクレイピングする。やりすぎるとブロックされる
サーバサイドに Google Apps Script を使う 「ウェブアプリケーションとして公開」 GET メソッド、POST メソッドを受けて JSON
などでレスポンスできる
蔵書管理アプリを作る HTML+JavaScript+Cordova フロントエンドは・・
蔵書管理アプリを作る Onsen UI+jQuery+Vue.js フロントエンドは・・
https://sites.google.com/view/tinymouse-zoshodaicho 蔵書管理アプリを作った
l 蔵書を楽に登録したい
バーコード表示を読んで登録する
バーコード表示がある とは限らない
手入力できる
ISBN コードを OCR できるようにする
Google Drive を使って OCR する navigator.camera.getPicture( function(image){ $.ajax({ url: “https://script.google.com/macros/s/◦◦◦◦◦◦◦◦/exec”,
type: 'POST', data: { filedata: image, }, }) function doPost(e) { var data = Utilities.base64Decode(e.parameter.filedata, Utilities.Charset.UTF_8); var title = Utilities.formatDate(new Date, 'Asia/Tokyo', 'yyyyMMddhhmmss'); var blob = Utilities.newBlob(data, MimeType.PNG, title); var folder = DriveApp.getFileById(ActiveSpreadsheet.getId()).getParents().next(); var file = Drive.Files.insert({ title: title + ".png", mimeType: 'image/png', parents: [{id: folder.getId()}] }, blob, { ocr: true, ocrLanguage: 'ja' }); var doc = DocumentApp.openById(file.getId()); var text = doc.getBody().getText();
l スマホアプリでも登録内容を見たい
スマホアプリでも登録内容を見たい
l スマホアプリでも登録内容を見たい l 蔵書を楽に登録したい
タブを使って画面を切替する UI
タブ切替は今風な UI でない?
FAB を使って新規登録する UI
手入力、バーコード読取した上で保存する
l 登録済の内容をスマホで修正したい
登録済の内容をスマホアプリで修正したい
l 置場を登録できるようにしたい
タグ情報を登録できるようにする 複数選択できるコンボボックス
複数選択できるコンボボックス
タグ一覧を登録できるようにする ドラッグ&ドロップで入替する
ドラッグ&ドロップで入替する
l 連続して登録できるようにしておきたい
連続して登録できるようにしておきたい
蔵書管理アプリを作った ちゃんとモバイルアプリを作ったよ!