App peribadi untuk simpan screenshot, link, nota, tugasan, kad kanban, kelas online dan video dalam satu tempat. Data anda kekal dalam Google Drive dan Google Sheets anda sendiri.
| Bahagian | Kegunaan |
|---|---|
| Inbox, Semua, Screenshot, Link, Nota | Semua yang disimpan dari phone dan komputer. Nota boleh jadi teks biasa atau checklist |
| Info Penting | Gambar yang anda perlu rujuk semula, seperti resit dan tiket |
| Tugasan | Senarai tugasan dikumpul ikut tarikh |
| Papan | Kanban dengan lajur yang boleh ditambah dan kad yang boleh diseret |
| Kelas | Link, akaun, password disulitkan, dan rekod sudah buka atau belum |
| Tonton | Video YouTube, TikTok dan Facebook dimainkan terus dalam app |
| Resit | Ambil gambar resit, dan AI isikan peniaga, tarikh, jumlah dan barangan |
| Tanya AI | Tanya apa saja, atau minta AI huraikan screenshot dan rekod anda |
| Arkib | Rekod yang keluar dari senarai harian, tapi kekal untuk dirujuk |
| Sampah | Rekod yang dipadam, boleh dipulihkan dalam 30 hari |
| Folder | Kegunaan |
|---|---|
docs/ |
App yang dipasang di phone, dihoskan di GitHub Pages |
apps-script/ |
Backend yang simpan data ke Drive dan Sheets |
tools/ |
Pelayan ujian tempatan dan penjana ikon |
tests/ |
Ujian backend, video dan penyulitan |
- Buka https://script.google.com dan tekan New project. Namakan
SimpanIdea. - Padam kod contoh, kemudian tampal isi apps-script/Code.gs ke dalam
Code.gs. - Tekan Project Settings (ikon gear), dan tandakan Show "appsscript.json" manifest file in editor.
- Balik ke Editor, buka
appsscript.json, dan ganti isinya dengan apps-script/appsscript.json. - Pilih fungsi
setupdi bar atas dan tekan Run. Benarkan akses bila diminta.- Kalau keluar amaran "Google hasn't verified this app", tekan Advanced, kemudian Go to SimpanIdea. Ini skrip anda sendiri.
- Salin kunci rahsia daripada log di bawah. Jangan kongsi dengan sesiapa.
- Tekan Deploy → New deployment, pilih jenis Web app:
- Execute as: Me
- Who has access: Anyone
- Tekan Deploy dan salin Web app URL yang berakhir dengan
/exec.
"Anyone" diperlukan supaya app boleh sampai ke backend. Tanpa kunci rahsia, tiada apa boleh dibaca atau disimpan.
- Buka https://imuhakim.github.io/simpanidea/ dalam Chrome di phone.
- Tekan ikon menu (☰), dan pilih Tetapan. Tampal URL Web App dan kunci rahsia, kemudian tekan Simpan dan uji.
- Pastikan Sambungan ke Google berjaya ada di bahagian Semakan.
- Tekan Pasang app di Tetapan. Kalau butang itu tidak keluar, buka menu Chrome (⋮) dan pilih Add to Home screen atau Install app.
- Buka SimpanIdea dari home screen sekali, dan isi tetapan semula kalau kosong.
Bila Code.gs atau appsscript.json berubah, app mungkin papar amaran "Backend Google masih versi lama".
- Tampal isi baru apps-script/Code.gs dan apps-script/appsscript.json dalam Apps Script, dan simpan.
- Pilih fungsi
setupdan tekan Run. Kalau Google minta kebenaran baru, benarkan. Data dan kunci sedia ada tidak berubah. - Tekan Deploy → Manage deployments, kemudian ikon pensil (Edit).
- Di Version, pilih New version, dan tekan Deploy.
Cara ini mengekalkan URL yang sama, jadi tetapan app tidak perlu diubah. Jangan pilih New deployment, sebab URL akan bertukar.
| # | Cuba | Hasil yang patut keluar |
|---|---|---|
| 1 | Ambil screenshot, tekan Share → SimpanIdea | Masuk Inbox, folder SimpanIdea/Screenshot/<bulan>, dan tab Item |
| 2 | Dari Gallery, pilih 3 gambar dan Share | 3 fail dan 3 baris |
| 3 | Share satu link dari Chrome | Masuk Inbox dan tab Link |
| 4 | Share video dari YouTube, TikTok dan Facebook | Keluar dalam Tonton dan boleh dimainkan |
| 5 | Di Papan, tekan lama pada kad dan seret ke lajur lain | Kad pindah, dan kekal selepas tekan segerak |
| 6 | Di Info Penting, tekan Ambil gambar | Kamera terbuka, dan gambar tersimpan di situ |
| 7 | Hidupkan Airplane mode, tambah tugasan, kemudian matikan | Tugasan menunggu, dan masuk Sheet bila internet kembali |
SimpanIdea mungkin ambil beberapa minit untuk muncul dalam senarai Share selepas dipasang. Kalau masih tiada, mulakan semula phone.
- Kali pertama anda simpan password, app minta anda cipta kata laluan induk.
- Password disulitkan dalam peranti sebelum dihantar, jadi Sheet cuma simpan teks yang tidak boleh dibaca.
- Kata laluan induk tidak disimpan di mana-mana. Kalau lupa, password yang tersimpan tidak boleh dipulihkan.
- App mengunci semula selepas 15 minit, atau bila anda tekan Kunci password.
- Status kelas dan tarikh terakhir dibuka hanya direkod kalau anda buka kelas melalui butang Buka dalam app.
iPhone tidak benarkan web app masuk senarai Share, jadi 2 Shortcut kecil menggantikannya. Langkah penuh ada di Tetapan → Share dari iPhone, dengan butang untuk menyalin URL dan kunci rahsia.
- Simpan Gambar: menerima gambar dari Photos, termasuk banyak gambar sekali gus.
- Simpan Link: menerima link dan teks dari Safari dan app lain.
Shortcut guna kunci Shortcut yang berasingan daripada kunci rahsia. Ia cuma boleh menambah item, dan tidak boleh membaca, mengubah atau memadam data. Kalau tersebar, tekan Tukar kunci di Tetapan, dan kemas kini kedua-dua Shortcut.
- Hanya tajuk dan tarikh kelihatan. Tekan ikon mata untuk lihat isi, dan tekan sekali lagi untuk sorok.
- Isi disorok semula bila anda tukar halaman, tinggalkan app, atau app dikunci.
- Rekod Info Penting tidak muncul di Semua, Screenshot, Link dan Nota. Carian hanya melihat tajuknya.
- Tanya AI hanya menerima tajuknya, kecuali anda bertanya terus dari rekod tersebut.
- Ini penyorok paparan, bukan penyulitan. Isinya masih biasa dalam Drive dan Sheet, jadi jangan simpan password di sini. Gunakan Kelas untuk password.
Tekan Ambil gambar di halaman Resit. Resit terus dimuat naik dan AI mengisi datanya, dipaparkan di sebelah gambar.
- Perlu kunci API: sama seperti Tanya AI, dan setiap imbasan dicaj kepada akaun API anda. Model ikut pilihan dalam panel Tanya AI.
- Semak hasilnya: AI boleh tersilap baca, terutama resit kabur atau pudar. Semua medan boleh dibetulkan.
- Tiada kunci atau gagal: resit tetap tersimpan, dan boleh diimbas kemudian dengan Imbas dengan AI.
- Jumlah bulanan: dikira ikut tarikh resit, dan diasingkan ikut mata wang.
Tekan Cakap di halaman Resit dan sebut apa yang dibeli, contohnya "makan tengah hari di Restoran Selera dua belas ringgit". AI mengisi peniaga, tarikh, jumlah dan kategori, kemudian terus menyimpannya sebagai rekod tanpa gambar.
- Beberapa perbelanjaan: boleh disebut sekali gus, dan setiap satu menjadi satu rekod.
- Semak hasilnya: sebutan nombor boleh tersilap. Tekan Batal pada pesanan selepas menyimpan, atau betulkan dalam rekod itu.
- Browser: suara bergantung pada browser, dan paling sesuai dengan Chrome di Android. Jika tiada, taip atau gunakan butang mikrofon pada papan kekunci.
- Privasi: suara diproses oleh penyedia browser, seperti Google dalam Chrome. Teksnya dihantar kepada Anthropic melalui kunci API anda dan dicaj kepada akaun itu.
Tiada API awam ditemui untuk membaca transaksi peribadi Touch 'n Go, jadi bayaran dimasukkan melalui penyata.
- Dalam app Touch 'n Go, buka Transaction History dan tekan Email.
- Di halaman Resit, tekan Import penyata dan pilih fail itu. PDF, CSV dan tangkapan skrin diterima.
- Semak senarai bayaran yang dibaca AI, kemudian tekan Simpan.
- Padanan automatik: dibuat bila jumlah dan tarikh sama, dan hanya ada satu calon pada kedua-dua belah. Selebihnya anda pilih sendiri.
- Belum ada resit: bayaran tanpa resit disenaraikan. Tekan Abaikan untuk bayaran seperti tol.
- Import berulang: penyata yang bertindih tidak mencipta bayaran berganda.
- Privasi: fail dihantar kepada Anthropic melalui kunci API anda. Fail itu tidak disimpan. Hanya senarai bayaran masuk ke Google Sheet anda.
- Had: PDF berkata laluan tidak dapat dibaca. Penyata yang sangat panjang mungkin gagal, jadi gunakan julat tarikh yang lebih pendek.
Semua rekod menunjukkan tarikh dan masa ia dibuat. Item yang menunggu internet kekal dengan masa ia dibuat di peranti, bukan masa ia sampai ke Google. Masa ini ikut jam peranti anda.
- Pindah: buka rekod dan tekan Pindah untuk alihkan antara Nota, Info Penting, Tugasan dan Papan. Teks dan gambar ikut sekali.
- Arkib: rekod keluar dari senarai harian dan tinggal di Arkib, dan masih boleh dicari. Tekan Keluarkan untuk pulangkan.
- Padam: rekod masuk Sampah, dan boleh dipulihkan selama 30 hari. Selepas itu ia dibuang kekal bila app dibuka.
- Padam kekal: gambar dialih ke tong sampah Google Drive, dan rekod dibuang dari Sheet.
Tekan Tanya AI di bahagian atas, atau dalam mana-mana rekod. Dari screenshot, AI boleh lihat gambar itu dan menghuraikannya. Jawapan boleh disimpan sebagai nota, tugasan atau kad.
Untuk mula, anda perlu kunci API sendiri:
- Buka https://console.anthropic.com/settings/keys dan log masuk.
- Tambah kredit. API dibayar berasingan daripada langganan Claude, dan elok letak had belanja.
- Cipta API key, dan tampal di Tetapan → Tanya AI.
Yang perlu tahu:
- Kunci API: disimpan dalam Script Properties di Apps Script anda, dan tidak pernah dipulangkan kepada app.
- Data yang dihantar ke Anthropic: bila Guna simpanan saya ditanda, tajuk, catatan dan link dihantar sekali. Gambar hanya dihantar bila anda bertanya dari rekod tersebut.
- Tidak pernah dihantar: password, username kelas, kunci rahsia, dan rekod dalam Sampah.
- Kos: setiap jawapan tunjuk jumlah token. Opus 5.5 ialah lalai dan paling mahal, manakala Haiku 5.5 paling murah. Tukar di bawah kotak soalan.
- Had: soalan melalui Apps Script, jadi jawapan muncul sekali gus dan jawapan panjang boleh dipotong. AI tidak boleh mengubah data sendiri, dan tidak boleh membuka link.
Setiap soalan dan jawapan disimpan dalam Google Sheet anda, dalam tab Perbualan dan MesejAI. Tekan Sejarah dalam panel Tanya AI untuk merujuk atau menyambung perbualan lama, di phone atau komputer.
- Carian: kotak carian turut mencari isi perbualan. Perbualan tentang Info Penting hanya dicari ikut tajuk.
- Padam: perbualan masuk ke Sampah dan boleh dipulihkan dalam 30 hari.
- Privasi: jawapan disimpan sebagai teks biasa dalam Sheet. Password kelas tidak dihantar kepada AI, jadi ia tidak masuk ke sejarah.
- Kos: menyimpan tidak dicaj, tetapi menyambung perbualan menghantar semula mesej terdahulu, sehingga 20 mesej terakhir.
Kali pertama app dibuka, ia bertanya nama anda untuk sapaan. Nama disimpan dalam Sheet supaya sama di semua peranti, dan diberitahu kepada Tanya AI. Tukar di Tetapan → Nama anda.
- Hidupkan di Tetapan → Kunci app. PIN ialah 6 digit, dan berasingan untuk setiap peranti.
- App dikunci setiap kali dibuka, selepas tidak digunakan (1 hingga 30 minit, lalai 5), dan bila anda tekan ikon kunci di sidebar.
- Screenshot yang dikongsi tetap dihantar ke Google walaupun app terkunci, tapi anda perlu PIN untuk melihatnya.
- Selepas 5 kali salah, anda perlu tunggu 30 saat, dan tempoh ini bertambah sehingga 15 minit.
- Lupa PIN? Tekan butang itu di skrin kunci untuk kosongkan peranti. Data di Google selamat, tapi anda perlu masukkan URL Web App dan kunci rahsia semula, dan perubahan yang belum dihantar akan hilang.
- PIN menghalang orang yang memegang peranti daripada membuka app dengan mudah. Ia bukan penyulitan, jadi kunci skrin phone masih perlu dipasang, dan jangan isi tetapan di komputer yang dikongsi.
- Pemilik video boleh menghalang tontonan di luar app asal, dan video peribadi takkan dapat dimainkan. Butang Buka di ... sentiasa ada sebagai pilihan.
- Link pendek TikTok dan Facebook dibuka melalui backend untuk dapatkan alamat sebenar. Kalau gagal, gunakan butang tadi.
| Masalah | Sebab biasa | Cara betulkan |
|---|---|---|
Failed to fetch atau "Belum sampai" berterusan |
Web App bukan "Anyone" | Semak tetapan deployment |
| "Kunci rahsia salah" | Tersalah salin kunci | Jalankan setup semula untuk lihat kunci dalam log |
| "Backend Google masih versi lama" | Kod baru belum di-deploy | Ikut Kemas kini backend di atas |
| Link pendek tidak dapat dimainkan | Kebenaran baru belum diberi | Tampal appsscript.json baru, jalankan setup, dan benarkan |
| SimpanIdea tiada dalam senarai Share | App cuma jadi pintasan, bukan dipasang | Buang dari home screen dan pasang semula guna Chrome |
Kalau kunci rahsia terdedah, jalankan fungsi rotateSecret dan masukkan kunci baru dalam app.
node --test tests/backend.test.js tests/app-lib.test.mjsnode tools/dev-server.jsPelayan ujian menjalankan Code.gs dengan tiruan Google di http://localhost:5173, jadi tiada data sebenar disentuh. Kunci tiruan ada di /mock-state, dan URL backendnya ialah http://localhost:5173/mock-exec.
Butang Share sebenar, sentuhan di skrin phone, kamera, Google sebenar serta video TikTok dan Facebook hanya boleh disahkan di phone anda.