
u/Calm-Alarm7977

[DISCUSSION] Your portfolio blog has zero engagement? I fixed mine with a stupid simple hack (Must read... because it actually works)
Okay so portfolio blogs are basically a graveyard. You write something, post it, and nobody reads, comment or upvote it, Not even you.
I had the same issue. But I noticed when I posted the same thing on Reddit, people actually replied. Nothing crazy, but like 20-30 comments is way better than absolute silence.
So I just... connected the two.
My blog is still on my own site, self hosted, full control. But every post I write, I also drop a Reddit thread for it. Then on my site, I fetch that Reddit thread's JSON, parse it, and show the upvotes and comments in my own UI. Looks totally native, proper threaded comments and everything.
Only catch is if you want to comment it takes you to Reddit. Bit annoying but whatever, at least there's actual engagement showing now instead of nothing.
Took maybe a weekend to build. Felt dumb simple but honestly works better than anything else I tried.
Anyone else doing something like this or have a better way to handle it?
Your portfolio blog has zero engagement? I fixed mine with a stupid simple hack. Must read because it actually works
Okay so portfolio blogs are basically a graveyard. You write something, post it, and nobody reads, comment or upvote it, Not even you.
I had the same issue. But I noticed when I posted the same thing on Reddit, people actually replied. Nothing crazy, but like 20-30 comments is way better than absolute silence.
So I just... connected the two.
My blog is still on my own site, self hosted, full control. But every post I write, I also drop a Reddit thread for it. Then on my site, I fetch that Reddit thread's JSON, parse it, and show the upvotes and comments in my own UI. Looks totally native, proper threaded comments and everything.
Only catch is if you want to comment it takes you to Reddit. Bit annoying but whatever, at least there's actual engagement showing now instead of nothing.
Took maybe a weekend to build. Felt dumb simple but honestly works better than anything else I tried.
Anyone else doing something like this or have a better way to handle it?
Can your Gemini message you when it's done or need something? Mine can. Here's how I set it up on Android.
**The problem nobody talks about**
You fire off a long Gemini task, refactor this, fix all tests, update dependencies, and then you're just... staring at a terminal. Waiting. On your phone. Like a hostage.
I fixed that. Now Gemini sends me a notification when it's done, when it hits an error, or when it needs me back. I scroll Reddit, it works, it pings me. That's the whole deal.
For better formatting and code highlighting, read this on https://brajesh.is-a.dev/blog/how-to-get-gemini-cli-android-notifications-in-termux/
Here's the exact setup.
---
**What you'll have after this**
- Gemini CLI running natively on Android (Termux)
- GitHub fully authenticated, no credential prompts, no hanging pushes
- A `notify` command Gemini uses to ping you like a real notification
- A `g` shortcut so firing off tasks is one letter
- A `GEMINI.md` that tells Gemini to *always* notify you and never get stuck on GitHub
---
**Step 1 — Install Termux (NOT from Play Store)**
The Play Store version is dead. Get it from GitHub:
- [Termux APK releases](https://github.com/termux/termux-app/releases)
- [Termux:API APK releases](https://github.com/termux/termux-api/releases)
Install both, then open Termux and run:
```bash
pkg update && pkg upgrade -y
pkg install -y nodejs-lts termux-api
```
Then install the Termux-optimized Gemini fork (handles Android PTY and auth issues):
```bash
npm install -g @mmmbuto/gemini-cli-termux
```
Launch and log in:
```bash
gemini
```
Choose **Login with Google**.
---
**Step 2 — Get a GitHub Personal Access Token**
Gemini needs this to do GitHub work without hanging on credential prompts.
GitHub -> Settings -> Developer settings -> Personal access tokens -> Tokens (classic)
Generate new token (classic)
Name it `termux-gemini`, set your expiration
Check: `repo` (full), `workflow`, `read:org`
**Copy it immediately** — you won't see it again
> 🔒 Treat this like a password. Don't commit it anywhere.
---
**Step 3 — Paste the Master Prompt**
Replace `YOUR_GITHUB_TOKEN_HERE` with your actual token, paste this into Gemini, and walk away:
```
Execute every step below automatically without asking me anything. Just run the commands.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
PART 1 — GITHUB SETUP
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
pkg update && pkg install git gh -y
echo "YOUR_GITHUB_TOKEN_HERE" | gh auth login --with-token
gh auth setup-git
git config --global credential.helper store
git config --global user.name "YourName"
git config --global user.email "$(gh api user --jq '.email' 2>/dev/null || echo 'you@users.noreply.github.com')"
gh auth status
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
PART 2 — NOTIFICATION SYSTEM
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
mkdir -p ~/bin
Create ~/bin/notify with this exact content:
#!/data/data/com.termux/files/usr/bin/bash
termux-notification \
--title "Gemini 🤖" \
--content "$*" \
--action "am start -n com.termux/.app.TermuxActivity" \
--priority max \
--sound \
--vibrate 500,200,500
chmod +x ~/bin/notify
grep -q 'HOME/bin' ~/.bashrc || echo 'export PATH="$HOME/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
notify "Notify system is online ✅"
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
PART 3 — g SHORTCUT
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
- Add this to ~/.bashrc (skip if already exists):
grep -q "^g()" ~/.bashrc || cat >> ~/.bashrc << 'EOF'
# One-letter Gemini launcher
g() {
gemini "$*"
}
EOF
source ~/.bashrc
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
PART 4 — GEMINI.MD INSTRUCTIONS
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
mkdir -p ~/.gemini
APPEND the following to ~/.gemini/GEMINI.md (do NOT overwrite):
## Git & GitHub Workflow
MANDATORY: These rules apply to every session.
Before any git operation: gh auth setup-git
Always clone with: gh repo clone <owner>/<repo>
Never use plain git clone https://... it hits a credential prompt.
Always work on a feature branch, never commit to main.
Use gh pr create --fill to open PRs non-interactively.
---
## User Presence & Notifications
The user is NOT watching the terminal. They have minimized Termux.
Use notify in these situations:
- A long task completed
- You need input before continuing
- An error occurred that needs attention
- You're about to do something destructive
notify "Done! Build finished ✅"
notify "Waiting for your input — check Termux"
notify "Error ❌ — cannot proceed without you"
Do NOT spam. Only notify at meaningful checkpoints.
Tapping the notification opens Termux.
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
PART 5 — FINAL CHECK
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
- notify "All set! Gemini + GitHub + Notifications ready 🚀"
```
---
**The `g` shortcut explained**
Instead of typing `gemini "do this thing"` every time, you now just type:
```bash
g "fix all TypeScript errors and run tests"
```
It's a tiny bash function in your `.bashrc`:
```bash
g() {
gemini "$*"
}
```
One letter. Everything you type after it gets passed straight to Gemini.
---
**How the notification system works**
The `notify` command wraps `termux-notification` with settings tuned to actually interrupt you:
| Setting | What it does |
|---|---|
| `--priority max` | Heads-up popup over whatever app you're in |
| `--sound` | Rings even with screen off |
| `--vibrate 500,200,500` | Physical buzz pattern |
| `--action "am start ..."` | Tap = back in Termux instantly |
| No `--id` flag | Every call is a fresh notification, guaranteed to ring |
And because the rules are baked into `GEMINI.md`, Gemini reads them on *every* session automatically. You never have to remind it.
---
**Troubleshooting**
- **Notification doesn't pop up?** Android Settings -> Apps -> Termux -> Notifications -> Allow
- **`notify: command not found`?** Run `source ~/.bashrc` or restart Termux
- **`gh auth status` shows unauthenticated?** Token expired or wrong scopes, generate a new one and re-run Part 1
- **git push hangs?** Run `gh auth setup-git` manually, then retry
---
*Setup once. It runs while you do other things. Pings you when it matters.*