You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Language server support is essential for the future of phcode.dev. Language servers brings in code auto completion and advanced code assistance features inside phoenix. Almost all implementations currently in existence require node and the few that work in the browser(ts language server) run only in vscode.dev.
We should find a way to browserify popular language servers in pure browser-based environments. This will help web-based code editors like us and others to provide advanced IDE-like features in the browser.
Language server in Browser and mobile devices
While this is fairly possible if we have a node engine(Eg. in native windows/mac/Linux) builds, We will hit a roadblock if we have to deploy a code editor in the browser or mobile devices like android or ios.
The best case is to be able to run language servers in the browser. As browser environments are readily available in mobile platforms as well as desktops/servers, this will help develop a universal language server component that can work in any device with a browser environment.
Feature requirements Phase 1
Phoenix should support the following language servers out of the box as a pure browser client:
Generic infrastructure to run language servers in browser and language server client for phcode.dev
Should work in mobile/desktop browsers and web views.
Language intelligence should be in the web worker when possible.
Account for Remote language server support for remote/cloud projects.
Typescript/Javascript language server integration based on our in-browser LSP infra. Javascript code intelligence in phoenix is best to be deprecated in favor of an LSP-based implementation.
React language server. This appears to come free with Typescript language server. Phoenix currently has limited support for react language intelligence with our own implementation using ternjs.
Extensibility API for third party language servers integration
vue/vite/other frameworks that are in demand by our users.
Language server support is essential for the future of phcode.dev. Language servers brings in code auto completion and advanced code assistance features inside phoenix. Almost all implementations currently in existence require node and the few that work in the browser(ts language server) run only in vscode.dev.
We should find a way to browserify popular language servers in pure browser-based environments. This will help web-based code editors like us and others to provide advanced IDE-like features in the browser.
Language server in Browser and mobile devices
While this is fairly possible if we have a node engine(Eg. in native windows/mac/Linux) builds, We will hit a roadblock if we have to deploy a code editor in the browser or mobile devices like android or ios.
The best case is to be able to run language servers in the browser. As browser environments are readily available in mobile platforms as well as desktops/servers, this will help develop a universal language server component that can work in any device with a browser environment.
Feature requirements Phase 1
Phoenix should support the following language servers out of the box as a pure browser client:
Feature requirements Phase 2
Related issues: