Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dotfiles – Data Engineering & AI Platform Setup

Purpose

Version-controlled collection of personal dotfiles and environment configurations designed for Data Engineering, Data Platform Engineering, Data Architecture, and AI-oriented workflows.


Overview

This repo contains configurations, scripts, and conventions that define a reproducible, efficient, and scalable development environment.

It is designed to:

  • Standardize local environments across machines
  • Automation
  • Improve productivity
  • Promote consistency and best practices
  • Showcase engineering mindset and tooling choices

Philosophy

This repository reflects a few core principles:

  • Reproducibility as a foundation
  • Automation over manual work
  • Clarity over cleverness
  • Composability over monolithic setups
  • Explicit configuration over implicit behavior

Repository Structure

dotfiles/
├── data/                 # Data-related utilities, templates, configs
├── git/                  # Git configuration
│   ├── .gitconfig
│   ├── .gitignore
│   ├── .gitignore_global
│   └── .gitmessage
├── python/               # Python environment setup
│   └── python_env.sh
├── shell/                # Shell configuration (Zsh-based)
│   ├── .zshrc
│   ├── aliases.sh
│   └── env.sh
├── install.sh            # Bootstrap installation script
└── README.md

Features

  • Modular and extensible structure
  • Reproducible environment setup
  • Python environment bootstrapping
  • Thoughtful shell aliases and environment variables
  • Opinionated Git configuration for professional workflows
  • Optimized for productivity in data-intensive environments

Installation

Prerequisites

  • Unix-based OS (Linux/macOS)
  • zsh installed
  • git installed

Setup

git clone https://github.com/ghakimian/dotfiles.git
cd dotfiles
chmod +x install.sh
./install.sh

⚠️ Review the install.sh script before running it to understand what changes will be applied to your system.


Python Environment

The python/python_env.sh script is intended to:

  • Standardize Python setup
  • Configure virtual environments
  • Prepare dependencies for data and AI workflows

You can customize it depending on your preferred tooling:

  • pyenv
  • venv
  • poetry
  • conda

Shell Configuration

Zsh is used as the primary shell.

Key components:

  • .zshrc: Main configuration file
  • aliases.sh: Productivity shortcuts
  • env.sh: Environment variables and paths

Design principles:

  • Minimal but powerful
  • Readable and maintainable
  • Performance-conscious

Git Configuration

Includes:

  • Global ignore rules
  • Commit message template (.gitmessage)
  • Opinionated defaults for professional workflows

Goals:

  • Enforce clean commit history
  • Improve collaboration standards
  • Reduce noise in repositories

Data Folder

The /data directory is a placeholder for:

  • Templates
  • Schemas
  • Sample datasets
  • Configuration files for data tools

This will evolve as part of ongoing experimentation and professional use.


Security Notice

This is a public repository.

Never commit:

  • Secrets (API keys, tokens, credentials)
  • Private certificates
  • Sensitive environment variables

Use .env files and secret managers where appropriate.


Roadmap

  • Add support for containerized environments (Docker)
  • Integrate with cloud CLI tools (AWS, GCP, Azure)
  • Expand Python environment management (Poetry/UV)
  • Add data tooling configs (dbt, Airflow, Spark)
  • AI/ML tooling presets (Jupyter, MLflow, etc.)

Contributing

This is a personal repository, but suggestions and discussions are welcome.


License

MIT License


Author

Gregorio Hakimian


Final Note

This repository is a living artifact of how I think about:

  • Developer experience
  • Data platforms
  • Scalable environments for AI-driven systems

Feel free to explore, fork, and adapt it to your own workflow.

About

Personal dotfiles and development environment configuration optimized for Data Engineering, Data Platform Engineering, and AI-driven systems. Focused on reproducibility, automation, and scalable workflows.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages