<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>IDE on Producthunt daily</title>
        <link>https://producthunt.programnotes.cn/en/tags/ide/</link>
        <description>Recent content in IDE on Producthunt daily</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>en</language>
        <lastBuildDate>Mon, 22 Sep 2025 15:30:38 +0800</lastBuildDate><atom:link href="https://producthunt.programnotes.cn/en/tags/ide/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>LazyVim</title>
        <link>https://producthunt.programnotes.cn/en/p/lazyvim/</link>
        <pubDate>Mon, 22 Sep 2025 15:30:38 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/lazyvim/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1590024229925-4c7bc9d982ef?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3NTg1MjYxOTV8&amp;ixlib=rb-4.1.0" alt="Featured image of post LazyVim" /&gt;&lt;h1 id=&#34;lazyvimlazyvim&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/LazyVim/LazyVim&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;LazyVim/LazyVim&lt;/a&gt;
&lt;/h1&gt;&lt;div align=&#34;center&#34;&gt;
  &lt;img src=&#34;https://user-images.githubusercontent.com/292349/213446185-2db63fd5-8c84-459c-9f04-e286382d6e80.png&#34;&gt;
&lt;/div&gt;
&lt;hr&gt;
&lt;h4 align=&#34;center&#34;&gt;
  &lt;a href=&#34;https://lazyvim.github.io/installation&#34;&gt;Install&lt;/a&gt;
  ·
  &lt;a href=&#34;https://lazyvim.github.io/configuration&#34;&gt;Configure&lt;/a&gt;
  ·
  &lt;a href=&#34;https://lazyvim.github.io&#34;&gt;Docs&lt;/a&gt;
&lt;/h4&gt;
&lt;div align=&#34;center&#34;&gt;&lt;p&gt;
    &lt;a href=&#34;https://github.com/LazyVim/LazyVim/releases/latest&#34;&gt;
      &lt;img alt=&#34;Latest release&#34; src=&#34;https://img.shields.io/github/v/release/LazyVim/LazyVim?style=for-the-badge&amp;logo=starship&amp;color=C9CBFF&amp;logoColor=D9E0EE&amp;labelColor=302D41&amp;include_prerelease&amp;sort=semver&#34; /&gt;
    &lt;/a&gt;
    &lt;a href=&#34;https://github.com/LazyVim/LazyVim/pulse&#34;&gt;
      &lt;img alt=&#34;Last commit&#34; src=&#34;https://img.shields.io/github/last-commit/LazyVim/LazyVim?style=for-the-badge&amp;logo=starship&amp;color=8bd5ca&amp;logoColor=D9E0EE&amp;labelColor=302D41&#34;/&gt;
    &lt;/a&gt;
    &lt;a href=&#34;https://github.com/LazyVim/LazyVim/blob/main/LICENSE&#34;&gt;
      &lt;img alt=&#34;License&#34; src=&#34;https://img.shields.io/github/license/LazyVim/LazyVim?style=for-the-badge&amp;logo=starship&amp;color=ee999f&amp;logoColor=D9E0EE&amp;labelColor=302D41&#34; /&gt;
    &lt;/a&gt;
    &lt;a href=&#34;https://github.com/LazyVim/LazyVim/stargazers&#34;&gt;
      &lt;img alt=&#34;Stars&#34; src=&#34;https://img.shields.io/github/stars/LazyVim/LazyVim?style=for-the-badge&amp;logo=starship&amp;color=c69ff5&amp;logoColor=D9E0EE&amp;labelColor=302D41&#34; /&gt;
    &lt;/a&gt;
    &lt;a href=&#34;https://github.com/LazyVim/LazyVim/issues&#34;&gt;
      &lt;img alt=&#34;Issues&#34; src=&#34;https://img.shields.io/github/issues/LazyVim/LazyVim?style=for-the-badge&amp;logo=bilibili&amp;color=F5E0DC&amp;logoColor=D9E0EE&amp;labelColor=302D41&#34; /&gt;
    &lt;/a&gt;
    &lt;a href=&#34;https://github.com/LazyVim/LazyVim&#34;&gt;
      &lt;img alt=&#34;Repo Size&#34; src=&#34;https://img.shields.io/github/repo-size/LazyVim/LazyVim?color=%23DDB6F2&amp;label=SIZE&amp;logo=codesandbox&amp;style=for-the-badge&amp;logoColor=D9E0EE&amp;labelColor=302D41&#34; /&gt;
    &lt;/a&gt;
    &lt;a href=&#34;https://twitter.com/intent/follow?screen_name=folke&#34;&gt;
      &lt;img alt=&#34;follow on Twitter&#34; src=&#34;https://img.shields.io/twitter/follow/folke?style=for-the-badge&amp;logo=twitter&amp;color=8aadf3&amp;logoColor=D9E0EE&amp;labelColor=302D41&#34; /&gt;
    &lt;/a&gt;
&lt;/div&gt;
&lt;p&gt;LazyVim is a Neovim setup powered by &lt;a class=&#34;link&#34; href=&#34;https://github.com/folke/lazy.nvim&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;💤 lazy.nvim&lt;/a&gt;
to make it easy to customize and extend your config.
Rather than having to choose between starting from scratch or using a
pre-made distro, LazyVim offers the best of both worlds - the flexibility
to tweak your config as needed, along with the convenience of a pre-configured setup.&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://user-images.githubusercontent.com/292349/211285846-0b7bb3bf-0462-4029-b64c-4ee1d037fc1c.png&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;image&#34;
	
	
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://user-images.githubusercontent.com/292349/213447056-92290767-ea16-430c-8727-ce994c93e9cc.png&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;image&#34;
	
	
&gt;&lt;/p&gt;
&lt;h2 id=&#34;-features&#34;&gt;✨ Features
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;🔥 Transform your Neovim into a full-fledged IDE&lt;/li&gt;
&lt;li&gt;💤 Easily customize and extend your config with &lt;a class=&#34;link&#34; href=&#34;https://github.com/folke/lazy.nvim&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;lazy.nvim&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;🚀 Blazingly fast&lt;/li&gt;
&lt;li&gt;🧹 Sane default settings for options, autocmds, and keymaps&lt;/li&gt;
&lt;li&gt;📦 Comes with a wealth of plugins pre-configured and ready to use&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;-requirements&#34;&gt;⚡️ Requirements
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;Neovim &amp;gt;= &lt;strong&gt;0.11.2&lt;/strong&gt; (needs to be built with &lt;strong&gt;LuaJIT&lt;/strong&gt;)&lt;/li&gt;
&lt;li&gt;Git &amp;gt;= &lt;strong&gt;2.19.0&lt;/strong&gt; (for partial clones support)&lt;/li&gt;
&lt;li&gt;a &lt;a class=&#34;link&#34; href=&#34;https://www.nerdfonts.com/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Nerd Font&lt;/a&gt; &lt;strong&gt;&lt;em&gt;(optional)&lt;/em&gt;&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;a &lt;strong&gt;C&lt;/strong&gt; compiler for &lt;code&gt;nvim-treesitter&lt;/code&gt;. See &lt;a class=&#34;link&#34; href=&#34;https://github.com/nvim-treesitter/nvim-treesitter#requirements&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;here&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;-getting-started&#34;&gt;🚀 Getting Started
&lt;/h2&gt;&lt;p&gt;You can find a starter template for &lt;strong&gt;LazyVim&lt;/strong&gt; &lt;a class=&#34;link&#34; href=&#34;https://github.com/LazyVim/starter&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;here&lt;/a&gt;&lt;/p&gt;
&lt;details&gt;&lt;summary&gt;Try it with Docker&lt;/summary&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker run -w /root -it --rm alpine:edge sh -uelic &lt;span class=&#34;s1&#34;&gt;&amp;#39;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;  apk add git lazygit fzf curl neovim ripgrep alpine-sdk --update
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;  git clone https://github.com/LazyVim/starter ~/.config/nvim
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;  cd ~/.config/nvim
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;  nvim
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;s1&#34;&gt;&amp;#39;&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;/details&gt;
&lt;details&gt;&lt;summary&gt;Install the &lt;a href=&#34;https://github.com/LazyVim/starter&#34;&gt;LazyVim Starter&lt;/a&gt;&lt;/summary&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Make a backup of your current Neovim files:&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mv ~/.config/nvim ~/.config/nvim.bak
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;mv ~/.local/share/nvim ~/.local/share/nvim.bak
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Clone the starter&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/LazyVim/starter ~/.config/nvim
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Remove the &lt;code&gt;.git&lt;/code&gt; folder, so you can add it to your own repo later&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;rm -rf ~/.config/nvim/.git
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Start Neovim!&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;nvim
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Refer to the comments in the files on how to customize &lt;strong&gt;LazyVim&lt;/strong&gt;.&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;/details&gt;
&lt;hr&gt;
&lt;p&gt;There&amp;rsquo;s a great video created by &lt;a class=&#34;link&#34; href=&#34;https://github.com/elijahmanor&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;@elijahmanor&lt;/a&gt; with a walkthrough to get started.&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://www.youtube.com/watch?v=N93cTbtLCIM&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.youtube.com/vi/N93cTbtLCIM/hqdefault.jpg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;Watch the video&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/dusty-phillips&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;@dusty-phillips&lt;/a&gt; wrote a comprehensive book called
&lt;a class=&#34;link&#34; href=&#34;https://lazyvim-ambitious-devs.phillips.codes&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;LazyVim for Ambitious Developers&lt;/a&gt;
available for free online.&lt;/p&gt;
&lt;h2 id=&#34;-file-structure&#34;&gt;📂 File Structure
&lt;/h2&gt;&lt;p&gt;The files under config will be automatically loaded at the appropriate time,
so you don&amp;rsquo;t need to require those files manually.
&lt;strong&gt;LazyVim&lt;/strong&gt; comes with a set of default config files that will be loaded
&lt;strong&gt;&lt;em&gt;before&lt;/em&gt;&lt;/strong&gt; your own. See &lt;a class=&#34;link&#34; href=&#34;https://github.com/LazyVim/LazyVim/tree/main/lua/lazyvim/config&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;here&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;You can add your custom plugin specs under &lt;code&gt;lua/plugins/&lt;/code&gt;. All files there
will be automatically loaded by &lt;a class=&#34;link&#34; href=&#34;https://github.com/folke/lazy.nvim&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;lazy.nvim&lt;/a&gt;&lt;/p&gt;
&lt;pre&gt;
~/.config/nvim
├── lua
│   ├── config
│   │   ├── autocmds.lua
│   │   ├── keymaps.lua
│   │   ├── lazy.lua
│   │   └── options.lua
│   └── plugins
│       ├── spec1.lua
│       ├── **
│       └── spec2.lua
└── init.lua
&lt;/pre&gt;
&lt;h2 id=&#34;-configuration&#34;&gt;⚙️ Configuration
&lt;/h2&gt;&lt;p&gt;Refer to the &lt;a class=&#34;link&#34; href=&#34;https://lazyvim.github.io&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;docs&lt;/a&gt;&lt;/p&gt;
</description>
        </item>
        <item>
        <title>zls</title>
        <link>https://producthunt.programnotes.cn/en/p/zls/</link>
        <pubDate>Sun, 24 Aug 2025 15:27:47 +0800</pubDate>
        
        <guid>https://producthunt.programnotes.cn/en/p/zls/</guid>
        <description>&lt;img src="https://images.unsplash.com/photo-1531748528593-991cafd0101f?ixid=M3w0NjAwMjJ8MHwxfHJhbmRvbXx8fHx8fHx8fDE3NTYwMjAzODF8&amp;ixlib=rb-4.1.0" alt="Featured image of post zls" /&gt;&lt;h1 id=&#34;zigtoolszls&#34;&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/zigtools/zls&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;zigtools/zls&lt;/a&gt;
&lt;/h1&gt;&lt;img src=&#34;https://raw.githubusercontent.com/zigtools/zls/master/.github/assets/zls-opt.svg&#34; alt=&#34;ZLS Logo&#34; width=200&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/zigtools/zls/actions/workflows/main.yml&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://github.com/zigtools/zls/actions/workflows/main.yml/badge.svg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;CI&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://codecov.io/github/zigtools/zls&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://codecov.io/github/zigtools/zls/graph/badge.svg?token=WE18MPF00W&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;codecov&#34;
	
	
&gt;&lt;/a&gt;
&lt;a class=&#34;link&#34; href=&#34;https://opensource.org/licenses/MIT&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://img.shields.io/badge/License-MIT-yellow.svg&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;License: MIT&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Need support? Wanna help out? Join our &lt;a class=&#34;link&#34; href=&#34;https://discord.gg/5m5U3qpUhk&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Discord server&lt;/a&gt;!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;ZLS is a non-official implementation of the &lt;a class=&#34;link&#34; href=&#34;https://microsoft.github.io/language-server-protocol/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Language Server Protocol&lt;/a&gt; for &lt;a class=&#34;link&#34; href=&#34;https://ziglang.org/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Zig&lt;/a&gt; in Zig. It provides developers with IDE &lt;a class=&#34;link&#34; href=&#34;#features&#34; &gt;features&lt;/a&gt; in their editor.&lt;/p&gt;
&lt;h2 id=&#34;installation&#34;&gt;Installation
&lt;/h2&gt;&lt;h3 id=&#34;see-the-installation-guide-for-editor-and-binary-installation-instructions&#34;&gt;See the &lt;a class=&#34;link&#34; href=&#34;https://zigtools.org/zls/install/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Installation Guide&lt;/a&gt; for editor and binary installation instructions.
&lt;/h3&gt;&lt;h3 id=&#34;from-source&#34;&gt;From Source
&lt;/h3&gt;&lt;p&gt;Building ZLS requires &lt;a class=&#34;link&#34; href=&#34;https://ziglang.org/download/&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;a build of Zig master&lt;/a&gt;.&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/zigtools/zls
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; zls
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;zig build -Doptimize&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;ReleaseSafe
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;features&#34;&gt;Features
&lt;/h2&gt;&lt;p&gt;ZLS supports most language features, including simple type function support, using namespace, payload capture type resolution, custom packages, cImport and others. Support for comptime and semantic analysis is Work-in-Progress.&lt;/p&gt;
&lt;p&gt;The following LSP features are supported:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Completions&lt;/li&gt;
&lt;li&gt;Hover&lt;/li&gt;
&lt;li&gt;Goto definition/declaration&lt;/li&gt;
&lt;li&gt;Document symbols&lt;/li&gt;
&lt;li&gt;Find references&lt;/li&gt;
&lt;li&gt;Rename symbol&lt;/li&gt;
&lt;li&gt;Formatting using &lt;code&gt;zig fmt&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Semantic token highlighting&lt;/li&gt;
&lt;li&gt;Inlay hints&lt;/li&gt;
&lt;li&gt;Code actions&lt;/li&gt;
&lt;li&gt;Selection ranges&lt;/li&gt;
&lt;li&gt;Folding regions&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;related-projects&#34;&gt;Related Projects
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/prime31/sublime-zig-language&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;code&gt;sublime-zig-language&lt;/code&gt; by @prime31&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Supports basic language features&lt;/li&gt;
&lt;li&gt;Uses data provided by &lt;code&gt;src/data&lt;/code&gt; to perform builtin autocompletion&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/xackus/zig-lsp&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;code&gt;zig-lsp&lt;/code&gt; by @xackus&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Inspiration for ZLS&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/ziglibs/known-folders&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;code&gt;known-folders&lt;/code&gt; by @ziglibs&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Provides API to access known folders on Linux, Windows and Mac OS&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/zigtools/zls&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;code&gt;zls&lt;/code&gt; by @zigtools&lt;/a&gt;
&lt;ul&gt;
&lt;li&gt;Used by many ZLS developers to more efficiently work on ZLS&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;quick-thanks-&#34;&gt;Quick Thanks :)
&lt;/h2&gt;&lt;p&gt;We&amp;rsquo;d like to take a second to thank all our awesome &lt;a class=&#34;link&#34; href=&#34;https://github.com/zigtools/zls/graphs/contributors&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;contributors&lt;/a&gt; and donators/backers/sponsors; if you have time or money to spare, consider partaking in either of these options - they help keep ZLS awesome for everyone!&lt;/p&gt;
&lt;p&gt;&lt;a class=&#34;link&#34; href=&#34;https://opencollective.com/zigtools#category-CONTRIBUTE&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;&lt;img src=&#34;https://opencollective.com/zigtools/backers.svg?width=890&amp;amp;limit=1000&#34;
	
	
	
	loading=&#34;lazy&#34;
	
		alt=&#34;OpenCollective Backers&#34;
	
	
&gt;&lt;/a&gt;&lt;/p&gt;
</description>
        </item>
        
    </channel>
</rss>
