João Freitas

A framework for configuring development environments in Linux machines.


The dotfiles project is my response for the common pattern of sharing your development configuration to other developers on GitHub.

Usually these repos consist of bash/zsh/shell configuration files, however I took the extra step of having a repo that maintains all the tools and configurations I use on my Linux development machine. Instead of working with shell configuration files, I represent my configurations with JSON files.

The way it works is pretty simple. The framework is built on top of three fundamentals:

activity diagram describing the flow of the framework lifecycle

Flow of the framework lifecycle

The framework uses converters concept as way to segregate system configuration, promoting adaptability to other systems (i.e., I could easily add support for Windows environments using a converter for Windows representation.)


Here’s a demo of the framework in action (configuring work profile on a fresh Ubuntu machine):


#projects #dotfiles #linux #workspace #development-environment #installer