GenericSuite Installation
Pre-requisites
Bash
If you plan to use a development environment with Windows, you must install the Git Bash from the Git for Windows package. You'll also need to install the Make utilitys.
If you plan to use a development environment with MacOS or Linux, bash shell and Make utilitys are already installed.
NodeJS
It is recommended to use nvm (Node Version Manager) to manage multiple Node.js versions.
To set the default NodeJS version to be used by nvm:
- Run the following command in your terminal, replacing
<version>with the Node.js version number you want to set as the default:nvm alias default <version>. For example, to use Node.js 26:
nvm alias default 26
- Create a
.nvmrcfile in your project root directory with the Node.js version in its content, so the new version will be set when you runnvm useor when a Terminal is opened in your favorite code editor (e.g. Visual Studio Code or Cursor.sh). For example:
File: .nvmrc
26
- Create a
.nvmrcfile in your user's home directory with the Node.js version and add the commands on the shell starter script, so the new version will be set when a new Terminal window is opened. For example:
MacOS:
File: /Users/$USER/.zshrc or /Users/$USER/.bashrc
Linux:
File: /home/$USER/.bashrc or /home/$USER/.profile
Add this lines:
# To set the Node.js version when new Terminal window is opened
if [ -f "./.nvmrc" ]; then
nvm use
fi
And create the .nvmrc file mentioned earlier in the user's home directory: /Users/$USER or /home/$USER.
Python
To install Python, it is recommeded to use pyenv that allows managing multiple Python versions.
There is a script install_dev_tools.sh in the genericsuite-be-scripts repository that simplifies the installation of pyenv and other required dependencies, like uv, poetry, or pipenv for Python dependency management.
Backend
Install from PyPi
Pip
pip install genericsuite
pip install genericsuite-ai
Uv
uv add genericsuite
uv add genericsuite-ai
Poetry
poetry add genericsuite
poetry add genericsuite-ai
Pipenv
pipenv install genericsuite
pipenv install genericsuite-ai
To install the GenericSuite backend scripts:
npm install -D genericsuite-be-scripts
Install from Git repositories
To install any of the the backend solutions (Core, AI, etc) from a specific branch in the Git repositories, e.g. "branch_x":
Pip
pip install git+https://github.com/tomkat-cr/genericsuite-be@branch_x
pip install git+https://github.com/tomkat-cr/genericsuite-be-ai@branch_x
Uv
uv add git+https://github.com/tomkat-cr/genericsuite-be@branch_x
uv add git+https://github.com/tomkat-cr/genericsuite-be-ai@branch_x
Poetry
poetry add git+https://github.com/tomkat-cr/genericsuite-be@branch_x
poetry add git+https://github.com/tomkat-cr/genericsuite-be-ai@branch_x
Pipenv
pipenv install git+https://github.com/tomkat-cr/genericsuite-be@branch_x
pipenv install git+https://github.com/tomkat-cr/genericsuite-be-ai@branch_x
To install the backend scripts from a specific branch in the Git repositories, e.g. "branch_x":
npm install -D tomkat-cr/genericsuite-be-scripts#branch_x
Install from local directory
To install any of the the backend solutions (Core, AI, etc) from a local directory:
Pip
pip install ../genericsuite-be
pip install ../genericsuite-be-ai
Uv
uv add ../genericsuite-be
uv add ../genericsuite-be-ai
Poetry
poetry add ../genericsuite-be
poetry add ../genericsuite-be-ai
Pipenv
pipenv install ../genericsuite-be
pipenv install ../genericsuite-be-ai
To install the backend scripts from a local directory:
npm install -D ../genericsuite-be-scripts
Frontend
Install from NPMJS
npm install genericsuite
npm install genericsuite-ai
npm install -D genericsuite-fe-scripts
Install from Git repositories
From the main branch:
npm install tomkat-cr/genericsuite-fe
npm install tomkat-cr/genericsuite-fe-ai
npm install -D tomkat-cr/genericsuite-fe-scripts
From a specific branch:
npm uninstall generisuite
npm install tomkat-cr/genericsuite-fe#branch_name
npm uninstall generisuite-ai
npm install tomkat-cr/genericsuite-fe-ai#branch_name
npm uninstall generisuite-fe-scripts
npm install -D tomkat-cr/genericsuite-fe-scripts#branch_name
E.g.
npm uninstall genericsuite && npm install tomkat-cr/genericsuite-fe#develop
npm uninstall genericsuite-ai && npm install tomkat-cr/genericsuite-fe-ai#develop
npm uninstall generisuite-fe-scripts && npm install -D tomkat-cr/genericsuite-fe-scripts#develop
Or all together:
npm uninstall genericsuite genericsuite-ai && npm install tomkat-cr/genericsuite-fe#develop tomkat-cr/genericsuite-fe-ai#develop
IMPORTANT:
- When you've made changes to any of the GenericSuite frontend packages code, perform a
make pre-publishto rebuild thedistdirectory files before the Gitcommitandpush, because those files are required fornpm installto work. Then re-install the changed package in the parent project (your app) using thenpm install tomkat-cr/genericsuite-feornpm install tomkat-cr/genericsuite-fe-aicommand.