I know this can be maybe an opinion based question but I'm new working with Sass and I want to try to get the best workflow as possible from the beginning, my current project is pulling bootstrap 4, and I want to know if this is well structured.
It depends on your project, but in general I always include the full bootstrap framework. However for keeping css files small you of course don't need everything if for example you only use the grid ;)
You can even leave out the ../../../ and replace it with this
//Doing this it complies no problem
@import "../../../../node_modules/bootstrap/scss/functions";
//But doing this it throws and error like this:
//Error: File to import not found or unreadable: ~bootstrap/scss/functions.
// (here goes the line)
@import "~bootstrap/scss/functions";
It's the same, the only difference is that doing 'bootstrap/scss/bootstrap' im importing all bootstrap and not just parts of it, but even doing 'bootstrap/scss/bootstrap' like you said it doesn't work for some reason at least for me the ~ isn't working at all
@import "../../../node_modules/bootstrap/scss/functions";
@import "customVariables"; //This is a copie from the bootstrap _variables.scss
@import "../../../node_modules/bootstrap/scss/mixins";