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
Tiny Mouse
December 13, 2019
Programming
0
630
蔵書管理アプリを作りました
浜松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
79
【LT会】インプット・アウトプットどうしてる?
tinymouse
0
45
今年がんばったこと
tinymouse
0
170
.NET MAUI+Blazor を使ってみた
tinymouse
0
170
【LT会】この技術書がすごい
tinymouse
1
180
蔵書管理アプリを作り直した
tinymouse
1
960
Windows アプリの開発手段の選択肢をまとめてみた
tinymouse
0
140
Google Apps Script アプリを配付する
tinymouse
0
120
蔵書管理アプリを作っています
tinymouse
1
530
Other Decks in Programming
See All in Programming
CSC305 Lecture 08
javiergs
PRO
0
280
釣り地図SNSにおける有料機能の実装
nokonoko1203
0
200
Goで実践するドメイン駆動開発 AIと歩み始めた新規プロダクト開発の現在地
imkaoru
4
920
Foundation Modelsを実装日本語学習アプリを作ってみた!
hypebeans
0
130
Go言語はstack overflowの夢を見るか?
logica0419
0
640
技術的負債の正体を知って向き合う
irof
0
270
Domain-centric? Why Hexagonal, Onion, and Clean Architecture Are Answers to the Wrong Question
olivergierke
3
980
テーブル定義書の構造化抽出して、生成AIでDWH分析を試してみた / devio2025tokyo
kasacchiful
0
320
Vueのバリデーション、結局どれを選べばいい? ― 自作バリデーションの限界と、脱却までの道のり ― / Which Vue Validation Library Should We Really Use? The Limits of Self-Made Validation and How I Finally Moved On
neginasu
2
1.7k
Google Opalで使える37のライブラリ
mickey_kubo
3
150
モテるデスク環境
mozumasu
3
1.3k
pnpm に provenance のダウングレード を検出する PR を出してみた
ryo_manba
1
160
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
2
140
Code Review Best Practice
trishagee
72
19k
Building Applications with DynamoDB
mza
96
6.7k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.7k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
The Cost Of JavaScript in 2023
addyosmani
55
9.1k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1k
Scaling GitHub
holman
463
140k
Making Projects Easy
brettharned
120
6.4k
Art, The Web, and Tiny UX
lynnandtonic
303
21k
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 連続して登録できるようにしておきたい
連続して登録できるようにしておきたい
蔵書管理アプリを作った ちゃんとモバイルアプリを作ったよ!