Custom initialization

As the last step of setting-up your project, we run some initializing Python code. This code is in a notebook init.ipynb which can be accessed from the environment tab. You can put any set-up code you want us to run in there.

By default, the notebook installs the requirements from a requirements.txt file if you have one in project root directory (this is frequently the case with imported projects).

After that, we install all the packages your project is using. We save this information in .deepnote/requirements.txt periodically by doing a snapshot of your environment with pip freeze. The file is not shown in your sidebar because it's managed by Deepnote. Also, there is no need to put !pip install commands into init.ipynb – we already save all pip installs you do automatically!

Blacklisted packages There are 2 blacklisted packages: jupyter and jedi. These are packages that interfere with the way Deepnote works and their installation would break your environment. In init.ipynb , we scan the requirements files for those packages and skip their installation if they are there.