DEV Community

Daniel Ioni
Daniel Ioni

Posted on

πŸ€– AI Recovery Guide – MyZubster Project

πŸ€– AI Recovery Guide – MyZubster Project

How an AI can read, interpret, and resume the MyZubster project at any time, using this guide as a search engine and persistent memory.
πŸ“Œ Purpose of This Guide

This guide is designed for an Artificial Intelligence system (such as DeepSeek, ChatGPT, Claude, etc.) to:

Understand the MyZubster project in all its components.

Resume work from where it was interrupted.

Provide technical assistance, answer questions, and suggest next steps.

Act as an internal search engine to retrieve information about configurations, commands, and architecture.
Enter fullscreen mode Exit fullscreen mode

🧠 How the AI Should Use This Guide

The AI must treat this guide as a knowledge database. When a user asks a question, the AI should:

Search the guide for the relevant section.

Provide the most accurate answer possible, citing the source (e.g., "According to Section 3.1 of the project...").

Suggest concrete commands or actions.

Ask the user if they want to go deeper or proceed.
Enter fullscreen mode Exit fullscreen mode

πŸ—οΈ 1. Project Overview
Name

MyZubster Gateway – A decentralized marketplace for tokenizing real‑world assets.
Goal

Enable anyone to tokenize real‑world assets (real estate, art, equity, commodities) and trade them privately using Monero (XMR) as payment currency, with an autonomous security system based on Kali Linux and AI (DeepSeek), and programmable assets on Tari.
Current Status

βœ… Backend running on https://myzubster.com

βœ… React/Vite frontend with login/registration and marketplace

βœ… Monero payments (stagenet)

βœ… Escrow with AI dispute resolution

βœ… Tari integration (NFTs, multisig)

βœ… Kali Linux security bot

βœ… SSL/HTTPS configured

⏳ Tor onion service in migration

⏳ Admin dashboard to be developed
Enter fullscreen mode Exit fullscreen mode

πŸ› οΈ 2. Technology Stack
Component Technology
Backend Node.js + Express
Database MongoDB + Mongoose
Authentication JWT + bcrypt
Payments Monero (XMR) – stagenet / mainnet
Security Kali Linux + DeepSeek AI (Ollama)
Programmable Assets Tari (Rust node & wallet)
Frontend React + Vite
Proxy Nginx
SSL Let's Encrypt
Privacy Tor (onion service)
Deployment Ubuntu 24.04 + Systemd
πŸ“‚ 3. Directory Structure
text

/root/
β”œβ”€β”€ MyZubsterGateway/ # Backend (Node.js)
β”‚ β”œβ”€β”€ models/ # MongoDB models
β”‚ β”‚ β”œβ”€β”€ User.js
β”‚ β”‚ β”œβ”€β”€ Token.js
β”‚ β”‚ β”œβ”€β”€ TokenHolding.js
β”‚ β”‚ β”œβ”€β”€ OrderBook.js
β”‚ β”‚ β”œβ”€β”€ MoneroTransaction.js
β”‚ β”‚ β”œβ”€β”€ Escrow.js
β”‚ β”‚ └── NFT.js (if present)
β”‚ β”œβ”€β”€ routes/ # API routes
β”‚ β”‚ β”œβ”€β”€ auth.js
β”‚ β”‚ β”œβ”€β”€ tokens.js
β”‚ β”‚ β”œβ”€β”€ marketplace.js
β”‚ β”‚ β”œβ”€β”€ payments.js
β”‚ β”‚ β”œβ”€β”€ escrow.js
β”‚ β”‚ β”œβ”€β”€ tari.js
β”‚ β”‚ └── ai.js
β”‚ β”œβ”€β”€ services/ # Business logic
β”‚ β”‚ β”œβ”€β”€ moneroService.js
β”‚ β”‚ β”œβ”€β”€ tokenService.js
β”‚ β”‚ β”œβ”€β”€ marketplaceService.js
β”‚ β”‚ β”œβ”€β”€ deepseekService.js
β”‚ β”‚ β”œβ”€β”€ disputeService.js
β”‚ β”‚ β”œβ”€β”€ tariService.js
β”‚ β”‚ └── paymentMonitor.js
β”‚ β”œβ”€β”€ middleware/ # Middleware
β”‚ β”‚ └── auth.js
β”‚ β”œβ”€β”€ server.js # Entry point
β”‚ β”œβ”€β”€ .env # Environment variables
β”‚ └── package.json
β”‚
β”œβ”€β”€ myzubster-frontend/ # Frontend (React/Vite)
β”‚ β”œβ”€β”€ src/
β”‚ β”‚ β”œβ”€β”€ pages/
β”‚ β”‚ β”‚ β”œβ”€β”€ Login.jsx
β”‚ β”‚ β”‚ β”œβ”€β”€ Register.jsx
β”‚ β”‚ β”‚ β”œβ”€β”€ Dashboard.jsx
β”‚ β”‚ β”‚ └── Marketplace.jsx
β”‚ β”‚ β”œβ”€β”€ components/
β”‚ β”‚ β”œβ”€β”€ contexts/
β”‚ β”‚ β”œβ”€β”€ utils/
β”‚ β”‚ └── App.jsx
β”‚ β”œβ”€β”€ dist/ # Build (served by Nginx)
β”‚ └── package.json
β”‚
β”œβ”€β”€ monero/ # Monero wallet
β”‚ └── myzubster_wallet
β”‚
β”œβ”€β”€ tari/ # Tari (compiled)
β”‚ └── target/release/
β”‚ β”œβ”€β”€ minotari_node
β”‚ └── minotari_console_wallet
β”‚
β”œβ”€β”€ security_bot.py # Kali Linux + AI bot
└── README.md

βš™οΈ 4. Essential Commands
4.1 – Gateway Management
bash

Start the gateway

systemctl start myzubster-gateway

Stop the gateway

systemctl stop myzubster-gateway

Restart the gateway

systemctl restart myzubster-gateway

Check status

systemctl status myzubster-gateway

View logs

journalctl -u myzubster-gateway -n 50 --no-pager

4.2 – Frontend
bash

Rebuild the frontend

cd ~/myzubster-frontend
npm run build

Copy build to Nginx

cp -r dist/* /var/www/myzubster-frontend/
chown -R www-data:www-data /var/www/myzubster-frontend

Reload Nginx

systemctl reload nginx

4.3 – Nginx
bash

Test configuration

nginx -t

Reload

systemctl reload nginx

Restart

systemctl restart nginx

4.4 – Monero
bash

Start Monero daemon (stagenet)

cd ~/monero
./monerod --stagenet --detach

Start wallet RPC

./monero-wallet-rpc \
--rpc-bind-port 18083 \
--daemon-address node.moneroworld.com:38081 \
--wallet-file ./myzubster_wallet \
--password 'Myzubster2026@!!' \
--disable-rpc-login \
--trusted-daemon \
--stagenet

Check wallet balance

curl -X POST http://localhost:18083/json_rpc \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":"0","method":"get_balance"}' | jq '.'

4.5 – Tari
bash

Start Tari node (testnet)

nohup ~/tari/target/release/minotari_node \
--network testnet \
--base-path ~/tari-data \

~/tari_node.log 2>&1 &

Start Tari wallet

nohup ~/tari/target/release/minotari_console_wallet \
--network testnet \
--password myzubster \
--wallet-file ~/tari-wallet \

~/tari_wallet.log 2>&1 &

Check Tari RPC

curl -X POST http://localhost:12820/json_rpc \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","id":"0","method":"get_balance"}' | jq '.'

4.6 – Security Bot
bash

Run manually

python3 /root/security_bot.py

Check logs

tail -20 /var/log/security_bot.log

πŸ“Š 5. API Endpoints
Method Endpoint Description Auth
POST /api/auth/register Register a new user No
POST /api/auth/login Login, get JWT token No
GET /api/tokens List active tokens No
POST /api/tokens Create a token Yes
GET /api/tokens/holdings User holdings Yes
POST /api/marketplace/sell Create a sell order Yes
POST /api/marketplace/buy/:orderId Buy from an order Yes
GET /api/marketplace/orders/:tokenId List open orders No
POST /api/payments Initiate a Monero payment Yes
GET /api/payments/:id Check payment status Yes
POST /api/ai/ask Query DeepSeek AI Yes
POST /api/escrow Create an escrow Yes
POST /api/escrow/:id/dispute Open a dispute Yes
POST /api/tari/nft/mint Mint an NFT on Tari Yes
POST /api/tari/escrow Create a Tari multisig escrow Yes
GET /api/health Health check No
πŸ”§ 6. Troubleshooting Common Issues
6.1 – Gateway not starting
bash

journalctl -u myzubster-gateway -n 50 --no-pager
cd ~/MyZubsterGateway
node server.js # See error directly

6.2 – Frontend not showing
bash

Rebuild and redeploy

cd ~/myzubster-frontend
npm run build
cp -r dist/* /var/www/myzubster-frontend/
chown -R www-data:www-data /var/www/myzubster-frontend
systemctl reload nginx

6.3 – Monero RPC not responding
bash

Check if running

ps aux | grep monero-wallet-rpc

Restart

cd ~/monero
pkill -f monero-wallet-rpc
nohup ./monero-wallet-rpc --rpc-bind-port 18083 --daemon-address node.moneroworld.com:38081 --wallet-file ./myzubster_wallet --password 'Myzubster2026@!!' --disable-rpc-login --trusted-daemon --stagenet > monero-wallet-rpc.log 2>&1 &

6.4 – Nginx ports already in use
bash

systemctl stop nginx
pkill -f nginx
systemctl start nginx

🌍 7. Important Links

Live Demo: https://myzubster.com

GitHub: DanielIoni-creator/MyZubsterGateway

X (Twitter): @myzubster

LinkedIn: Daniel Ioni

DEV.to: @danielioni
Enter fullscreen mode Exit fullscreen mode

🧩 8. AI Interaction Protocol

When the AI reads this guide and is asked a question, it should:

Search the guide for the relevant section.

Provide the answer with the exact section reference (e.g., "According to Section 4.1...").

Include the exact command or code snippet.

Ask if the user wants to proceed or needs more details.

Suggest the next logical step based on the current state.
Enter fullscreen mode Exit fullscreen mode

πŸ“Œ 9. Next Steps for the Project
Priority Task Status
High Test the marketplace from the browser πŸ”΄ To do
High Verify that Monero payments work end-to-end πŸ”΄ To do
High Verify that the security bot runs automatically πŸ”΄ To do
Medium Migrate Tor onion service to a new VPS 🟑 In progress
Medium Implement NFT trading in the marketplace 🟑 To do
Low Build an admin dashboard 🟒 Later
Low Add CI/CD security integration 🟒 Later
πŸ’¬ 10. AI Response Format

When the AI responds, it should follow this format:
text

[Section Reference]
πŸ“Œ Answer: [Concise answer to the user's question]

πŸ’» Command: [Exact command to run, if applicable]

πŸ”§ Next Step: [Suggested next action]

πŸ€” Question: [Ask the user if they want to proceed or need clarification]

This guide is a living document. The AI should update it with new findings, commands, and configurations as the project evolves.
Questa risposta Γ¨ generate da IA. Controllarne l'accuratezza.

Top comments (1)

Collapse
 
topstar_ai profile image
Luis Cruz

I found the directory structure outlined in Section 3 to be particularly informative, as it provides a clear overview of the project's organization. The use of a separate services directory for business logic is a good practice, as it helps to decouple the core functionality from the API routes and middleware. I'm curious to know more about the deepseekService.js and how it integrates with the AI dispute resolution mechanism - can you elaborate on the design decisions behind this component?