個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Analyze your WhatsApp Chat in Seconds. Reveal insights & get statistics, while all data stays on your device. No chat data is sent to a server it runs only locally in your browser.
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗This is an open-source tool to analyze your WhatsApp Chat and create pdfs from your chat. You can run the code locally on your device or visit whatsanalyze.com to see the hosted "main" branch. The website is hosted on github pages and all code is visible.
No data about your chat is transferred to any server at all.
Dev deployment: https://whatsanalyze-80665.web.app
Read docs/modernization-runbook.md before
upgrading dependencies or changing the frontend, PDF, localization, Firebase,
or PayPal integrations. It records the current architecture, migration
decisions, deployment procedure, verification commands, and known follow-up
work.
Please report bugs in the github issues.
We use Node.js 22 and pnpm 8.15.8. The project also needs Python 3.11 because some legacy build dependencies compile native modules.
A Nix flake is provided with all dependencies pre-configured:
# Enter development shell
$ nix develop
# Install dependencies
$ pnpm install --frozen-lockfile
# install dependencies
$ pnpm install
# serve with hot reload at localhost:3000
$ pnpm dev
# build for production and launch server (recommended for low-memory environments)
$ pnpm build
$ pnpm start
# generate static project
$ pnpm generate
$ pnpm test:e2e
The suite runs against the built site, not pnpm dev: the app is a static
SPA, and nuxt dev compiles each route the first time it is asked for, which
used to cost the suite minutes of waiting. Playwright builds it and serves
dist on port 4173 for you, so pnpm test:e2e on its own is all you need.
Between runs it reuses a server that is already listening on 4173, which keeps
the loop short while you are writing a test. That server is serving the dist
from whenever it started — after changing app code, restart it:
$ pnpm build:e2e && pnpm serve:e2e
tests/e2e/payments.spec.js is the one to keep green: it is the checkout,
the paywall and what a payment unlocks. Stripe, PayPal and the Firebase
callables are all stubbed through tests/e2e/fixtures.js, so the tests never
leave the machine.
If running on a remote server or VM, expose the instance to your tailnet:
# For production preview (HTTP on port 3000):
$ tailscale serve --bg 3000
# For dev server (HTTPS on port 3000):
$ tailscale serve --bg https+insecure://localhost:3000
Search for prettier and eslint in pycharm to set it up on saving a file. You can also add .vue there for running stuff on Vue files as well.
For detailed explanation on how things work, check out Nuxt.js docs.
https://letsencrypt.org/docs/certificates-for-localhost/
openssl req -x509 -out 0.0.0.0.crt -keyout 0.0.0.0.key -newkey rsa:2048 -nodes -sha256 -subj '/CN=localhost' -extensions EXT -config <( printf "[dn]\nCN=localhost\n[req]\ndistinguished_name = dn\n[EXT]\nsubjectAltName=DNS:localhost\nkeyUsage=digitalSignature\nextendedKeyUsage=serverAuth")
Also need to install the .crt file and trust it in your system settings
Code to generate certificate installable on android:
openssl pkcs12 -export -legacy -in localhost.pem -inkey localhost-key.pem -out 0.0.0.0.p12
Rename it to .txt and then send per bluetooth. (somehow .p12 is rejected as file format). On phone need to accept, and then find the file in file app as most recent in downloads section. Rename again to .p12 and tap to install.
brew install mkcert
mkcert localhost
to install on your mac: mkcert -install
on android we have to install the root CA to trust the certificate:
forward port 3000 to android device with chrome on chrome://inspect/#devices
on android go to https://localhost:3000