DevHub
Back to all projects

Made by Zeyad

GoWeb

Published May 17, 2026
Location Istanbul, Türkiye
Response 100% positive

The build story behind GoWeb

GoWeb is a website analysis platform that helps users quickly understand how a public webpage performs from a frontend experience perspective. The user submits a URL, and the system renders the page in real browser environments, captures desktop and mobile screenshots, extracts visible frontend signals, and generates a structured report covering usability, responsiveness, accessibility signals, visual hierarchy, content structure, and consistency. The project is built with a Next.js and TypeScript frontend using Tailwind CSS and Shadcn UI for a modern, responsive interface. The backend uses FastAPI with SQLAlchemy 2.0, Alembic, Pydantic, and PostgreSQL. Playwright is used to render webpages and inspect browser-visible output, while Celery and Redis are planned for handling analysis jobs reliably from the beginning. I chose a modular architecture with clear separation between the API layer, URL validation, rendering, extraction, rules engine, scoring, persistence, authentication, and reporting. This keeps the system easier to test, debug, and extend. The main tradeoff behind the project was choosing deterministic analysis first instead of trying to make the system too broad too early. The app focuses only on what can be observed from the rendered frontend, such as DOM structure, layout behavior, screenshots, and extracted UI signals. This makes the reports more explainable because every issue is connected to evidence, such as missing headings, overloaded navigation, mobile overflow, unclear CTAs, or inconsistent UI patterns. Next, I would improve the project by refining the rules engine with more real-world test cases, improving score calibration, strengthening error handling for websites that block automation, adding better report history filtering, and polishing the report page experience. I would also improve deployment reliability around Playwright because browser automation can be resource-heavy in production environments.