Skip to content

Commit 38060b2

Browse files
authored
Create README.md
1 parent 1be9177 commit 38060b2

File tree

1 file changed

+195
-0
lines changed

1 file changed

+195
-0
lines changed

README.md

Lines changed: 195 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,195 @@
1+
# 🧰 utils-scripts
2+
3+
> Personal collection of setup scripts for building a high-performance AI/ML developer environment — terminal, shell, editor, and Python stack — optimised for Unix/Debian and macOS.
4+
5+
[![License: GPL-2.0](https://img.shields.io/badge/License-GPL--2.0-blue.svg)](LICENSE)
6+
[![Platform](https://img.shields.io/badge/Platform-Debian%20%7C%20macOS-lightgrey.svg)]()
7+
[![Donate via Stripe](https://img.shields.io/badge/Donate-Stripe-blue?logo=stripe&logoColor=white)](https://buy.stripe.com/8x200i8bSgVe3Vl3g8bfO00)
8+
9+
---
10+
11+
## 🧭 Table of Contents
12+
1. [Motivation](#motivation)
13+
2. [What’s Included](#whats-included)
14+
3. [Supported Platforms](#supported-platforms)
15+
4. [Installation](#installation)
16+
5. [Usage](#usage)
17+
6. [Configuration & Customisation](#configuration--customisation)
18+
7. [Contributing](#contributing)
19+
8. [Support](#support)
20+
9. [License](#license)
21+
22+
---
23+
24+
## 💡 Motivation
25+
As a Senior Engineering Manager and Principal in AI/ML, I often rebuild new environments for experiments, demos, or teaching.
26+
This repo standardises and automates my setup for:
27+
28+
- ⚙️ Configuring a **modern shell** (`zsh`, `starship`, `tmux`)
29+
- 🧑‍💻 Installing a **Python + ML toolchain** with key libraries
30+
- 🪄 Setting up **Neovim** for fast and extensible Python development
31+
- 💻 Supporting **Debian/Ubuntu** and **macOS** systems
32+
- 🚀 Maximising developer productivity and terminal performance
33+
34+
Everything is tuned to work well together — lightweight, consistent, and fast.
35+
36+
---
37+
38+
## 📦 What’s Included
39+
| File | Description |
40+
|------|--------------|
41+
| `install_my_programs_debian` | Installs core packages on Debian/Ubuntu |
42+
| `install_my_programs_mac` | Installs core packages on macOS (via Homebrew) |
43+
| `install_my_programs_unix` | Generic fallback for Unix systems |
44+
| `requirements.txt` | Python and AI/ML library dependencies |
45+
| `run_commands/` | Helper utilities and shell functions |
46+
| `python/` | Additional Python utility scripts |
47+
| `.gitignore` | Standard ignore patterns |
48+
| `LICENSE` | GPL-2.0 License file |
49+
50+
Includes dependencies for:
51+
- **Terminal:** tmux, zsh, starship
52+
- **Editor:** neovim (Lua config-ready)
53+
- **Python:** numpy, pandas, torch, scikit-learn, transformers (editable)
54+
- **Optional:** git, curl, wget, build-essentials
55+
56+
---
57+
58+
## 🧩 Supported Platforms
59+
**Debian / Ubuntu**
60+
**macOS**
61+
⚠️ Other Unix flavours may work but aren’t officially tested.
62+
63+
---
64+
65+
## ⚙️ Installation
66+
67+
### 1️⃣ Clone the Repository
68+
```bash
69+
git clone https://github.com/dmoliveira/utils-scripts.git
70+
cd utils-scripts
71+
```
72+
73+
### 2️⃣ Choose and Run Your Installer
74+
75+
**Debian / Ubuntu:**
76+
```bash
77+
chmod +x install_my_programs_debian
78+
./install_my_programs_debian
79+
```
80+
81+
**macOS:**
82+
```bash
83+
chmod +x install_my_programs_mac
84+
./install_my_programs_mac
85+
```
86+
87+
**Generic Unix:**
88+
```bash
89+
chmod +x install_my_programs_unix
90+
./install_my_programs_unix
91+
```
92+
93+
### 3️⃣ Install Python Packages (optional)
94+
```bash
95+
pip install -r requirements.txt
96+
```
97+
98+
---
99+
100+
## 🧠 Usage
101+
After installation you’ll have:
102+
103+
- **zsh + starship** prompt with Git & Python awareness
104+
- **tmux** for persistent terminal sessions
105+
- **neovim** configured for Python and AI workflows
106+
- **Python environment** ready with key ML libraries
107+
108+
Example:
109+
```bash
110+
tmux new -s ai_env
111+
nvim my_script.py
112+
```
113+
114+
For Neovim productivity:
115+
- `:Ex` → File explorer
116+
- `<leader>f` → Fuzzy search
117+
- `gd` → Go to definition
118+
- `K` → Hover docs
119+
120+
---
121+
122+
## 🔧 Configuration & Customisation
123+
124+
### Shell
125+
Edit your `~/.zshrc` or add functions in `~/.zsh.d/` for modularity.
126+
Example alias:
127+
```bash
128+
alias gs='git status'
129+
alias py='python3'
130+
```
131+
132+
### Starship Prompt
133+
Config file: `~/.config/starship.toml`
134+
```toml
135+
[character]
136+
success_symbol = "🚀 "
137+
error_symbol = "💥 "
138+
```
139+
140+
### tmux
141+
Edit `~/.tmux.conf` for shortcuts, layouts and themes.
142+
Example:
143+
```
144+
set -g mouse on
145+
bind r source-file ~/.tmux.conf \; display "Reloaded!"
146+
```
147+
148+
### Neovim
149+
Modify `~/.config/nvim/init.lua` to adjust plugins or keymaps.
150+
Consider adding:
151+
- LSP support (`pyright`, `lua_ls`)
152+
- Formatter (`black`, `ruff`)
153+
- Plugins (`nvim-treesitter`, `telescope.nvim`, `lualine.nvim`)
154+
155+
### Python
156+
Keep `requirements.txt` up to date with your preferred ML stack.
157+
Recommended additions:
158+
```
159+
xgboost
160+
lightgbm
161+
sentence-transformers
162+
gradio
163+
mlflow
164+
```
165+
166+
---
167+
168+
## 🤝 Contributing
169+
Contributions, feedback and improvements are welcome!
170+
1. Fork this repo
171+
2. Create a new branch (`git checkout -b feature/your-feature`)
172+
3. Commit and push your changes
173+
4. Open a pull request
174+
175+
Please make sure your scripts are portable and keep dependencies minimal.
176+
177+
---
178+
179+
## ❤️ Support
180+
If this project helped you save time or setup headaches, consider supporting:
181+
182+
[![Donate via Stripe](https://img.shields.io/badge/Donate-Stripe-blue?logo=stripe&logoColor=white)](https://buy.stripe.com/8x200i8bSgVe3Vl3g8bfO00)
183+
184+
Your contribution helps keep these utilities maintained and up to date.
185+
186+
---
187+
188+
## 📜 License
189+
This project is licensed under the [GNU GPL-2.0 License](LICENSE).
190+
191+
---
192+
193+
**Author:** [Diego Marinho](https://github.com/dmoliveira)
194+
**Repository:** [github.com/dmoliveira/utils-scripts](https://github.com/dmoliveira/utils-scripts)
195+
**Last Updated:** 2025-11-02

0 commit comments

Comments
 (0)