-
openNDS
openNDS (open Network Demarcation Service) is a high performance, small footprint, Captive Portal. It provides a border control gateway between a public local area network and the Internet.
-
inertia
Inertia.js lets you quickly build modern single-page React, Vue and Svelte apps using classic server-side routing and controllers.
-
SurveyJS
Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.
I am currently creating a captive portal site with opennds. For this i use FAS (Forward Authentication Service) with this php script on a seperate server. In it you can see that it serves html with echo command.
This may interest you.
The recommended way to use Vue and PHP is via an API. You use PHP to create the API (there is a really good package for it!) and call that API from your Vue application.