IDE Similar to PyCharm for Work

This page summarizes the projects mentioned and recommended in the original post on /r/Python

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
  • Python-mode

    Vim python-mode. PyLint, Rope, Pydoc, breakpoints from box.

  • If you want a quick start to building Vim based IDE for Python, I recommend python-mode. It gives you most of the things you're going to need in one plugin, there are often better implementations of some of its features in other more specialised plugins, but if you don't have time to research and learn to integrate a lot of different plugins, it's a great base to start from. Over time as you learn how you prefer to work and found specialised plugins that suits your workflow better, you can disable many of its features and replace them with more specialised plugins.

  • vim-lsp

    async language server protocol plugin for vim and neovim

  • For language server client, people often use CoC (Conquer of Completion), it's very popular, but I find it is rather hard to install and frankly a bit bloated. But once you got through the complicated install process, it seems to offer many beginner friendly features. Instead, what I personally use is prabirshrestha/vim-lsp, which is a small and simple to use client.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
  • python-lsp-server

    Fork of the python-language-server project, maintained by the Spyder IDE team and the community

  • For the language server itself, I use python-lsp-server.

  • vim-textobj-python

    Text objects for Python.

  • Out of the box, vim is already very good at text editing, but to supercharge your editing power, you would want to add some additional text objects. Most important for Python is bps/vim-textobj-python and kana/vim-textobj-indent.

  • vim-textobj-indent

    Vim plugin: Text objects for indented blocks of lines

  • Out of the box, vim is already very good at text editing, but to supercharge your editing power, you would want to add some additional text objects. Most important for Python is bps/vim-textobj-python and kana/vim-textobj-indent.

  • vim-pudb

    Manage pudb breakpoints directly from vim

  • For debugging, I highly recommend pudb, it's a pure python TUI debugger, which uses a lot of Vim bindings. Run it in a :terminal session. To integrate with vim, you can use KangOl/vim-pudb with pudb debugger, though I would recommend a branch with some bug fixes: lieryan/vim-pudb.

  • vim-pudb

    Manage pudb breakpoints directly from vim (by lieryan)

  • For debugging, I highly recommend pudb, it's a pure python TUI debugger, which uses a lot of Vim bindings. Run it in a :terminal session. To integrate with vim, you can use KangOl/vim-pudb with pudb debugger, though I would recommend a branch with some bug fixes: lieryan/vim-pudb.

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • jedi

    Awesome autocompletion, static analysis and refactoring library for python

  • For text completion, Jedi. For automated refactoring, I highly recommend rope. Some of the previously mentioned plugins provides Vim integrations with these excellent tools.

  • Rope

    a python refactoring library

  • For text completion, Jedi. For automated refactoring, I highly recommend rope. Some of the previously mentioned plugins provides Vim integrations with these excellent tools.

  • vim-test

    Run your tests at the speed of thought

  • vim-test with lieryan/vim-jumpsuite

  • vim-jumpsuite

    Jump to "interesting" line of code from your test suite.

  • vim-test with lieryan/vim-jumpsuite

  • vim-location-awareness

    Display current class and function name in Vim statusline

  • lieryan/vim-location-awareness

  • coc.nvim

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

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts