This project is now configured to run on free hosting with a free public domain.
Tool/
backend/
server.js
services/
phone/
country-codes.json
phone-utils.js
frontend/
public/
data/
bug-bounty-dork-packs.json
js/
advanced-features.js
core-ui.js
matrix-osint-integrated.html
matrix-osint-integrated.css
matrix-osint-integrated.js
data/
(local SQLite db files)
scripts/
start-matrix-osint.bat
deploy/
docker-compose.yml
Dockerfile
docs/
*.md / *.txt
package.json
render.yaml (kept at root for Render auto-detect)
Use the Render free subdomain first:
- Example:
https://matrix-osint.onrender.com
Why this is best for this project:
- Your app uses a Node.js backend (
backend/server.js) and SQLite. - Static hosts like GitHub Pages cannot run this backend.
- Render provides a free HTTPS domain and easy GitHub auto-deploy.
Optional later:
- Add a custom free subdomain using
is-a.dev+ Cloudflare DNS. - Keep Render as your app host and point DNS to it.
On your Windows PC (PowerShell):
winget install --id Git.Git -e --source winget
winget install --id GitHub.cli -e --source wingetRestart terminal after install.
In project folder:
cd "C:\Users\Potato\Desktop\Tool"
git init
git add .
git commit -m "Initial Matrix OSINT deploy-ready setup"Create an empty repo on GitHub named matrix-osint (no README/license), then:
git branch -M main
git remote add origin https://github.com/<YOUR_USERNAME>/matrix-osint.git
git push -u origin main- Go to
https://dashboard.render.com. - Click
New +->Blueprint. - Connect your GitHub account.
- Select your
matrix-osintrepo. - Render auto-detects
render.yaml. - Create service.
After first deploy, your free live domain will be:
https://<your-service-name>.onrender.com
In Render service settings -> Environment:
ADMIN_USERNAME(optional, defaults toadmin)ADMIN_PASSWORD(recommended for stable admin login)ADMIN_RESET_KEY(optional recovery key for password reset)VERIPHONE_API_KEY(optional)
App works without them; related tools degrade gracefully.
If ADMIN_USERNAME is set, that account is treated as admin on startup. If ADMIN_PASSWORD is set, that admin account will use the provided password on startup. If ADMIN_PASSWORD is not set, the app generates a one-time password and prints it in the server logs on first boot.
If you ever lose admin access on Render, set ADMIN_RESET_KEY and call POST /api/admin/reset-password with that key to set a new admin password.
data/*.dbis git-ignored intentionally (local user database should not be committed).- Render free instances can sleep when idle.
- SQLite on ephemeral free hosts can reset on redeploy/restart. For persistent auth data, later move to managed Postgres.
cd "C:\Users\Potato\Desktop\Tool"
node backend/server.jsOpen:
http://localhost:3000
From project root:
npm run docker:up
npm run docker:logs
npm run docker:down