PyCharm

How to Setup PyCharm for Your Projects

How to Setup PyCharm for Your Projects

PyCharm installs the same way on Windows, macOS and Linux. The installer is the quick part. Most of the time goes into picking an interpreter, creating the project, and getting a run configuration to point at the right folder.

Since PyCharm 2025.1, JetBrains ships one unified product instead of separate Community and Professional builds. Every installation begins with a 30-day Pro trial and afterwards keeps the free core, which includes Jupyter Notebook support (JetBrains Help, 2026). An older guide that tells you to choose between a Community and a Professional download is describing a split JetBrains retired with that release.

What are the PyCharm system requirements?

Windows 10 and 11, macOS 15 and 26, and Linux all work, and 8 GB of RAM is the hardware floor. JetBrains Help gives these figures for PyCharm 2026.2.

  • 8 GB of RAM in total, with 3 GB of that free for the IDE processes
  • An x86\_64 or arm64 CPU with 4 cores
  • 10 GB of disk space
  • A 1280 x 720 display
  • Python 3.9 up to 3.15, or 2.7 if you still maintain something that old

The 3 GB has to be free, so everything else you have running counts against it. Your browser and a Docker daemon take their share of the same 8 GB.

Linux has the longest requirements list. JetBrains names Ubuntu 24.04 and 26.04 LTS, Fedora 43 and 44, Debian 13 and Amazon Linux 2023. Gnome and KDE Plasma are the desktop environments it lists, and glibc must be 2.28 or later. BSD-based systems are not supported.

You don’t need to install Java.

JetBrains Runtime (based on JBR 21) ships inside the IDE, and setups with a modified JRE or JDK are unsupported.

Is PyCharm free after the Community and Professional merge?

Yes, the core product is free. Since PyCharm 2025.1 there is a single unified PyCharm. It starts with a 30-day Pro trial and then drops to the free core unless you buy a Pro subscription (JetBrains Help, PyCharm 2026.2).

Community 2025.2 was the last standalone Community release, per JetBrains’ April 2025 announcement. From 2025.3 onward, Community users move to the unified build.

New users get the trial automatically and choose Pro or the free core once it ends. Former Community users keep the familiar features free and pick up built-in Jupyter Notebook support. Pro license holders don’t have to do anything, because the existing license unlocks Pro features in the unified app.

Why is Python conquering the tech world?

Explore comprehensive Python statistics: market dominance, developer preferences, salary insights, and growth trends across industries.

Discover Python Insights →

For setup, the free and Pro line falls on interpreters and project types.

Local interpreters (virtualenv, conda, pipenv, Poetry, uv, hatch) and Jupyter are free. Remote interpreters over SSH, Docker, Docker Compose and WSL, plus web framework project templates, need Pro.

Tutorials from before the merge still talk about two separate downloads. If you want to know what they mean, this breakdown of the feature split between the old Community and Professional editions covers it. The install itself is one download now.

Activation goes through a JetBrains Account. Log in from the Toolbox App and the licenses available to you activate for every IDE you install.

If you want the old open-source-only build, you can compile it from the public GitHub source with GitHub Actions. Those builds hold only the open-source parts, like the original Community Edition.

New to Python or just need a quick reference? List comprehensions, built-in functions, and core syntax - including lambda, dict methods, and file I/O - is on one page in the Python Cheat Sheet.

Which PyCharm installation method should you use?

YouTube player

Use the Toolbox App unless company policy or a locked-down machine rules it out. JetBrains names it as the recommended way to install and update its IDEs.

MethodPlatformsGood whenCatch
Toolbox AppWindows, macOS, LinuxSeveral versions, EAP builds, rollbacksOne extra app to install first
Standalone installer or disk imageWindows, macOSFixed install paths, strict policiesYou manage each instance yourself
tar.gz archiveLinuxInstalling into /opt without snapNo menu entry until you create one
Snap packageLinuxA one-command install with automatic updatesDocumented performance and file-handling problems

The Toolbox App also keeps several PyCharm versions side by side and rolls back an update that breaks something.

Install PyCharm with the Toolbox App

Download the Toolbox App from the JetBrains site. That means an .exe on Windows and a .dmg on macOS, with separate Intel and Apple Silicon images. Linux gets a .tar.gz. Run it, click its icon, and pick PyCharm from the product list.

To pin an older build, open the more menu and choose Available versions.

On Linux, a handful of packages have to be present before the Toolbox App starts: libxi6, libxrender1, libxtst6, mesa-utils, libfontconfig, libgtk-3-bin, tar, dbus-user-session and libxcb-keysyms1.

Install PyCharm on Windows

The standalone route starts with the .exe from the JetBrains download page. ARM64 processors have a separate installer, and the page links a SHA checksum so you can verify the file.

The wizard has a few options worth reading before you click through.

  • The 64-bit launcher option adds a launch icon to the Desktop
  • Open Folder as Project adds a folder context menu entry
  • .py associates Python files with PyCharm
  • Add launchers dir to the PATH lets you start PyCharm from a console without typing the full path

Screenshots of every wizard screen sit in this guide to installing PyCharm on Windows.

Install PyCharm on macOS

Grab the disk image that matches your chip, Intel or Apple Silicon. Mount it, drag PyCharm into Applications, and launch it from Applications, Launchpad or Spotlight.

Install PyCharm on Linux

The tarball goes into /opt, the location the filesystem hierarchy standard recommends (ARM64 has its own tarball):

  1. sudo tar xzf pycharm-\*.tar.gz -C /opt/
  2. cd /opt/pycharm-\*/bin
  3. ./pycharm

Tarball installs have no menu entry at first. Tools | Create Desktop Entry adds one.

The snap route is a single command, sudo snap install pycharm –classic. The –classic flag is required because the snap needs full system access. The stable channel carries releases and the edge channel carries EAP builds.

JetBrains documents performance degradation, problems debugging JavaScript with Chromium and slow file operations on snap installs, and suggests the Toolbox App instead. Distribution-specific steps are in this walkthrough for installing PyCharm on Linux.

Which Python interpreter type fits your project?

Match the environment type to what the project already uses. With no existing tooling, a virtualenv or uv environment is a sensible start. PyCharm 2025.3 (December 2025) began suggesting uv as the default environment manager in the New Project wizard whenever it detects uv on your machine, and it keeps any environment manager you chose earlier.

TypeNeeds on your machinePick it whenEdition
VirtualenvA base Python from python.orgPlain scripts and requirements.txt projectsFree
uvThe uv executableNew projects built around pyproject.tomlFree
CondaAnaconda or MinicondaData science work already tied to condaFree
Poetry, pipenv or hatchThe matching tool installedThe repository already uses one of themFree
SSH, Docker or WSLA remote host, container runtime or Linux distributionCode must run somewhere other than your desktopPro

Check the repository before picking anything. A Pipfile means pipenv and a conda environment file means conda. If the pyproject.toml is Poetry-managed, use Poetry.

PyCharm suggesting uv doesn’t make it the convention. In the Python Developers Survey 2024, uv usage reached 11 percent (PSF and JetBrains, as reported by The Register), so plenty of projects you open will use something else.

For a closer comparison of the common local choices, see this side-by-side of venv, conda and Poetry.

Remote options need Pro. SSH runs code on a remote host. WSL, which is Windows only, uses a Linux distribution on the same machine. Docker runs it inside a Docker container built from a pulled image or a Dockerfile.

Conda fails first on a fresh machine. PyCharm can’t create a conda environment until Anaconda or Miniconda is installed and the executable path is known.

Poetry and pipenv are more forgiving, since PyCharm offers to install the tool through pip when it can’t find the executable.

How to configure a Python interpreter in PyCharm

Install Python first, then click the Python Interpreter selector in the status bar, choose Add New Interpreter, and select Add Local Interpreter. Pick an environment type and a base interpreter, then click OK.

Install Python before PyCharm needs it

PyCharm asks for the path to a Python executable, so install Python from python.org first. JetBrains lists this as the first prerequisite for any interpreter setup.

Supported versions run from 3.9 to 3.15, plus 2.7.

A missing binary or an unsupported version triggers the Invalid environment warning. For an existing virtual environment, the executable sits at venv/bin/python on macOS and Linux, or venv\Scripts\python.exe on Windows.

Add a new local interpreter

  1. Click the Python Interpreter selector in the status bar and choose Add New Interpreter. Alternatively, open Settings, go to Python | Interpreter, and click Add Interpreter.
  2. Select Add Local Interpreter.
  3. Choose the environment type: Virtualenv, Conda, Pipenv, Poetry, uv or Hatch.
  4. Select the base interpreter from the list, or browse to the Python executable.
  5. Set the Location for the new environment. The folder must be empty.
  6. Tick Inherit packages from base interpreter if the environment should see global packages (this maps to the –system-site-packages option), and Make available to all projects if you want to reuse it.
  7. Click OK.

The virtualenv path alone has its own walkthrough in this guide to creating a virtual environment in PyCharm.

Switch or change the default interpreter

The status bar selector is the quick way, since it changes the interpreter for the open project in two clicks. Through settings, open Python | Interpreter, use the dropdown, and click Show All when the interpreter you want is missing from the list. The Associate this virtual environment with the current project checkbox limits an environment to that one project.

To set the default for new projects, go to File | New Projects Setup | Settings for New Projects and choose the interpreter there. It applies to existing projects without an .idea folder the first time you open them.

One executable can back several environments. JetBrains’ own example is one Python 3.12 environment for Django apps and another, built on the same executable, for scientific libraries.

To move an existing project to a newer Python release, this walkthrough on changing the Python version in PyCharm covers the steps.

How to create a new project in PyCharm

Go to File | New Project, or click New Project on the Welcome screen. Set the location, choose Project venv, uv or Base conda, and click Create (JetBrains docs, PyCharm 2026.2).

The project name comes from the last folder in the location path, so name the folder first and the project follows.

  • The location is the project folder, and it sets the project name too
  • Create Git repository puts the project under Git version control
  • Create a main.py welcome script adds a file with a short Python code sample to start from
  • For the interpreter, pick Project venv, uv or Base conda, or Custom environment for everything else

A screenshot tour of the whole dialog sits in this guide to creating a new project in PyCharm.

Pick the interpreter option

Project venv builds a virtual environment in the .venv folder at the project root. The Python version field chooses the interpreter it is built on.

uv does the same with the uv executable, which PyCharm detects on its own. If detection fails, type the location into Path to uv.

Base conda works differently. It uses the base environment of your Conda installation as the project interpreter, so packages installed there are shared with everything else on that base.

Custom environment covers the rest: Virtualenv, Pipenv, Poetry, uv, Hatch, an existing conda environment, or any Python executable already on disk. For Poetry, tick Create an in-project environment to keep the virtual environment inside the project directory.

JetBrains’ own pages disagree on what a new project gets. The Quick Start guide in the PyCharm 2026.2 Help names venv, pipenv, Poetry and Conda, while the project creation page lists Project venv, uv and Base conda as the options, so trust the dialog on screen over the older list.

On Windows and macOS, the dialog can download and install the Python version you need when it’s missing. Linux has no such option, so install Python there first.

Install packages into the project interpreter

Each interpreter keeps its own package set, and PyCharm uses pip by default. Conda environments switch to the conda package manager through the Use Conda Package Manager toggle, which is on by default.

The Python Packages tool window (View | Tool Windows | Python Packages) searches PyPI, lets you pick a version and installs it with a click. The Install button on the package list toolbar in Settings | Python | Interpreter does the same job, and the Terminal accepts plain pip commands.

To carry a package set to another project, run pip freeze > requirements.txt in the Terminal and add the file to the target project. PyCharm then prompts you to install the listed packages.

A private PyPI server or devpi goes under Settings | Python | Package Repositories. A step-by-step version of each route lives in this guide to installing packages in PyCharm.

How to set up a run configuration in PyCharm

Open Run | Edit Configurations, click the plus button, choose Python, then fill in the Script path, Parameters, Environment variables and Working directory. PyCharm already creates a temporary configuration the first time you run a script, and the save button in the dialog makes it permanent.

  • Python Interpreter takes any configured interpreter from the list
  • Script path or Module name is the file or module to execute, and path variables are allowed
  • Parameters are separated by spaces, with double quotes around any value that contains a space
  • Environment variables are separated by semicolons, and PYTHONUNBUFFERED is set to 1 by default
  • Paths to “.env” files load in list order, which you can change

Working directory deserves a second look.

A configuration created with Ctrl+Shift+F10, or with Run from a script’s context menu, uses the folder that contains the script. That folder can differ from the project directory.

Leave the field blank and PyCharm falls back to the bin directory of its own installation. Relative file paths in your code then point somewhere you did not intend.

Store as project file saves the configuration to .idea/runConfigurations so teammates can share it. By default it stays in .idea/workspace.xml.

The Modify options menu adds a few more switches.

  • Allow multiple instances
  • Redirect input from a text file
  • Interpreter options
  • Run with Python console
  • Emulate terminal in output console
  • Debug just my code

Debug just my code keeps the debugger out of library code. For breakpoints and stepping, see this guide to debugging in PyCharm.

Everyday runs skip the dialog entirely, and this guide to running code in PyCharm covers those shortcuts.

How to customize PyCharm settings, themes and plugins

Press Ctrl+Alt+S to open Settings. Appearance & Behavior holds the theme, Editor holds fonts and the color scheme, and Plugins is where extensions live. The Backup and Sync plugin then carries the result to other machines.

Theme, font and keymap

The theme sits under Appearance & Behavior | Appearance. Fonts are under Editor | Font and the color scheme under Editor | Color Scheme. Whichever keymap scheme you pick decides every shortcut.

The full list of defaults is in this reference to PyCharm keyboard shortcuts.

Install and manage plugins

PyCharm ships with bundled plugins. Anything else comes from JetBrains Marketplace or a local ZIP or JAR archive.

Open Settings, choose Plugins, click the Marketplace tab, search for the plugin, click Install, and restart if prompted.

The Installed tab is where you disable or remove plugins. Disabling the ones you do not use can raise performance, and bundled plugins can be disabled but not uninstalled.

When the newest release of a plugin is broken, download an older version from JetBrains Marketplace and use Install Plugin from Disk.

PyCharm also suggests plugins based on the libraries it finds in a project. Click Don’t suggest again to silence one.

Teams can pin a plugin under Appearance & Behavior | Required Plugins, which stores the list in .idea/externalDependencies.xml. For a shortlist worth installing, start with these best PyCharm plugins.

Sync settings across machines

Backup and Sync is bundled and switched on by default, and it stores settings under your JetBrains Account. It covers themes, keymaps, color schemes, UI and editor settings, code styles, live templates, and the list of enabled and disabled plugins.

Turn it on under Settings | Backup and Sync | Enable backup and sync, then pick the categories and whether to share across PyCharm only or all JetBrains IDEs. On the first machine use Push Settings to Account. On the second, use Get Settings from Account.

A ZIP export is the manual alternative. File | Manage IDE Settings | Export Settings writes the selected settings to an archive, and Import Settings loads it elsewhere. Export also covers configured deployment servers and Git settings, including registered GitHub accounts.

Plugins get special treatment in Backup and Sync. An enabled plugin missing on the other machine gets installed there, while a disabled one stays uninstalled. Uninstalling a plugin on one machine only disables it on the other machine and doesn’t remove it.

How to connect Git and GitHub to PyCharm

Install Git, then clone a repository with Git | Clone or put an open project under version control, and log in to GitHub from the clone dialog through the browser or with a token. PyCharm detects the Git executable on its own and suggests downloading Git when it finds none.

Point PyCharm at Git

Detection runs when you clone a repository or put a project under Git control. On Windows without a Git install, PyCharm searches WSL and uses Git from there.

To set the executable by hand, open Version Control | Git and fill in Path to Git executable. For WSL, use a \\wsl$ path such as \\wsl$\debian\usr\bin\git.

On a machine with no Git at all, install Git first, then reopen the dialog.

Put an existing project under Git

  1. Press Alt+` to open the VCS Operations Popup and choose Enable Version Control Integration.
  2. Pick Git and click OK.
  3. Answer the prompt about sharing project settings files (Always Add shares them with other PyCharm users).

No Enable Version Control Integration option means Git is already on for the project, which is the case for anything created with Create Git repository.

Log in to GitHub

  1. Go to Git | Clone, or VCS | Get from Version Control if the Git menu is missing.
  2. Choose GitHub on the left.
  3. Click Log In via GitHub and sign in through the browser window, two-factor code included. If you already hold a token, click Use token, paste it, and click Log In.
  4. Select a repository, set the Directory, and click Clone.

The browser login is the simpler route when you do not hold a token. A longer walkthrough with screenshots is in this guide to connecting PyCharm to GitHub.

Share a local project and store passwords

Go to Git | GitHub | Share Project on GitHub, or VCS | Share Project on GitHub when version control is not yet on. Set the repository name, the remote name and a description, tick Private if the repository should stay closed, and click Share.

Password storage sits under Appearance & Behavior | System Settings | Passwords. Native Keychain is available on macOS and Linux only. KeePass uses one master password to unlock the stored ones, and Do not save means credentials reset after a restart.

Why does PyCharm setup fail, and how do you fix it?

Most failures trace back to an interpreter that is missing or unsupported, a tool PyCharm can’t detect, packages installed into the wrong interpreter, or a plugin that was switched off. The table maps each symptom to its cause.

SymptomCauseFix
Invalid environment warningPython binary missing at the path, or version unsupportedCorrect the path or install a supported Python
No Python interpreter configuredThe project has no interpreter selectedAdd or pick one in the status bar selector
Poetry or pipenv not detectedExecutable not found by PyCharmClick Install via pip, or set the path by hand
Import fails after installPackage went into a different interpreterCheck the selector, then install into the active one
Sync options missingBackup and Sync plugin disabledTick it on the Installed tab under Plugins

If a package install ends in an error popup, JetBrains points to its Troubleshooting guide. A missing pip on the interpreter is one documented cause.

Rebuild a broken environment

An Invalid environment warning on a virtual environment is usually cheaper to rebuild than to repair.

  1. Open Settings | Python | Interpreter, expand the list, and click Show All.
  2. Select the broken interpreter and click Remove.
  3. Delete the old folder, then add a fresh environment from the status bar selector.

Removing the folder itself is covered in this guide to deleting a venv.

When the installation itself is damaged

JetBrains does not support installations with manually removed or changed distribution files, plugin files included.

The fix is a clean reinstall. Remove the old copy first, then install again through the Toolbox App. This guide to uninstalling PyCharm covers the removal step, and Backup and Sync brings your theme, keymap and plugin list back afterward.

PyCharm Setup FAQ

Can I use PyCharm without creating a project?

Yes. LightEdit mode opens a single file without loading a project, but it works as a text-like editor with no code completion or code navigation.

Start it with the -e option on the launcher, for example pycharm.sh -e README.md on Linux. A standalone install needs a command-line launcher first, which Tools | Create Command Line Launcher adds.

What are the switches for a silent PyCharm installation on Windows?

Run the installer with /S and add /CONFIG for the silent configuration file. The /D switch with the install folder has to come last, without quotes.

The default configuration installs for the current user only. Set mode=admin in the file and run the installer as an administrator to install for all users.

Where does PyCharm store its settings, plugins and logs?

In per-version folders under your user profile. The configuration folder is %APPDATA%\JetBrains\PyCharm2026.2 on Windows, ~/Library/Application Support/JetBrains/PyCharm2026.2 on macOS, and ~/.config/JetBrains/PyCharm2026.2 on Linux.

Help | Diagnostic Tools | Special Files and Folders lists the exact paths for your installation.

How do I move PyCharm’s caches to another drive?

Open Help | Edit Custom Properties and set idea.system.path for caches. The other folders use idea.config.path, idea.plugins.path and idea.log.path.

Write paths with forward slashes, even on Windows, and give each property a different directory. Restart PyCharm afterward.

Does PyCharm leave files behind after an upgrade?

Yes. Every major version gets its own set of directories, and PyCharm deletes the caches and logs of older versions after 180 days without an update.

Configuration and plugin folders stay until you remove them through Help | Delete Leftover IDE Directories.

Can I install plugins from the command line?

Yes. Quit the IDE, copy the Plugin ID from the plugin’s JetBrains Marketplace page, and run installPlugins with that ID from the bin folder, for example pycharm64.exe installPlugins org.jetbrains.plugins.github on Windows.

On macOS the command is open -na “PyCharm.app” –args installPlugins followed by the ID. On Linux it is pycharm.sh installPlugins.

How to Update PyCharm Without Breaking Your Setup

Patch updates install in place and leave your setup alone. Major releases need more care. Stay on the stable update channel and turn on Backup and Sync before a major update. After the first launch, check every interpreter.

Early Access builds install as separate instances and are not recommended for production, which is why the channel comes first. Backup and Sync is JetBrains’ documented route for moving settings across instances.

Interpreters come last because PyCharm marks a Python version unsupported once a release drops it, and the Python 3 floor is 3.9 as of the 2026.2 docs.

Linux tarball installs have an extra limit. JetBrains advises against updating a standalone install to a newer major version in place, so extract the new tarball into a clean directory.

Automatic updates in the Toolbox App save clicks but land major releases unreviewed. This guide to updating PyCharm step by step walks through each route.

Bogdan Sandu

Stay sharp. Ship better code.

Every week: one curated article, one tool worth knowing, one tip you can use tomorrow. No noise, no padding.