YouNeed.dev — home
Yavor ZagorskiSenior WordPress / PHP Engineer
CV Let’s build
← All work

Offshore Sportsbooks / WordPress platform ownership

The site was
the visible part.

~5 years inside an evolving production platform.

Custom themes, Gutenberg systems, structured data and integrations.

PUBLISHED PRODUCTOSB / PUBLIC INTERFACE
Actual OSB review directory and bookmaker rankings
REAL PROJECT EVIDENCE Inspect original ↗
EDITORIAL CONTROLCUSTOM GUTENBERG
Actual OSB Gutenberg block inserter and editor
REAL PROJECT EVIDENCE Inspect original ↗
EDITOR → BLOCK → PHP RENDER30+ custom blocks.REUSABLE EDITORIAL CONTRACTS

Reveal the layer / 01

The editor owns
the composition.

The block owns its rendering. The interface separates to expose that relationship.

STRUCTURED BOOKMAKER CONTENTREAL ADMIN FIELDS
Bookmaker rank, rating, review URL and offer fields
REAL PROJECT EVIDENCE Inspect original ↗

Reveal the layer / 02

The view changes.
The data persists.

Rankings, reviews and calls to action read managed records. PHP turns those fields back into a public interface.

SCROLL TO REVEAL THE ENGINEERINGPUBLIC → EDITOR → DATA → RENDER

01 / The publishing system

Not thirty pages.
A language for building them.

30+ custom Gutenberg blocks across the platform. Reusable editorial components, with PHP rendering and structured data behind the interface—not a new layout built from scratch for every page.

A smaller decision. A reusable behavior.

Editorial control,
without rebuilding
the homepage.

The featured-pick workflow selects the latest eligible published pick. An editor can control eligibility in the sidebar; the dynamic block renders the result.

Dynamic VTX Home Pick block explaining how an eligible published pick is selected
Real dynamic-block preview.
WordPress sidebar with Show on homepage enabled and pick fields
The editorial decision.

02 / Connected data

The page changes.
The model holds.

Reviews, rankings and calls to action are views of managed information. WordPress was the content model as well as the publishing interface.

Bookmaker admin fields for rank, rating, review URL, CTA, bonus and deposit information
Real bookmaker fields. Mobile shows a detail crop; open the full record to inspect all fields.
Identity & order
Bookmaker / casino records, ratings and rank. Reused by review and comparison components.
Eligibility & discovery
States and centrally managed payment methods supply structured filtering.
Commercial behavior
Offer fields, CTA destinations and dedicated affiliate-management tooling.
WordPress underneath

Custom themes and plugins. Post types for editorial picks, news and product content. Taxonomies for organization. Block registration, editor behavior and server-side rendering as separate responsibilities.

External data, controlled at the boundary

An API response
isn’t an interface.

The integration layer has work to do first: request and cache the response, select supported bookmakers, normalize markets, then supply the view.

  1. 01Request & cache

    External feed · WordPress HTTP API · transient cache

  2. 02Transform

    Selected bookmakers · normalized teams and markets

  3. 03Render

    Application logic · PHP view · public interface

OSB player statistics interface with player selection and structured statistical rows
A real statistics interface from the OSB integration work. Detail crop on mobile.

The important work
is between systems.

The flow above abstracts behavior verified in the odds-integration source. The statistics screen shows another public-facing part of that integration work—not a trace of that exact request.

No private endpoints or proprietary source are exposed here.

03 / The responsibility underneath

Code is only part
of ownership.

The work continued after the interface shipped: maintaining the application, investigating production problems and evolving the platform through multiple custom theme generations.

Application

Keep the systems working together.

PHP and JavaScript. Custom WordPress themes, plugins, editorial workflows and API integrations.

Runtime

Understand what the code runs on.

Performance and caching work across a production environment involving Linux, Nginx, MySQL, Redis and Cloudflare.

Continuity

Stay responsible when it changes.

Deployment, security work, troubleshooting and long-term maintenance—not just the initial implementation.

Responsibility areas from the project history, not a reconstructed infrastructure topology or a claim of sole authorship.

Approximately five years inside
one evolving platform

What stays with you

You live with
the decisions.

Building a system once is one kind of work. Maintaining it across years of new requirements and theme generations is another.

OSB is the clearest expression of my WordPress and PHP experience: the interface, the systems behind it, and the responsibility that connects them.

My engineering work at Media Hype / OSB, within an evolving production platform. Screenshots document interfaces; their embedded commercial figures are not claimed project outcomes.