okay, today is a new day on my one project daily aim, and i am trying to build a smart contract audit tool. i noticed people i taught in 2021 became a big deal in just 18 months of work. the universe rewards those who put in their efforts and try their best.
to be honest, i have to perfect everything with the yarn setup and then i setup docker for this to work efficiently.
finally, the vuln scanner is working fine without errors. but i think it is not detecting vulnerabilities, gas optimizations or coe quality issues, because i intentionally used bad code from one hack for this. but i think this is because some detection methods i used are still stubs and need more robust AST traversal logic.
maybe because i am not much of a ui guy, so i want to perfect the vuln detection method before doing anything about the frontend/backend integration or even the UI itself.
So, I will implement tx.origin usage detection, unchecked external calls, weak randomness sources, missing access control, and dangerous delegatecall usage before i sleep.
i am used to getting my setup run properly on cli before trying to add a web ui for it. just to feel like a god!
okay, let me just work up the frontend at this point. let's even see what i have going. i downgraded my express from 5.x to 4.x and it is smooth now. backend running fine, time to get back to the frontend. some org wasted my time for an interview that never held, and while at it i lost funds i requested withdrawal for, i guess life is not fair.
freaking pissed, because why on earth would tailwind be causing so much errors.
okay, i use this method:
view0x/
├── backend/ # Node.js/Express API server
│ ├── src/
│ │ ├── scanner-engine/ # TypeScript-based analysis engine (moved from root)
│ │ ├── services/ # Business logic services
│ │ ├── controllers/ # API route handlers
│ │ ├── models/ # Database models
│ │ └── workers/ # Background job processors
│ └── package.json
├── frontend/ # React + Vite application
├── python/ # Python analysis worker (FastAPI)
│ ├── analyzers/ # Slither, Mythril, Semgrep wrappers
│ └── main.py # FastAPI server
├── docs/ # Documentation
└── docker-compose.yml # Container orchestrationview0x is a cloud-native SaaS platform for automated smart contract security analysis, providing developers with comprehensive vulnerability detection, gas optimization suggestions, and code quality assessments.
- Automated Security Scanning - Detect vulnerabilities in Solidity smart contracts
- Real-time Analysis - Get instant results with WebSocket updates
- Modern UI - Beautiful dark theme interface
- Public & Authenticated - Scan contracts without login, save history with account
- Detailed Reports - Comprehensive vulnerability analysis with severity levels
- Fast & Scalable - Built for performance and reliability
The default Docker setup runs the app as separate services:
web- frontend containerapi- Node/Express backendpython-worker- analysis workerpostgres- PostgreSQLredis- Redis
Everything uses the single root .env.example. Do not create separate backend/.env or frontend/.env files for Docker.
-
Copy the root environment template:
cp .env.example .env
-
Start the stack:
docker compose up -d --build
-
Access the services:
- Frontend:
http://localhost:8088 - Backend API:
http://localhost:3001 - API docs:
http://localhost:8088/api-docs - PostgreSQL:
localhost:5433 - Redis:
localhost:6380
- Frontend:
-
Check container status:
docker compose ps
-
Stop the stack:
docker compose down
You can change any host port from the single root .env:
WEB_PORTAPI_PORTPOSTGRES_PORTREDIS_PORT
If you prefer to run services individually:
-
Start PostgreSQL and Redis:
docker-compose up db redis -d
-
Backend Setup:
cd backend npm install # Create .env file with your configuration npm run build npm run dev # Runs on http://localhost:3001
-
Frontend Setup:
cd frontend npm install npm run dev # Runs on http://localhost:5173 (Vite default)
-
Python Worker (Optional):
cd python pip install -r requirements.txt python main.py # Runs on http://localhost:8000
-
Scanner Engine (Optional):
cd scanner-engine npm install npm run build npm start
The project now uses a single root .env / .env.example as the main configuration source for Docker.
Important values:
WEB_PORT- Host port for the frontend containerAPI_PORT- Host port for the backend containerPOSTGRES_PORT- Host port for PostgreSQLREDIS_PORT- Host port for RedisDATABASE_URL- Internal PostgreSQL connection string for containersREDIS_URL- Internal Redis connection string for containersJWT_SECRET- Secret for JWT tokensPYTHON_API_URL- URL for the Python analysis worker
i just realized i hardcoded it to localhost:3001/api/analysis/public. that is why when i shut down my pc it does not scan. anyways, in api.ts i have fixed it to take from render where i updated the api.
- Frontend: Deployed on Cloudflare Pages at
view0x.com - Backend: Deployed on Railway at
api.view0x.com - API Documentation: Available at
https://api.view0x.com/api-docs(Swagger/OpenAPI) - Database: PostgreSQL on Railway
- Cache: Redis on Railway
See CLOUDFLARE.md and RAILWAY.md for detailed deployment instructions.
We welcome contributions! Please see CONTRIBUTING.md for guidelines.
okay, in the end, i simply setup a wrangler for cloudflare workers to get it running well.
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
okay, this is the end of it. i would use AI to write commit messages. i cant be explaining myself again. this stuff giving me brain rot, i cant even think clearly about full definition to give per fix i make.
it's 2026, and i have decided to rename, thank you!
- Website: https://view0x.com
- API: https://api.view0x.com
- API Documentation: https://api.view0x.com/api-docs
- GitHub: https://github.com/1cbyc/view0x





