New VS Code Architecture 👨🏼💻
Recently, the VS Code team has open-sourced many of the core components of the web server. Because of this, we’ve moved to a fork-based workflow so that we are able to support new VS Code versions faster, and leverage the upstream server. ⚡
Open-VSX Extension Registry 📦
Microsoft’s extension marketplace is proprietary and limited to use within Microsoft products. This means that unofficial forks such as code-server, openvscode-server, and VSCodium cannot use the marketplace.
Our previous workaround was to maintain our own extension marketplace, this worked for a while but became fragile and unreliable. We opted for the better solution: using the Open-VSX registry. This is now the default extension marketplace for code-server.
We’ve previously documented using open-vsx with code-server, but we’re pretty excited about it being the default option now. Here’s why:
- Python, C++, CLang, and other language extensions will “just work” 🙌🏼
- Many extensions are published and maintained on Open VSX. Our custom registry had to automatically, or often manually pull open-source extensions from GitHub
- OpenVSX added support for web extensions, so code-server users can use their favorite extensions with no issues 🎉
- Extensions are available across IDEs (Eclipse Theia, openvscode-server, etc). Users will not need to change their workflow if they switch IDEs
50,000 GitHub stars 🌟
2021 was a pretty awesome year for code-server. For starters, we hit 50,000 GitHub stars! The project had 86 unique contributors and 748 users participated in issues. Two open source maintainers (jsjoeio and TeffenEllis) also joined in 2021. Stay tuned for an in-depth “year in review” for code-server!
Our next priority for code-server is to assess our changes compared to upstream VS Code and see if we can remove as much as possible. That way, we are more aligned with upstream and can also submit patches upstream 🎉
Big thank you to everyone in the community who contributed to code-server 4.0! We couldn’t have done it without you.