0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

スケジュールアプリをPWAで自作してみた話

Last updated at Posted at 2025-08-10

概要

スケジュール管理アプリ、世の中にごまんと溢れています。この中でスケジュール管理アプリを自作する理由、それは「ニッチな特色」を持つスケジュールアプリが欲しい、という欲望に他なりません。
正直私は、スケジュールアプリ、もとい自分で書いた予定を信用していないタチなので、スケジュールアプリに求めることは「ブッキングを回避する」こと、「予定があるかどうか確かめる」こと、そしてなにより「一瞬で予定を入れられる」ことです。この3つを同時に満たせるようなスケジュールアプリが……見つかりませんでしたorz
ここでないなら作っちゃえ精神が茶々を入れ、アプリ「だいたいスケジュール」が誕生したわけです。作った方が時間かかるのは言ってはいけない

完成品

「だいたいスケジュール」 ↓このリンクからホームページに飛べます。

特徴

  1. 一瞬で予定が入れられる
    最短5秒で予定を追加できるスピードが特徴です。必ず入力しなければいけない項目を最低限にすることで、「予定を追加すること」に対する面倒さを払拭します。
  2. どの時間帯に予定が入っているか一目でわかる
    多くのスケジュールアプリでは、予定の一覧表示は次のどちらかの形態をとります。
    ・月表示 → 1日の予定は上詰めされ、順番は分かっても朝か夜かが分からない
    ・週表示 → 予定がどの時間で入っているか分かるが、月全体の予定が見通せない
    このアプリでは、予定は時間帯で登録されるため、月表示でも上に詰められることなく、どの時間帯に予定があるか一目で分かります。
  3. オフラインでも動く
    PWA の Service Worker を使っているので、オフラインでもキャッシュがあれば動く設計になっています。

こんな人におすすめ

・予定を追加するのが面倒くさいな……と感じている人
・スケジュールアプリに軽さ、手軽さを求めている人
・予定を1分単位で管理する必要がない人

こんな人は使わない方がいいかも

・分単位のスケジュールをこなしている人
・1日当たりの予定の密度が高い人
・Cookie 恐怖症の人

使ったツール

基本は HTML 、CSS 、JavaScript 、(おまけ程度のPHP)で動いています。
開発には Chrome の「開発者ツール」を使っています。そうです、HTML 直書き、JavaScript 直書きです。jQuery なども使っていません。生JS開発と言ったら友人に怒られました

開発期間は約1か月(Qiita書いている時間を除く)、総開発時間は約60時間でした。(3600分。この時間を費やせば予定を何千件も入力できたのでは)

ちなみに、開発者のプログラミング歴は5年程度、競プロはほぼ未タッチです。

金欠です

正直、リターンも見込めないどころか、そもそも需要があるのかどうか分からないようなアプリを配信するだけのお金はありませんでした。Apple の App Store に配信しようとするだけでも軽く1万円が飛んでいきます。(独禁法違反級) そのため、PWA (Progressive Web Apps) を採用して、無料でアプリを配信することにしました。

ちなみに Buy Me a Coffee と GitHub Sponsors をやってます。良ければ応援してください。

さいごに

ここにこのアプリを作る上で、いろいろ疑問とか発見とかあったので、記事を纏めておきます。

(執筆中)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?