Rustlings VS rust-analyzer

Compare Rustlings vs rust-analyzer and see what are their differences.

Rustlings

:crab: Small exercises to get you used to reading and writing Rust code! (by rust-lang)
Our great sponsors
  • SonarLint - Deliver Cleaner and Safer Code - Right in Your IDE of Choice!
  • OPS - Build and Run Open Source Unikernels
  • Scout APM - Less time debugging, more time building
Rustlings rust-analyzer
95 170
21,660 8,317
6.4% 6.2%
8.8 10.0
3 days ago 3 days ago
Rust Rust
MIT License GNU General Public License v3.0 or later
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

Rustlings

Posts with mentions or reviews of Rustlings. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-01-17.

rust-analyzer

Posts with mentions or reviews of rust-analyzer. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-01-27.
  • Switching to native lsp and using it with rust
    2 projects | reddit.com/r/neovim | 27 Jan 2022
    -- all the opts to send to nvim-lspconfig -- these override the defaults set by rust-tools.nvim -- see https://github.com/neovim/nvim-lspconfig/blob/master/doc/server_configurations.md#rust_analyzer server = { -- on_attach is a callback called when the language server attachs to the buffer -- on_attach = on_attach, settings = { -- to enable rust-analyzer settings visit: -- https://github.com/rust-analyzer/rust-analyzer/blob/master/docs/user/generated_config.adoc ["rust-analyzer"] = { -- enable clippy on save checkOnSave = { command = "clippy" }, } } },
  • Having issues using async functions
    1 project | reddit.com/r/learnrust | 25 Jan 2022
    I'm having the exact same issue as here where using async fn causes an error
  • rust-analyzer changelog #113
    2 projects | reddit.com/r/rust | 24 Jan 2022
    Correct me if I'm wrong, but format_args_capture still isn't supported yet. https://github.com/rust-analyzer/rust-analyzer/issues/11260
    2 projects | reddit.com/r/rust | 24 Jan 2022
    I often run into this issue, and the only way to solve it right now is to reload the entire VSCode window.
  • [Media] Program works but still rust-analysis in vs-code shows this error. Might be a bug?
    1 project | reddit.com/r/rust | 24 Jan 2022
  • Looking for some constructive criticism as a Python dev writing my first Rust program
    2 projects | reddit.com/r/rust | 21 Jan 2022
    - cargo clippy will point out lots of other nice things you could do probably! If you use VS Code be sure to get https://github.com/rust-analyzer/rust-analyzer and be sure to configure it to run cargo clippy on save, super useful way to get immediate feedback on the code.
  • Blog post: Rust at Scale: Packages, Crates, and Modules
    2 projects | reddit.com/r/rust | 19 Jan 2022
    In this sense, I am very against having things like types which split stuff across linguistic category, rather than a slice of the domain. I think it’s much better to have, eg, types module in the http_api crate, and a separate types module in the persistsnce crate with somewhat duplicate definitions and explicit conversion between the two. I am a huge fan of writing tons of adaptor boilerplate like here: https://github.com/rust-analyzer/rust-analyzer/blob/master/crates/rust-analyzer/src/to_proto.rs.
    2 projects | reddit.com/r/rust | 19 Jan 2022
    We started with a similar setup in rust-analyzer: obviously, when you want to convert X to Y, you need a trait for that, right? But then I’ve refactored that to just a bunch of functions in https://github.com/rust-analyzer/rust-analyzer/pull/4418, and never looked back. In ra case, that was a case of concrete abstraction (https://matklad.github.io/2020/08/15/concrete-abstraction.html) — all the callers wanted to convert specific X to specific Y, no one was using the trait generically.
  • Announcing Rust 1.58.0
    6 projects | reddit.com/r/rust | 14 Jan 2022
    Seems so, and looks like there aren't any issues open for either case yet. Would you like to do the honors? https://github.com/rust-analyzer/rust-analyzer/issues
  • Bevy game engine v0.6.0 released
    6 projects | news.ycombinator.com | 8 Jan 2022
    You can either use rust-analyzer[1] (for which vscode is most well supported), or IntelliJ Rust [2]. Personally, I use `rust-analyzer` with vscode as a bevy developer.

    [1]: https://github.com/rust-analyzer/rust-analyzer

What are some alternatives?

When comparing Rustlings and rust-analyzer you can also consider the following projects:

coc.nvim - Nodejs extension host for vim & neovim, load extensions like VSCode and host language servers.

ale - Check syntax in Vim asynchronously and fix files, with Language Server Protocol (LSP) support

rustfmt - Format Rust code

eglot - A client for Language Server Protocol servers

typescript-language-server - TypeScript & JavaScript Language Server

vim-lsp-settings - Auto configurations for Language Server for vim-lsp

intellij-lsp-server - Exposes IntelliJ IDEA features through the Language Server Protocol.

neovim-rust - Sample neovim and vim configurations for Rust development

Visual Studio Code - Visual Studio Code

wasm-bindgen - Facilitating high-level interactions between Wasm modules and JavaScript

vim-lsp - async language server protocol plugin for vim and neovim

vscode-rust - Rust extension for Visual Studio Code