rootfoldersearch

This package finds the root directory of a project by traversing the ancestors directories starting at a given path.


License
MIT
Install
pip install rootfoldersearch==0.0.2

Documentation

Root Folder Search

This package finds the root directory of a project by recursively traversing parent directories starting at a given path.

I used it to overcome a limitation in Jupyter Notebooks, that doesn't provide the __file__ variable that would let me easily find the root folder of a project, regardless the current working directory. You might find it useful in other scenarios.

How to use

import rootfoldersearch

# returns a string with the absolute path to the root folder, where Readme.md is located, starting the search in the CWD.
rootfoldersearch.findpath('Readme.md')

# the same, but using a file in a subfolder as reference to find the root directory
rootfoldersearch.findpath('/util/a-file')

# the same, but only tries 3 parent folders recursively (default is 10)
rootfoldersearch.findpath('Readme.md', depth=3)

# starting the search in a specific directory (as opposed to using the CWD)
rootfoldersearch.findpath('Readme.md', cwd='/..')