main
 1{
 2  flake.modules.homeManager.dev = {pkgs, ...}: {
 3    home.packages = with pkgs; [
 4      # === Data & Configuration Languages === #
 5      # -- Nix
 6      # nil # Nix LSP
 7      nixd # Nix LSP
 8      alejandra # Nix Formatter
 9
10      # -- Json Like
11      taplo # TOML LSP / Formatter / Validator
12      yaml-language-server
13      actionlint # GitHub Actions linter
14      kdlfmt # KDL Formatter
15
16      # -- Documents
17      marksman # Markdown LSP
18      rumdl
19      tinymist # Typst LSP
20      typstyle # Typst Formatter
21      mdx-language-server
22      texlab # LaTeX LSP
23      tex-fmt # LaTeX Formatter
24      pandoc # Document converter
25
26      # Misc
27      just # Command snippet runner
28      just-lsp
29
30      wakatime-cli
31
32      steel-language-server
33
34      # === General Purpose Languages === #
35      # -- C/C++
36      cmake
37      cmake-language-server
38      gnumake
39      checkmake
40      xmake # C/C++ build system and dependency manager
41      gcc
42      gdb
43      clang-tools
44      lldb
45
46      # -- Python
47      uv # Python package manager in rust
48      pixi # Python package manager in rust, supports conda
49      ruff # Python Linter and formatter
50      ty # Python LSP and type checker
51      python313
52
53      #-- rust
54      rustc
55      rust-analyzer
56      cargo # rust package manager
57      rustfmt
58      clippy # rust linter
59
60      # -- Lua
61      stylua # Lua formatter
62      lua-language-server
63
64      #-- bash
65      bash-language-server
66      shellcheck
67      shfmt
68
69      # === Web Development === #
70      nodejs
71      pnpm
72      bun
73      deno
74
75      typescript
76      typescript-language-server
77      vscode-langservers-extracted # HTML/CSS/JSON/ESLint LSP extracted from vscode
78      tailwindcss-language-server
79      astro-language-server
80      svelte-language-server
81      # stylelint-lsp # Use biome instead
82      prettier
83      biome
84    ];
85  };
86}