sicara / sicarator

Instant Setup & Best Quality for Data Projects!
Apache License 2.0
176 stars 9 forks source link
data-science generator machine-learning python

Sicarator

Instant Setup & Best Quality for Data Projects!

Sicarator is a CLI generator for Data Science projects. It is built with Yeoman and maintained by Sicara.

Demo GIF

To know more about the story behind Sicarator and its philosophy, you can read this blog article.

Main components of the generated project

Requirements

Pyenv

Install pyenv to manage your Python versions and virtual environments:

  curl -sSL https://pyenv.run | bash

If you are on MacOS and experiencing errors on Python install with PyEnv, follow this comment

Poetry

Install Poetry to manage your dependencies and tooling configs:

  curl -sSL https://install.python-poetry.org | python - --version 1.7.0

If you have not previously installed any Python version, you may need to install one and set it as your default Python version before installing Poetry:

  pyenv update  # fetch the latest list of Python versions
  pyenv install 3.11  # install the latest Python 3.11.x
  pyenv global 3.11  # set your new global default Python version

Node.js

Install a stable version of Node.js (v18.x.x) if you don't have one. The Sicarator is indeed a Yeoman generator, which is a Node.js module.

For linux:

  curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
  sudo apt-get install -y nodejs

Yeoman

Install Yeoman:

  npm install -g yo

Usage

Troubleshooting

I don't have the correct permissions to install yeoman

Example error:

npm ERR! code EACCES
npm ERR! syscall rename
npm ERR! path /usr/lib/node_modules/generator-sicarator
npm ERR! dest /usr/lib/node_modules/.generator-sicarator-cELCsz5l
npm ERR! errno -13
npm ERR! Error: EACCES: permission denied, rename '/usr/lib/node_modules/generator-sicarator' -> '/usr/lib/node_modules/.generator-sicarator-cELCsz5l'
...

Solution: give yourself the ownership of npm and node_modules :

sudo chown -R $(whoami) ~/.npm
sudo chown -R $(whoami) /usr/lib/node_modules # or /usr/local/lib/node_modules depending on where node modules are installed

I have the correct git credentials, but installation is throwing a git error

Example error:

git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.

Solution: you are probably using sudo to run the installation, which doesn't use the same git credentials. See solution above to install the project with your current user profile.

Contribute to the project

Install the project

Dev tools