<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Zennの「Flutter」のフィード]]></title><description><![CDATA[Zennのトピック「Flutter」のRSSフィードです]]></description><link>https://zenn.dev/topics/flutter</link><image><url>https://static.zenn.studio/user-upload/topics/cf1ed29009.png</url><title>Zennの「Flutter」のフィード</title><link>https://zenn.dev/topics/flutter</link></image><generator>zenn.dev</generator><lastBuildDate>Mon, 11 May 2026 22:41:54 GMT</lastBuildDate><atom:link href="https://zenn.dev/topics/flutter/feed" rel="self" type="application/rss+xml"/><language><![CDATA[ja]]></language><item><title><![CDATA[flutterコマンドとdartコマンドの違いを整理する]]></title><description><![CDATA[Flutterのプロジェクトで、次のようなコマンドを続けて打つことがあります。
flutter pub get
dart fix --apply
どちらも開発中に使うので、最初は「prefixだけの違い？」と思いやすいです。自分も曖昧だったので、短く整理します。

 結論
flutterはFlutter SDKのCLIで、dartはDart SDKのCLIです。
Flutterアプリの作成、実行、ビルド、Flutterの文脈での依存解決はflutter側です。一方、Dartの解析、修正、フォーマット、純粋なDartパッケージ操作はdart側です。
つまり、flutter pub getと...]]></description><link>https://zenn.dev/hsylife/articles/65217d5f07ca26</link><guid isPermaLink="true">https://zenn.dev/hsylife/articles/65217d5f07ca26</guid><pubDate>Mon, 11 May 2026 10:46:54 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--66ZIZcLT--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:flutter%25E3%2582%25B3%25E3%2583%259E%25E3%2583%25B3%25E3%2583%2589%25E3%2581%25A8dart%25E3%2582%25B3%25E3%2583%259E%25E3%2583%25B3%25E3%2583%2589%25E3%2581%25AE%25E9%2581%2595%25E3%2581%2584%25E3%2582%2592%25E6%2595%25B4%25E7%2590%2586%25E3%2581%2599%25E3%2582%258B%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_37:Yuta%2520Hoshino%2528hsylife%2529%2Cx_203%2Cy_121/g_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9zdGF0aWMuemVubi5zdHVkaW8vdXNlci11cGxvYWQvYXZhdGFyLzgwMDQ0MWJkMDMuanBlZw==%2Cr_max%2Cw_90%2Cx_87%2Cy_95/v1627283836/default/og-base-w1200-v2.png?_a=BACAGSGT" length="0" type="false"/><dc:creator>Yuta Hoshino(hsylife)</dc:creator></item><item><title><![CDATA[Flutter入門④：よく使うWidgetカタログ【レイアウト編】]]></title><description><![CDATA[
 はじめに
Flutter モバイルアプリ開発入門シリーズの第4回です。
前回は StatelessWidget と StatefulWidget の仕組みを学びました。今回は画面を組み立てるために欠かせないレイアウト Widget をカタログ形式で紹介します。
Flutter には100種類以上の Widget がありますが、レイアウトに使う Widget は限られています。この記事で紹介する Widget を使いこなせるようになれば、ほとんどのアプリ画面を組み立てられるようになります。
この記事を読み終えると、以下が理解できます。


Column / Row による縦・横方向のレ...]]></description><link>https://zenn.dev/jian_wang/articles/flutter-layout-widgets</link><guid isPermaLink="true">https://zenn.dev/jian_wang/articles/flutter-layout-widgets</guid><pubDate>Mon, 11 May 2026 10:27:12 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--PNgS4IsU--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:Flutter%25E5%2585%25A5%25E9%2596%2580%25E2%2591%25A3%25EF%25BC%259A%25E3%2582%2588%25E3%2581%258F%25E4%25BD%25BF%25E3%2581%2586Widget%25E3%2582%25AB%25E3%2582%25BF%25E3%2583%25AD%25E3%2582%25B0%25E3%2580%2590%25E3%2583%25AC%25E3%2582%25A4%25E3%2582%25A2%25E3%2582%25A6%25E3%2583%2588%25E7%25B7%25A8%25E3%2580%2591%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_37:ohken%2Cx_203%2Cy_121/g_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2EvQUNnOG9jSUJ6SEltNmZrVlY3YkF0cVRxZXVlMmd6eDF2dkplMUlZMUlTNGVta1RMeWlUX1J3PXMyNTAtYw==%2Cr_max%2Cw_90%2Cx_87%2Cy_95/v1627283836/default/og-base-w1200-v2.png?_a=BACAGSGT" length="0" type="false"/><dc:creator>ohken</dc:creator></item><item><title><![CDATA[非エンジニアがAIだけでアプリをリリースするまでに、開発環境を3回変えた話]]></title><description><![CDATA[
 はじめに
こんにちは、takeMiyaです。
普段はプロダクトマーケティングの領域で仕事をしており、エンジニアではない立場で個人開発に取り組んでいます。
前回の記事では、リリースに辿り着くまでに iOS の App Review でリジェクトされた話を書きました。
▶ 非エンジニアの個人開発者が、iOS App Review でATT絡みのリジェクトを2回喰らって学んだこと
今回は、リリースまでに使った 開発環境の変遷 と かかった費用 についてまとめます。
開発を始めた当初、AI 活用の開発環境としては Cursor や Claude Code がすごい という論調が強い時期でした...]]></description><link>https://zenn.dev/anpiropac/articles/74553b9c3eafab</link><guid isPermaLink="true">https://zenn.dev/anpiropac/articles/74553b9c3eafab</guid><pubDate>Mon, 11 May 2026 06:50:30 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--dlCbUBNT--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:%25E9%259D%259E%25E3%2582%25A8%25E3%2583%25B3%25E3%2582%25B8%25E3%2583%258B%25E3%2582%25A2%25E3%2581%258CAI%25E3%2581%25A0%25E3%2581%2591%25E3%2581%25A7%25E3%2582%25A2%25E3%2583%2597%25E3%2583%25AA%25E3%2582%2592%25E3%2583%25AA%25E3%2583%25AA%25E3%2583%25BC%25E3%2582%25B9%25E3%2581%2599%25E3%2582%258B%25E3%2581%25BE%25E3%2581%25A7%25E3%2581%25AB%25E3%2580%2581%25E9%2596%258B%25E7%2599%25BA%25E7%2592%25B0%25E5%25A2%2583%25E3%2582%25923%25E5%259B%259E%25E5%25A4%2589%25E3%2581%2588%25E3%2581%259F%25E8%25A9%25B1%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_37:takeMiya%2Cx_203%2Cy_121/g_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2EvQUNnOG9jSllraTJyWlZiVXNQeFdiYVM2cVdBWlQybEhEWUZ4ZGpsSnhzNTJ0QzdBY0RTUHpiYXA9czI1MC1j%2Cr_max%2Cw_90%2Cx_87%2Cy_95/v1627283836/default/og-base-w1200-v2.png?_a=BACAGSGT" length="0" type="false"/><dc:creator>takeMiya</dc:creator></item><item><title><![CDATA[非エンジニアの個人開発者が、iOS App Review でATT絡みのリジェクトを2回喰らって学んだこと📱]]></title><description><![CDATA[
 はじめに
こんにちは、takeMiyaです。
エンジニアではない立場で、Flutterを使って個人開発に挑戦しています。
先日（2026年4月）ボードゲームアプリ「TicTacToe GO」を App Store と Google Play でリリースしました。
アプリには Google AdMob のインタースティシャル広告を組み込んでいます。
このアプリを iOS で公開するまでに、Apple の App Review で 2回リジェクト されました。どちらも「ATT（App Tracking Transparency）」絡みの指摘です。
正直、最初のリジェクトメールが届いたとき...]]></description><link>https://zenn.dev/anpiropac/articles/3d6746e2be766c</link><guid isPermaLink="true">https://zenn.dev/anpiropac/articles/3d6746e2be766c</guid><pubDate>Sun, 10 May 2026 07:11:34 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--I3N0OJLI--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:%25E9%259D%259E%25E3%2582%25A8%25E3%2583%25B3%25E3%2582%25B8%25E3%2583%258B%25E3%2582%25A2%25E3%2581%25AE%25E5%2580%258B%25E4%25BA%25BA%25E9%2596%258B%25E7%2599%25BA%25E8%2580%2585%25E3%2581%258C%25E3%2580%2581iOS%2520App%2520Review%2520%25E3%2581%25A7ATT%25E7%25B5%25A1%25E3%2581%25BF%25E3%2581%25AE%25E3%2583%25AA%25E3%2582%25B8%25E3%2582%25A7%25E3%2582%25AF%25E3%2583%2588%25E3%2582%25922%25E5%259B%259E%25E5%2596%25B0%25E3%2582%2589%25E3%2581%25A3%25E3%2581%25A6%25E5%25AD%25A6%25E3%2582%2593%25E3%2581%25A0%25E3%2581%2593%25E3%2581%25A8%2520%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_37:takeMiya%2Cx_203%2Cy_121/g_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2EvQUNnOG9jSllraTJyWlZiVXNQeFdiYVM2cVdBWlQybEhEWUZ4ZGpsSnhzNTJ0QzdBY0RTUHpiYXA9czI1MC1j%2Cr_max%2Cw_90%2Cx_87%2Cy_95/v1627283836/default/og-base-w1200-v2.png?_a=BACAGSGT" length="0" type="false"/><dc:creator>takeMiya</dc:creator></item><item><title><![CDATA[初心者がClaude Codeを使ってFlutterWebで読書管理アプリ「栞」を作ってみた]]></title><description><![CDATA[
 初心者がClaude Codeを使ってFlutter Webで読書管理アプリ「栞」を作ってみた

 はじめに
本を読んでいて、気になったフレーズや感想をメモしたいと思うこと、ありませんか？
私もそのひとりです。読書は好きだけど、読みっぱなしで内容が頭に残らない。メモしようとしても、スマホ・PC・紙とバラバラで、あとから振り返れない。
どの端末からでもログインして、同じデータにアクセスできたら——そう思ったのですが、意外と叶うアプリがなかったんです。
そこで「じゃあ作ろう」と思い立ちました。

 なぜFlutterで作ったのか
ただ、私はアプリ開発の初心者。「何で作ればいいんだろう？」...]]></description><link>https://zenn.dev/waraka/articles/b6e1b384868b3f</link><guid isPermaLink="true">https://zenn.dev/waraka/articles/b6e1b384868b3f</guid><pubDate>Sun, 10 May 2026 06:33:15 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--amxGMnyW--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:%25E5%2588%259D%25E5%25BF%2583%25E8%2580%2585%25E3%2581%258CClaude%2520Code%25E3%2582%2592%25E4%25BD%25BF%25E3%2581%25A3%25E3%2581%25A6FlutterWeb%25E3%2581%25A7%25E8%25AA%25AD%25E6%259B%25B8%25E7%25AE%25A1%25E7%2590%2586%25E3%2582%25A2%25E3%2583%2597%25E3%2583%25AA%25E3%2580%258C%25E6%25A0%259E%25E3%2580%258D%25E3%2582%2592%25E4%25BD%259C%25E3%2581%25A3%25E3%2581%25A6%25E3%2581%25BF%25E3%2581%259F%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_37:waraka%2Cx_203%2Cy_121/g_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2EvQUNnOG9jSTV1cG0taGFiVmdXRjZONWlOSXNmM0ZDSVgyOFlkaXMwTmVuSzZkVWlGV3hfdnc0Rno3QT1zMjUwLWM=%2Cr_max%2Cw_90%2Cx_87%2Cy_95/v1627283836/default/og-base-w1200-v2.png?_a=BACAGSGT" length="0" type="false"/><dc:creator>waraka</dc:creator></item><item><title><![CDATA[Flutter入門③：Widgetの仕組みを理解する【StatelessとStateful】]]></title><description><![CDATA[
 はじめに
Flutter モバイルアプリ開発入門シリーズの第3回です。
前回は Dart の基礎文法を学びました。今回はいよいよ Flutter の UI の核心、Widget（ウィジェット） の仕組みを理解します。
Flutter では「すべてが Widget」と言われます。ボタンもテキストも余白も、画面のレイアウト全体も、アプリの状態管理の仕組みさえも、すべて Widget として表現されます。この概念を正しく理解することが、Flutter 開発を自在に操るための第一歩です。
この記事を読み終えると、以下が理解できます。

Widget ツリーの構造と考え方

Stateless...]]></description><link>https://zenn.dev/jian_wang/articles/flutter-widget-stateless-stateful</link><guid isPermaLink="true">https://zenn.dev/jian_wang/articles/flutter-widget-stateless-stateful</guid><pubDate>Sun, 10 May 2026 02:42:05 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--LUFyBnHN--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:Flutter%25E5%2585%25A5%25E9%2596%2580%25E2%2591%25A2%25EF%25BC%259AWidget%25E3%2581%25AE%25E4%25BB%2595%25E7%25B5%2584%25E3%2581%25BF%25E3%2582%2592%25E7%2590%2586%25E8%25A7%25A3%25E3%2581%2599%25E3%2582%258B%25E3%2580%2590Stateless%25E3%2581%25A8Stateful%25E3%2580%2591%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_37:ohken%2Cx_203%2Cy_121/g_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2EvQUNnOG9jSUJ6SEltNmZrVlY3YkF0cVRxZXVlMmd6eDF2dkplMUlZMUlTNGVta1RMeWlUX1J3PXMyNTAtYw==%2Cr_max%2Cw_90%2Cx_87%2Cy_95/v1627283836/default/og-base-w1200-v2.png?_a=BACAGSGT" length="0" type="false"/><dc:creator>ohken</dc:creator></item><item><title><![CDATA[Codex に大きめの改修を任せた話(会話ログ付き)]]></title><description><![CDATA[!
この記事で扱っている Android アプリ「マイギャラリー」は、現在 Google Play のクローズドテスト中です。
テスト参加者がまだ足りていないため、Codex を使ってどんなアプリができあがったのか気になった方は、記事末尾の案内から参加していただけると助かります。


 はじめに
以前、Codex を使って Flutter 製のギャラリーアプリの「マイギャラリー」を作り、Play Store のクローズドテストまで進めた話を書きました。
https://zenn.dev/mfactory_uh/articles/9093e103462a9d

また、マイギャラリーに単純な...]]></description><link>https://zenn.dev/mfactory_uh/articles/6ff283fc71cb38</link><guid isPermaLink="true">https://zenn.dev/mfactory_uh/articles/6ff283fc71cb38</guid><pubDate>Sat, 09 May 2026 23:17:59 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--Kj49z2gK--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:Codex%2520%25E3%2581%25AB%25E5%25A4%25A7%25E3%2581%258D%25E3%2582%2581%25E3%2581%25AE%25E6%2594%25B9%25E4%25BF%25AE%25E3%2582%2592%25E4%25BB%25BB%25E3%2581%259B%25E3%2581%259F%25E8%25A9%25B1%2528%25E4%25BC%259A%25E8%25A9%25B1%25E3%2583%25AD%25E3%2582%25B0%25E4%25BB%2598%25E3%2581%258D%2529%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_37:UH%2Cx_203%2Cy_121/g_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly96ZW5uLWRldi5naXRodWIuaW8vZGVmYXVsdC1hdmF0YXJzL2RhcmsvbS5wbmc=%2Cr_max%2Cw_90%2Cx_87%2Cy_95/v1627283836/default/og-base-w1200-v2.png?_a=BACAGSGT" length="0" type="false"/><dc:creator>UH</dc:creator></item><item><title><![CDATA[【備忘録】miseを用いたFlutter・Dartの環境構築👀]]></title><description><![CDATA[
 はじめに
表題の通り、今回はmiseを用いたFlutter・Dartの環境構築に関して備忘録として記事を書きたいと思います。
!
前提：

OSはmacOSとする

.zshrcは既に存在する
homebrewをインストール済み
Apple Developerアカウントを既に持っている
開発ターミナルはVSCodeとする

加えて、Flutterのインストールをすれば自動でDartもインストールされますので、Dartのインストール確認は省略するものとします。


 手順

 1. mise関連の構築
まずはmiseをインストールします。
brew install mise
その後、プ...]]></description><link>https://zenn.dev/hide_yuki/articles/6fcd9255b12e2a</link><guid isPermaLink="true">https://zenn.dev/hide_yuki/articles/6fcd9255b12e2a</guid><pubDate>Sat, 09 May 2026 14:17:58 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--UPTgP-JL--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:%25E3%2580%2590%25E5%2582%2599%25E5%25BF%2598%25E9%258C%25B2%25E3%2580%2591mise%25E3%2582%2592%25E7%2594%25A8%25E3%2581%2584%25E3%2581%259FFlutter%25E3%2583%25BBDart%25E3%2581%25AE%25E7%2592%25B0%25E5%25A2%2583%25E6%25A7%258B%25E7%25AF%2589%2520%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_37:Hideyuki%2520Fujihara%2Cx_203%2Cy_121/g_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9zdGF0aWMuemVubi5zdHVkaW8vdXNlci11cGxvYWQvYXZhdGFyL2MzNWZhMDhkZTkuanBlZw==%2Cr_max%2Cw_90%2Cx_87%2Cy_95/v1627283836/default/og-base-w1200-v2.png?_a=BACAGSGT" length="0" type="false"/><dc:creator>Hideyuki Fujihara</dc:creator></item><item><title><![CDATA[Flutter入門②：Dartの基礎をFlutterで学ぶ【変数・型・クラス・null安全】]]></title><description><![CDATA[
 はじめに
Flutter モバイルアプリ開発入門シリーズの第2回です。
前回は環境構築を行い、Hello World アプリを動かしました。今回は Flutter の土台となるプログラミング言語 Dart の基礎を学びます。
Dart は Google が開発した言語で、JavaScript や Java に似た構文を持ちつつ、null 安全や型推論など現代的な機能を備えています。Flutter を書くうえで必要な要素に絞って解説するので、他言語の経験がある方なら1時間ほどで読み終えられます。
この記事を読み終えると、以下が理解できます。

変数・定数の宣言と型システム
関数の書き方...]]></description><link>https://zenn.dev/jian_wang/articles/flutter-dart-basics</link><guid isPermaLink="true">https://zenn.dev/jian_wang/articles/flutter-dart-basics</guid><pubDate>Sat, 09 May 2026 00:46:12 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--9w7QwTvn--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:Flutter%25E5%2585%25A5%25E9%2596%2580%25E2%2591%25A1%25EF%25BC%259ADart%25E3%2581%25AE%25E5%259F%25BA%25E7%25A4%258E%25E3%2582%2592Flutter%25E3%2581%25A7%25E5%25AD%25A6%25E3%2581%25B6%25E3%2580%2590%25E5%25A4%2589%25E6%2595%25B0%25E3%2583%25BB%25E5%259E%258B%25E3%2583%25BB%25E3%2582%25AF%25E3%2583%25A9%25E3%2582%25B9%25E3%2583%25BBnull%25E5%25AE%2589%25E5%2585%25A8%25E3%2580%2591%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_37:ohken%2Cx_203%2Cy_121/g_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2EvQUNnOG9jSUJ6SEltNmZrVlY3YkF0cVRxZXVlMmd6eDF2dkplMUlZMUlTNGVta1RMeWlUX1J3PXMyNTAtYw==%2Cr_max%2Cw_90%2Cx_87%2Cy_95/v1627283836/default/og-base-w1200-v2.png?_a=BACAGSGT" length="0" type="false"/><dc:creator>ohken</dc:creator></item><item><title><![CDATA[老眼向けUIを本気で考える① ～リスト表示編～]]></title><description><![CDATA[
 始まりはお客さんからのクレーム
私は倉庫管理のアプリを作製していますが、以前から"地味な"問題がありました。それは"詰め込み過ぎ問題"です。お客さんとしては様々な情報に手元の端末からアクセスしたい、という希望があって、それにできるだけ応えるよう設計したのですが、如何せん端末は以前はiPhone SEで、現在は業務用のAndroid機で、いずれにしても画面が小さいのです。画面が小さいのは、つまり端末が小さいので、特に手の小さい女性に好まれるようです。
しかし画面が小さいにも関わらず、情報を詰め込むと、当然フォントは小さめになります。とは言え、若い人はそれでも良いのです。問題は老眼になっ...]]></description><link>https://zenn.dev/spacehijackle/articles/36f5e0d15cbe52</link><guid isPermaLink="true">https://zenn.dev/spacehijackle/articles/36f5e0d15cbe52</guid><pubDate>Fri, 08 May 2026 04:46:10 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--VE8BcKOU--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:%25E8%2580%2581%25E7%259C%25BC%25E5%2590%2591%25E3%2581%2591UI%25E3%2582%2592%25E6%259C%25AC%25E6%25B0%2597%25E3%2581%25A7%25E8%2580%2583%25E3%2581%2588%25E3%2582%258B%25E2%2591%25A0%2520%25EF%25BD%259E%25E3%2583%25AA%25E3%2582%25B9%25E3%2583%2588%25E8%25A1%25A8%25E7%25A4%25BA%25E7%25B7%25A8%25EF%25BD%259E%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_37:Rikako-DX%2Cx_203%2Cy_121/g_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2EvQUNnOG9jS0d5a0JWVXpmUVRoZjZnT1cwb1FHSG5lY1d0RlpJVHhRMkJTb1JHMjRwT2FRWnMxM3M9czk2LWM=%2Cr_max%2Cw_90%2Cx_87%2Cy_95/v1627283836/default/og-base-w1200-v2.png?_a=BACAGSGT" length="0" type="false"/><dc:creator>Rikako-DX</dc:creator></item><item><title><![CDATA[クラウド時代の逆張り：GitHub Actions を手元のM1 Maxに移して年19万円＋月30時間を取り戻す]]></title><description><![CDATA[「クラウドCIにすべて任せる」が常識化した今、あえて手元のM1 Maxにビルドを戻したらどうなるか を実費ベースで試算した。

3つのFlutterリポジトリのGitHub Actions使用状況を調査
実請求CSVから集計すると 直近30日で $120.65（約18,940円） だった
うち macOSビルドが76%（$92.13） を占める
M1 Max を self-hosted runner にすれば iOS + Android の両方をローカル化 でき、年間 約19万円のコスト削減

ビルド時間は 16〜18分 → 5〜7分（約1/3） に短縮、月30時間の待ち時間削減
専用機...]]></description><link>https://zenn.dev/dotdtech_blog/articles/d55cb0f919ccfb</link><guid isPermaLink="true">https://zenn.dev/dotdtech_blog/articles/d55cb0f919ccfb</guid><pubDate>Thu, 07 May 2026 12:37:53 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--ihUlRKyl--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:%25E3%2582%25AF%25E3%2583%25A9%25E3%2582%25A6%25E3%2583%2589%25E6%2599%2582%25E4%25BB%25A3%25E3%2581%25AE%25E9%2580%2586%25E5%25BC%25B5%25E3%2582%258A%25EF%25BC%259AGitHub%2520Actions%2520%25E3%2582%2592%25E6%2589%258B%25E5%2585%2583%25E3%2581%25AEM1%2520Max%25E3%2581%25AB%25E7%25A7%25BB%25E3%2581%2597%25E3%2581%25A6%25E5%25B9%25B419%25E4%25B8%2587%25E5%2586%2586%25EF%25BC%258B%25E6%259C%258830%25E6%2599%2582%25E9%2596%2593%25E3%2582%2592%25E5%258F%2596%25E3%2582%258A%25E6%2588%25BB%25E3%2581%2599%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_34:nailaobaba%2Cx_220%2Cy_108/bo_3px_solid_rgb:d6e3ed%2Cg_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9zdGF0aWMuemVubi5zdHVkaW8vdXNlci11cGxvYWQvYXZhdGFyLzcxNTMxNmU4NDMuanBlZw==%2Cr_20%2Cw_90%2Cx_92%2Cy_102/co_rgb:6e7b85%2Cg_south_west%2Cl_text:notosansjp-medium.otf_30:dotD%2520Tech%2520Blog%2Cx_220%2Cy_160/bo_4px_solid_white%2Cg_south_west%2Ch_50%2Cl_fetch:aHR0cHM6Ly9zdGF0aWMuemVubi5zdHVkaW8vdXNlci11cGxvYWQvYXZhdGFyLzNlMzIxMzYxYzAuanBlZw==%2Cr_max%2Cw_50%2Cx_139%2Cy_84/v1627283836/default/og-base-w1200-v2.png?_a=BACAGSGT" length="0" type="false"/><dc:creator>nailaobaba</dc:creator></item><item><title><![CDATA[Flutter入門①：環境構築からHello Worldまで【Mac/Windows対応】]]></title><description><![CDATA[
 はじめに
この記事は、Flutterでモバイルアプリ開発を始めたい方に向けた全12回シリーズの第1回です。
Flutter を使うと、iOS と Android 両方に対応したアプリを1つのコードベースで開発できます。Google が開発・メンテナンスしているフレームワークで、近年日本でも採用企業・個人開発者が急増しています。
この記事を読み終えると、以下ができるようになります。

Flutter SDK のインストールと初期設定
Android エミュレータ / iOS シミュレータの起動
最初のアプリ「Hello World」の実行

対象読者： プログラミング経験はあるが Fl...]]></description><link>https://zenn.dev/jian_wang/articles/flutter-intro-setup</link><guid isPermaLink="true">https://zenn.dev/jian_wang/articles/flutter-intro-setup</guid><pubDate>Thu, 07 May 2026 12:26:29 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--WwlfJd8i--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:Flutter%25E5%2585%25A5%25E9%2596%2580%25E2%2591%25A0%25EF%25BC%259A%25E7%2592%25B0%25E5%25A2%2583%25E6%25A7%258B%25E7%25AF%2589%25E3%2581%258B%25E3%2582%2589Hello%2520World%25E3%2581%25BE%25E3%2581%25A7%25E3%2580%2590Mac%252FWindows%25E5%25AF%25BE%25E5%25BF%259C%25E3%2580%2591%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_37:ohken%2Cx_203%2Cy_121/g_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2EvQUNnOG9jSUJ6SEltNmZrVlY3YkF0cVRxZXVlMmd6eDF2dkplMUlZMUlTNGVta1RMeWlUX1J3PXMyNTAtYw==%2Cr_max%2Cw_90%2Cx_87%2Cy_95/v1627283836/default/og-base-w1200-v2.png?_a=BACAGSGT" length="0" type="false"/><dc:creator>ohken</dc:creator></item><item><title><![CDATA[Flutter + Firebase アプリ × Claude Code ハーネスエンジニアリング検証レポート]]></title><description><![CDATA[
 1. はじめに
このレポートは、Claude Code を素のまま会話で使うのではなく、Agents / Skills / Hooks / MCP の 4 層ハーネス を組んで AI コーディングを「仕組みで縛る」方向に倒した実験のまとめです。

 2. 背景：AI コーディングのよくある課題
実際に開発を回しながら 自分の手で踏み抜いた順 で書きます。

対話型だと セッションを跨ぐと文脈が消える → 翌日に「どこまで進んだ？」を再説明するコストが毎回かかります
AI が自分の実装を自分で「できました」と言う → 採点バイアス。テストも通っているが本当に動くかは怪しいです
スプリン...]]></description><link>https://zenn.dev/never_inc_dev/articles/7909da3ac54885</link><guid isPermaLink="true">https://zenn.dev/never_inc_dev/articles/7909da3ac54885</guid><pubDate>Thu, 07 May 2026 09:33:04 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--mYe7jeSN--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:Flutter%2520%252B%2520Firebase%2520%25E3%2582%25A2%25E3%2583%2597%25E3%2583%25AA%2520%25C3%2597%2520Claude%2520Code%2520%25E3%2583%258F%25E3%2583%25BC%25E3%2583%258D%25E3%2582%25B9%25E3%2582%25A8%25E3%2583%25B3%25E3%2582%25B8%25E3%2583%258B%25E3%2582%25A2%25E3%2583%25AA%25E3%2583%25B3%25E3%2582%25B0%25E6%25A4%259C%25E8%25A8%25BC%25E3%2583%25AC%25E3%2583%259D%25E3%2583%25BC%25E3%2583%2588%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_34:shohei%2540%25E6%25A0%25AA%25E5%25BC%258F%25E4%25BC%259A%25E7%25A4%25BENever%2Cx_220%2Cy_108/bo_3px_solid_rgb:d6e3ed%2Cg_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9zdGF0aWMuemVubi5zdHVkaW8vdXNlci11cGxvYWQvYXZhdGFyLzA0MWQ4NzViOWMuanBlZw==%2Cr_20%2Cw_90%2Cx_92%2Cy_102/co_rgb:6e7b85%2Cg_south_west%2Cl_text:notosansjp-medium.otf_30:%25E6%25A0%25AA%25E5%25BC%258F%25E4%25BC%259A%25E7%25A4%25BENever%2Cx_220%2Cy_160/bo_4px_solid_white%2Cg_south_west%2Ch_50%2Cl_fetch:aHR0cHM6Ly9zdGF0aWMuemVubi5zdHVkaW8vdXNlci11cGxvYWQvYXZhdGFyLzRmYmQ3ZDM3OWUuanBlZw==%2Cr_max%2Cw_50%2Cx_139%2Cy_84/v1627283836/default/og-base-w1200-v2.png?_a=BACAGSGT" length="0" type="false"/><dc:creator>shohei@株式会社Never</dc:creator></item><item><title><![CDATA[Codexに雑に頼んでも、単純な機能追加ならかなり楽できた（やり取り履歴付き）]]></title><description><![CDATA[
 はじめに
前回、Codexを使ってFlutter製のギャラリーアプリをPlay Storeのクローズドテストまで作った話を書きました。
https://zenn.dev/mfactory_uh/articles/9093e103462a9d
!
その記事の最後でクローズドテスト参加者も募集していたのですが、正直なところ、まだあまり集まっていません。

そこでまずは身近な家族に使ってもらいました。
すると、初回起動時の写真・動画の権限ダイアログで止まりました。

どれを選べばいいのか分からない

作っている側としては、ギャラリーアプリなので写真・動画へのアクセスが必要なのは当然だと思っ...]]></description><link>https://zenn.dev/mfactory_uh/articles/fa6f3e516cc7cf</link><guid isPermaLink="true">https://zenn.dev/mfactory_uh/articles/fa6f3e516cc7cf</guid><pubDate>Wed, 06 May 2026 22:14:19 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--cASy-2JV--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:Codex%25E3%2581%25AB%25E9%259B%2591%25E3%2581%25AB%25E9%25A0%25BC%25E3%2582%2593%25E3%2581%25A7%25E3%2582%2582%25E3%2580%2581%25E5%258D%2598%25E7%25B4%2594%25E3%2581%25AA%25E6%25A9%259F%25E8%2583%25BD%25E8%25BF%25BD%25E5%258A%25A0%25E3%2581%25AA%25E3%2582%2589%25E3%2581%258B%25E3%2581%25AA%25E3%2582%258A%25E6%25A5%25BD%25E3%2581%25A7%25E3%2581%258D%25E3%2581%259F%25EF%25BC%2588%25E3%2582%2584%25E3%2582%258A%25E5%258F%2596%25E3%2582%258A%25E5%25B1%25A5%25E6%25AD%25B4%25E4%25BB%2598%25E3%2581%258D%25EF%25BC%2589%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_37:UH%2Cx_203%2Cy_121/g_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly96ZW5uLWRldi5naXRodWIuaW8vZGVmYXVsdC1hdmF0YXJzL2RhcmsvbS5wbmc=%2Cr_max%2Cw_90%2Cx_87%2Cy_95/v1627283836/default/og-base-w1200-v2.png?_a=BACAGSGT" length="0" type="false"/><dc:creator>UH</dc:creator></item><item><title><![CDATA[Flutter/MX 入門：Clojure で Flutter アプリを書く（Linux ハンズオン）]]></title><description><![CDATA[!
本記事は Linux（Ubuntu 系）でのハンズオン をベースに執筆しています。Mac 環境でも動作するはずですが、コマンド差分は適宜補足します。Windows は未検証です。
私は Flutter のことは一切知りません。この記事はClaudeに手伝ってもらい書いています。この記事を読みながら自分でハンズオンしてみて、加筆修正行いました。


 1. はじめに
モバイルアプリを clojure で書きたいと思い、kennytilton/flutter-mx をやってみることにしました。本記事では Flutter/MX とは何か、なぜ Clojure で Flutter が書けるの...]]></description><link>https://zenn.dev/shinseitaro/articles/flutter-mx-getting-started</link><guid isPermaLink="true">https://zenn.dev/shinseitaro/articles/flutter-mx-getting-started</guid><pubDate>Wed, 06 May 2026 02:10:55 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--_ugdaclr--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:Flutter%252FMX%2520%25E5%2585%25A5%25E9%2596%2580%25EF%25BC%259AClojure%2520%25E3%2581%25A7%2520Flutter%2520%25E3%2582%25A2%25E3%2583%2597%25E3%2583%25AA%25E3%2582%2592%25E6%259B%25B8%25E3%2581%258F%25EF%25BC%2588Linux%2520%25E3%2583%258F%25E3%2583%25B3%25E3%2582%25BA%25E3%2582%25AA%25E3%2583%25B3%25EF%25BC%2589%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_37:%25E3%2581%2597%25E3%2582%2593%25E3%2581%259B%25E3%2581%2584%25E3%2581%259F%25E3%2582%258D%25E3%2581%2586%2Cx_203%2Cy_121/g_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9zdGF0aWMuemVubi5zdHVkaW8vdXNlci11cGxvYWQvYXZhdGFyL2M1MDNiNTkzZGYuanBlZw==%2Cr_max%2Cw_90%2Cx_87%2Cy_95/v1627283836/default/og-base-w1200-v2.png?_a=BACAGSGT" length="0" type="false"/><dc:creator>しんせいたろう</dc:creator></item><item><title><![CDATA[iOS画像付きプッシュ通知実装 & ビルドエラー解消 完全ガイド]]></title><description><![CDATA[本ドキュメントは、iOSでの画像付きプッシュ通知（リッチ通知）の実装手順と、それに伴い発生したビルドエラー（Multiple commands produce）の解消法をまとめたものです。


 1. 事前準備：Notification Service Extensionの追加 (Xcode操作)
画像付き通知を実現するには、メインアプリとは別に「通知拡張機能」ターゲットが必要です。


ターゲットの作成:

Xcodeでプロジェクトを開き、File &gt; New &gt; Target... を選択します。

Notification Service Extension を選択し、...]]></description><link>https://zenn.dev/saki1198/articles/0c2d196e54dfff</link><guid isPermaLink="true">https://zenn.dev/saki1198/articles/0c2d196e54dfff</guid><pubDate>Wed, 06 May 2026 01:00:06 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--ldKs-FpL--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:iOS%25E7%2594%25BB%25E5%2583%258F%25E4%25BB%2598%25E3%2581%258D%25E3%2583%2597%25E3%2583%2583%25E3%2582%25B7%25E3%2583%25A5%25E9%2580%259A%25E7%259F%25A5%25E5%25AE%259F%25E8%25A3%2585%2520%2526%2520%25E3%2583%2593%25E3%2583%25AB%25E3%2583%2589%25E3%2582%25A8%25E3%2583%25A9%25E3%2583%25BC%25E8%25A7%25A3%25E6%25B6%2588%2520%25E5%25AE%258C%25E5%2585%25A8%25E3%2582%25AC%25E3%2582%25A4%25E3%2583%2589%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_37:saki1198%2Cx_203%2Cy_121/g_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2EvQUFUWEFKeDh5d3pYQUVsSTdrdGV3aW5YdXQzdlE5MnVwMllmMnl4aGVFbXg9czk2LWM=%2Cr_max%2Cw_90%2Cx_87%2Cy_95/v1627283836/default/og-base-w1200-v2.png?_a=BACAGSGT" length="0" type="false"/><dc:creator>saki1198</dc:creator></item><item><title><![CDATA[【Firebase × Flutter】匿名認証の活用で面倒なログイン操作を排除したUI・UXを作る]]></title><description><![CDATA[
 はじめに
Firebaseの匿名認証では、ユーザに面倒なログイン操作を強要せずに、各デバイスを一意に管理することができます。例えば、

Firebase Cloud Messagingによるプッシュ通知
Realtime Databaseでの高速なリアルタイムデータ管理
Firestoreでのデータ管理
に活用できます。
本記事では、Flutterと匿名認証を連携した実装例、テスト環境と実環境構築を紹介します。


 必要なツールのインストール
必要となるツールは主に2つです。

Firebase CLI
Flutterfire

ここでは、この2つのインストール方法について簡単に紹...]]></description><link>https://zenn.dev/psytousan/articles/6ab5ff005aab3d</link><guid isPermaLink="true">https://zenn.dev/psytousan/articles/6ab5ff005aab3d</guid><pubDate>Tue, 05 May 2026 15:15:48 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--c0LkTy_B--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:%25E3%2580%2590Firebase%2520%25C3%2597%2520Flutter%25E3%2580%2591%25E5%258C%25BF%25E5%2590%258D%25E8%25AA%258D%25E8%25A8%25BC%25E3%2581%25AE%25E6%25B4%25BB%25E7%2594%25A8%25E3%2581%25A7%25E9%259D%25A2%25E5%2580%2592%25E3%2581%25AA%25E3%2583%25AD%25E3%2582%25B0%25E3%2582%25A4%25E3%2583%25B3%25E6%2593%258D%25E4%25BD%259C%25E3%2582%2592%25E6%258E%2592%25E9%2599%25A4%25E3%2581%2597%25E3%2581%259FUI%25E3%2583%25BBUX%25E3%2582%2592%25E4%25BD%259C%25E3%2582%258B%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_37:PsyTouSan%2Cx_203%2Cy_121/g_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2EvQUNnOG9jSTlzTWdQTUVJOGxHVEhSWWFjdjlpQ1N6RUdLTnd4M2FWU0hZYTdPYXVoN21oTkRJaz1zOTYtYw==%2Cr_max%2Cw_90%2Cx_87%2Cy_95/v1627283836/default/og-base-w1200-v2.png?_a=BACAGSGT" length="0" type="false"/><dc:creator>PsyTouSan</dc:creator></item><item><title><![CDATA[Androidクローズドテストとは？仕組み・ルール・始め方をやさしく解説]]></title><description><![CDATA[Google Play でアプリを公開しようとして、「クローズドテスト」 という言葉に初めてぶつかった個人開発者の方も多いのではないでしょうか。この記事では、クローズドテストとは何か、なぜ必要なのか、どうやって始めるのかを、初めての方向けにやさしく整理します。


 クローズドテストとは
クローズドテストとは、Google Play が用意している 「招待した人だけにアプリを試してもらえる仕組み」 です。本番公開前に、バグや使い勝手の問題を発見し、品質を担保するための工程として位置付けられています。
Google Play のリリース段階は、大きく分けて4つあります。



段階
配信対...]]></description><link>https://zenn.dev/android_tester/articles/61c9bada8efa12</link><guid isPermaLink="true">https://zenn.dev/android_tester/articles/61c9bada8efa12</guid><pubDate>Tue, 05 May 2026 11:39:56 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--IQZ1frnN--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:Android%25E3%2582%25AF%25E3%2583%25AD%25E3%2583%25BC%25E3%2582%25BA%25E3%2583%2589%25E3%2583%2586%25E3%2582%25B9%25E3%2583%2588%25E3%2581%25A8%25E3%2581%25AF%25EF%25BC%259F%25E4%25BB%2595%25E7%25B5%2584%25E3%2581%25BF%25E3%2583%25BB%25E3%2583%25AB%25E3%2583%25BC%25E3%2583%25AB%25E3%2583%25BB%25E5%25A7%258B%25E3%2582%2581%25E6%2596%25B9%25E3%2582%2592%25E3%2582%2584%25E3%2581%2595%25E3%2581%2597%25E3%2581%258F%25E8%25A7%25A3%25E8%25AA%25AC%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_34:Android%25E3%2582%25AF%25E3%2583%25AD%25E3%2583%25BC%25E3%2582%25BA%25E3%2583%2589%25E3%2583%2586%25E3%2582%25B9%25E3%2583%2588%2Cx_220%2Cy_108/bo_3px_solid_rgb:d6e3ed%2Cg_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9zdGF0aWMuemVubi5zdHVkaW8vdXNlci11cGxvYWQvYXZhdGFyL2IzYzBkZWM4M2MuanBlZw==%2Cr_20%2Cw_90%2Cx_92%2Cy_102/co_rgb:6e7b85%2Cg_south_west%2Cl_text:notosansjp-medium.otf_30:Android%25E3%2582%25AF%25E3%2583%25AD%25E3%2583%25BC%25E3%2582%25BA%25E3%2583%2589%25E3%2583%2586%25E3%2582%25B9%25E3%2583%2588%25E3%2582%25B3%25E3%2583%259F%25E3%2583%25A5%25E3%2583%258B%25E3%2583%2586%25E3%2582%25A3%2Cx_220%2Cy_160/bo_4px_solid_white%2Cg_south_west%2Ch_50%2Cl_fetch:aHR0cHM6Ly9zdGF0aWMuemVubi5zdHVkaW8vdXNlci11cGxvYWQvYXZhdGFyLzFhZTAxNmQzYWYuanBlZw==%2Cr_max%2Cw_50%2Cx_139%2Cy_84/v1627283836/default/og-base-w1200-v2.png?_a=BACAGSGT" length="0" type="false"/><dc:creator>Androidクローズドテスト</dc:creator></item><item><title><![CDATA[Androidのクローズドテストに困ったら...]]></title><description><![CDATA[
 個人開発者の壁「Androidクローズドテスト」とは？12人・14日ルールを乗り越える方法
「ようやくアプリが完成した！さあリリースだ！」
そう意気込んで Google Play Console を開いた個人開発者のあなたを、思いがけない壁 が待っています。それが Androidクローズドテスト です。


 クローズドテストってそもそも何？
クローズドテストとは、限られたテスター（あなたが招待した人）だけにアプリを試してもらう仕組み のことです。本番リリース前に、バグや使いにくさを発見・修正するためのフェーズですね。
Google Play には公開段階がいくつかあって、ざっくり以...]]></description><link>https://zenn.dev/android_tester/articles/d5a620a16a269b</link><guid isPermaLink="true">https://zenn.dev/android_tester/articles/d5a620a16a269b</guid><pubDate>Tue, 05 May 2026 08:19:35 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--dkM5WTvH--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:Android%25E3%2581%25AE%25E3%2582%25AF%25E3%2583%25AD%25E3%2583%25BC%25E3%2582%25BA%25E3%2583%2589%25E3%2583%2586%25E3%2582%25B9%25E3%2583%2588%25E3%2581%25AB%25E5%259B%25B0%25E3%2581%25A3%25E3%2581%259F%25E3%2582%2589...%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_34:Android%25E3%2582%25AF%25E3%2583%25AD%25E3%2583%25BC%25E3%2582%25BA%25E3%2583%2589%25E3%2583%2586%25E3%2582%25B9%25E3%2583%2588%2Cx_220%2Cy_108/bo_3px_solid_rgb:d6e3ed%2Cg_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9zdGF0aWMuemVubi5zdHVkaW8vdXNlci11cGxvYWQvYXZhdGFyL2IzYzBkZWM4M2MuanBlZw==%2Cr_20%2Cw_90%2Cx_92%2Cy_102/co_rgb:6e7b85%2Cg_south_west%2Cl_text:notosansjp-medium.otf_30:Android%25E3%2582%25AF%25E3%2583%25AD%25E3%2583%25BC%25E3%2582%25BA%25E3%2583%2589%25E3%2583%2586%25E3%2582%25B9%25E3%2583%2588%25E3%2582%25B3%25E3%2583%259F%25E3%2583%25A5%25E3%2583%258B%25E3%2583%2586%25E3%2582%25A3%2Cx_220%2Cy_160/bo_4px_solid_white%2Cg_south_west%2Ch_50%2Cl_fetch:aHR0cHM6Ly9zdGF0aWMuemVubi5zdHVkaW8vdXNlci11cGxvYWQvYXZhdGFyLzFhZTAxNmQzYWYuanBlZw==%2Cr_max%2Cw_50%2Cx_139%2Cy_84/v1627283836/default/og-base-w1200-v2.png?_a=BACAGSGT" length="0" type="false"/><dc:creator>Androidクローズドテスト</dc:creator></item><item><title><![CDATA[ショートカットキーが覚えられないので、間隔反復学習アプリを作った【Flutter / iOS】]]></title><description><![CDATA[
 ショートカット、覚えられない問題
エンジニアなら誰もが通る道だと思う。
「VSCode のショートカット覚えたい」→ チートシート見る → 3日後には忘れてる。
Vim もそう。dd とか yy は覚えてるけど、ちょっとマイナーなやつになると毎回ググる。IntelliJ、Figma、Chrome DevTools... ツールが増えるほど覚える量も増える。
チートシートを壁に貼っても、結局見なくなる。
「じゃあ、Anki みたいに反復学習で叩き込めばいいのでは？」
そう思って作ったのが Keyhab というアプリ。

 Keyhab とは
キーボードショートカットに特化した間隔反復学...]]></description><link>https://zenn.dev/ta537ka/articles/2acb72b8bf111d</link><guid isPermaLink="true">https://zenn.dev/ta537ka/articles/2acb72b8bf111d</guid><pubDate>Tue, 05 May 2026 03:49:59 GMT</pubDate><enclosure url="https://res.cloudinary.com/zenn/image/upload/s--FN2_bdFI--/c_fit%2Cg_north_west%2Cl_text:notosansjp-medium.otf_55:%25E3%2582%25B7%25E3%2583%25A7%25E3%2583%25BC%25E3%2583%2588%25E3%2582%25AB%25E3%2583%2583%25E3%2583%2588%25E3%2582%25AD%25E3%2583%25BC%25E3%2581%258C%25E8%25A6%259A%25E3%2581%2588%25E3%2582%2589%25E3%2582%258C%25E3%2581%25AA%25E3%2581%2584%25E3%2581%25AE%25E3%2581%25A7%25E3%2580%2581%25E9%2596%2593%25E9%259A%2594%25E5%258F%258D%25E5%25BE%25A9%25E5%25AD%25A6%25E7%25BF%2592%25E3%2582%25A2%25E3%2583%2597%25E3%2583%25AA%25E3%2582%2592%25E4%25BD%259C%25E3%2581%25A3%25E3%2581%259F%25E3%2580%2590Flutter%2520%252F%2520iOS%25E3%2580%2591%2Cw_1010%2Cx_90%2Cy_100/g_south_west%2Cl_text:notosansjp-medium.otf_37:jockey%2Cx_203%2Cy_121/g_south_west%2Ch_90%2Cl_fetch:aHR0cHM6Ly9saDMuZ29vZ2xldXNlcmNvbnRlbnQuY29tL2EvQUNnOG9jSWQwYmdGSm1tX2pzdk9UNnNvM2d6dmg2NzJDTHN3dklGdkhwZHdaWVBpQlU4NUhsUT1zOTYtYw==%2Cr_max%2Cw_90%2Cx_87%2Cy_95/v1627283836/default/og-base-w1200-v2.png?_a=BACAGSGT" length="0" type="false"/><dc:creator>jockey</dc:creator></item></channel></rss>