← All tools

dotgibson/dotfiles-core

Popularity 65 Updated Network & Systems

🧬 The shared Core of a cross-platform dotfiles system — zsh · nvim · tmux · starship, authored once and vendored into every OS. Zero drift.

githubauto-collected

Installation

A directly usable install command is not verified yet. Check the project documentation or releases.

<a id="readme-top"</a

<div align="center"<nobr

--[![CI][ci-shield]][ci-url]<!-- --![Last Commit][lastcommit-shield]<!-- --[![Contributors][contributors-shield]][contributors-url]<!-- --[![Forks][forks-shield]][forks-url]<!-- --[![Stargazers][stars-shield]][stars-url]<!-- --[![Issues][issues-shield]][issues-url]<!-- --[![MIT License][license-shield]][license-url]

</nobr</div

<br / <div align="center" <a href="https://github.com/dotgibson/" <img src="https://raw.githubusercontent.com/dotgibson/.github/main/profile/logo.png" alt="Logo" width="80" height="80" </a

<h3 align="center"🧬 dotfiles-core</h3

<p align="center" The foundation layer of a cross-platform dotfiles system. <br / <a href="https://dotgibson.github.io/dotfiles-web/docs"<strongExplore the docs »</strong</a <br / <br / <a href="https://dotgibson.github.io/dotfiles-web/playground/"View Demo</a &middot; <a href="https://github.com/dotgibson/dotfiles-core/issues/new?labels=bug&template=bugreport.md"Report Bug</a &middot; <a href="https://github.com/dotgibson/dotfiles-core/issues/new?labels=enhancement&template=featurerequest.md"Request Feature</a </p </div

<details <summaryTable of Contents</summary <ol <li <a href="#about-the-project"About The Project</a <ul <li<a href="#languages"Languages</a</li <li<a href="#tools"Tools</a</li </ul </li <li <a href="#getting-started"Getting Started</a <ul <li<a href="#prerequisites"Prerequisites</a</li <li<a href="#installation"Installation</a</li </ul </li <li<a href="#usage"Usage</a</li <li<a href="#contributing"Contributing</a</li <li<a href="#license"License</a</li <li<a href="#contact"Contact</a</li <li<a href="#acknowledgments"Acknowledgments</a</li </ol </details

About The Project

dotfiles-core is the foundation layer — the shell, editor, and tooling config that stays identical on every machine. It's authored once here and vendored into each per-OS repo, so you don't install this repo directly: you clone the repo for your platform (macOS, Kali, Fedora, …), which already carries Core inside it. Full docs live at the [documentation site][docs].

One tree is the exception to "authored once here": the editor lives in dotfiles-nvim, and Core vendors it in at a pinned release — so Core is a consumer too, not only a source.

The system is three layers — Core here, an OS-native layer per machine, and an optional role layer — each building on the one below. ARCHITECTURE.md is the canonical statement of the model and the boundary test that places a file in one:

| Layer | Lives in | Owns | | --- | --- | --- | | Core | this repo → vendored into every OS repo's core/ | zsh, tmux, git, starship — identical everywhere; plus nvim, vendored from dotfiles-nvim | | OS-native | dotfiles-{MacBook,Windows,Fedora,Arch,…} | package manager, clipboard, paths | | Role | dotfiles-Offense, dotfiles-Defense | offensive / defensive tooling |

The rationale (why vendoring, how a sync fans out) lives on the [docs site][docs]; this README is the quick tour.

Like most dotfiles, this started as a personal itch. Every tweak to my terminal led to refactoring something else, and the cycle didn't stop until the whole environment finally felt like home. Once it did, I wanted the exact same setup on every machine I touch — no productivity gaps when hopping between them. That's dotgibson: my terminal workflow, made portable.

It won't be everyone's ideal — dotfiles are personal — but the pieces here are meant to be borrowed, and it keeps evolving as I find better ways to build it. Suggestions and issues are always welcome; thanks to everyone whose own configs inspired this one.

<p align="right"(<a href="#readme-top"back to top</a)</p

Languages