Skip to content

ismaildasci/my-dotfiles

Repository files navigation

🛠️ Dotfiles

Modern macOS development environment setup for Laravel, Vue.js, and full-stack web development.

🚀 Quick Start

  1. Clone the repository:

    git clone https://github.com/ismaildasci/my-dotfiles.git ~/.dotfiles
    cd ~/.dotfiles
  2. Run the setup script:

    ./fresh.sh

This will automatically install and configure everything you need for development.

📦 What's Included

Core Components

  • 🍺 Homebrew - Package manager for macOS
  • 🐚 Oh My Zsh - Framework for managing zsh configuration
  • ⚡ Custom aliases - Shortcuts for common development tasks
  • 🎨 Minimal theme - Clean and informative zsh prompt
  • 🔧 Development tools - Essential CLI tools and applications

Development Environment

Languages & Frameworks

  • PHP with Laravel Herd integration
  • Node.js with npm/yarn support
  • Git with enhanced aliases

Applications Installed

  • Code Editors: Visual Studio Code, PhpStorm support
  • Browsers: Google Chrome, Firefox
  • Design: Figma
  • Database: TablePlus, MySQL via Herd
  • Development: Docker, Tinkerwell, Transmit
  • Productivity: 1Password, Slack, Telegram
  • Media: Loom, Screen Studio
  • Utilities: The Unarchiver, ImageOptim, HTTPie

🗂️ File Structure

dotfiles/
├── fresh.sh              # Main setup script
├── aliases.zsh           # Custom command aliases
├── path.zsh              # PATH configuration
├── minimal.zsh-theme     # Custom zsh theme
├── Brewfile              # Homebrew packages and apps
├── ssh.sh                # SSH key generation script
└── bin/
    └── setup             # Laravel project setup script

⚙️ Configuration Details

Aliases (aliases.zsh)

Shortcuts

  • reloadshell - Reload zsh configuration
  • copyssh - Copy SSH public key to clipboard
  • ll - Enhanced directory listing
  • shrug - Copy ¯_(ツ)_/¯ to clipboard

Directory Navigation

  • dotfiles - Jump to dotfiles directory
  • projects - Jump to ~/Code
  • sites - Jump to ~/Herd

Laravel Development

  • a - Laravel Artisan commands (herd php artisan)
  • fresh - Fresh migration with seeding
  • tinker - Laravel Tinker
  • serve - Start Laravel development server

PHP Development

  • php / composer - Use Herd's PHP and Composer
  • cfresh - Clean composer install

Git Shortcuts

  • gs - Git status
  • commit - Add all and commit with message
  • push / pull - Git push/pull
  • wip - Quick work-in-progress commit
  • amend - Amend last commit
  • nuke - Hard reset and clean

Project Setup

The bin/setup script helps you quickly clone and set up Laravel projects:

# Usage (from ~/Herd directory):
setup https://github.com/user/repo.git project-name

This will:

  • Clone the repository
  • Set up environment configuration
  • Install dependencies (Composer & npm)
  • Run migrations and seeders
  • Open in VS Code

SSH Key Generation

Generate SSH keys for GitHub:

./ssh.sh your-email@example.com

🎨 Theme Features

The minimal zsh theme provides:

  • Git status - Shows current branch and clean/dirty state
  • Error indication - Red prompt on command failure
  • Background jobs - Visual indicator for running jobs
  • Path shortening - Smart directory path display
  • SSH context - Shows hostname when connected via SSH

🔧 Manual Configuration

After running the setup, you may want to:

  1. Configure Git:

    git config --global user.name "Your Name"
    git config --global user.email "your.email@example.com"
  2. Add SSH key to GitHub:

    copyssh  # Copies public key to clipboard
    # Then paste into GitHub SSH settings
  3. Set up development directories:

    • ~/Code - General development projects
    • ~/Herd - Laravel projects managed by Herd

🛠️ Customization

Adding New Aliases

Edit aliases.zsh and run reloadshell to apply changes.

Installing Additional Software

Add packages to Brewfile and run:

brew bundle --file ./Brewfile

Modifying the Theme

Edit minimal.zsh-theme to customize the prompt appearance.

📱 macOS Settings

The setup script also applies custom macOS preferences via a .macos file (not shown in this repo). This typically includes:

  • Dock preferences
  • Finder settings
  • System preferences
  • Security settings

🤝 Contributing

Feel free to fork this repository and customize it for your own needs. If you have improvements or fixes, pull requests are welcome!

📄 License

This project is open source and available under the MIT License.


Happy coding! 🚀

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

 

Packages

No packages published