{"id":13476564,"url":"https://github.com/dkarter/dotfiles","last_synced_at":"2026-06-27T07:00:40.411Z","repository":{"id":35735621,"uuid":"40014361","full_name":"dkarter/dotfiles","owner":"dkarter","description":"✨ My dev setup","archived":false,"fork":false,"pushed_at":"2026-06-21T05:42:39.000Z","size":14944,"stargazers_count":127,"open_issues_count":3,"forks_count":14,"subscribers_count":4,"default_branch":"master","last_synced_at":"2026-06-21T06:18:09.899Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://doriankarter.com","language":"Lua","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"Sephiroth87/ODRefreshControl","license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dkarter.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2015-07-31T16:28:28.000Z","updated_at":"2026-06-21T04:27:30.000Z","dependencies_parsed_at":"2023-10-23T16:28:24.140Z","dependency_job_id":"5bb1aac8-f190-4a26-afe7-01eb7de9a200","html_url":"https://github.com/dkarter/dotfiles","commit_stats":{"total_commits":2690,"total_committers":68,"mean_commits":39.55882352941177,"dds":0.2788104089219331,"last_synced_commit":"d5e99d4ca80d2d5a71c0a124a7db681581cfb556"},"previous_names":[],"tags_count":185,"template":false,"template_full_name":null,"purl":"pkg:github/dkarter/dotfiles","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dkarter%2Fdotfiles","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dkarter%2Fdotfiles/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dkarter%2Fdotfiles/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dkarter%2Fdotfiles/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dkarter","download_url":"https://codeload.github.com/dkarter/dotfiles/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dkarter%2Fdotfiles/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34844346,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-27T02:00:06.362Z","response_time":126,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-07-31T16:01:31.981Z","updated_at":"2026-06-27T07:00:40.398Z","avatar_url":"https://github.com/dkarter.png","language":"Lua","funding_links":[],"categories":["Lua"],"sub_categories":[],"readme":"```\n▓█████▄  ▒█████  ▄▄▄█████▓  █████▒██▓ ██▓    ▓█████   ██████\n▒██▀ ██▌▒██▒  ██▒▓  ██▒ ▓▒▓██   ▒▓██▒▓██▒    ▓█   ▀ ▒██    ▒\n░██   █▌▒██░  ██▒▒ ▓██░ ▒░▒████ ░▒██▒▒██░    ▒███   ░ ▓██▄\n░▓█▄   ▌▒██   ██░░ ▓██▓ ░ ░▓█▒  ░░██░▒██░    ▒▓█  ▄   ▒   ██▒\n░▒████▓ ░ ████▓▒░  ▒██▒ ░ ░▒█░   ░██░░██████▒░▒████▒▒██████▒▒\n▒▒▓  ▒ ░ ▒░▒░▒░   ▒ ░░    ▒ ░   ░▓  ░ ▒░▓  ░░░ ▒░ ░▒ ▒▓▒ ▒ ░\n░ ▒  ▒   ░ ▒ ▒░     ░     ░      ▒ ░░ ░ ▒  ░ ░ ░  ░░ ░▒  ░ ░\n░ ░  ░ ░ ░ ░ ▒    ░       ░ ░    ▒ ░  ░ ░      ░   ░  ░  ░\n  ░        ░ ░                   ░      ░  ░   ░  ░      ░\n░\n```\n\n\u003cp align=\"center\"\u003e\n  \u003cb\u003e:sparkles: Dorian's Dotfiles :sparkles:\u003c/b\u003e\n\u003c/p\u003e\n\n\u003cbr /\u003e\n\n### Thanks for dropping by!\n\nThis is my personal collection of configuration files.\n\n![screenshot](./screenshot.png)\n![image](https://user-images.githubusercontent.com/551858/188434274-2df6fe83-7824-4b45-a797-51a96a1b928b.png)\n\u003cimg width=\"2226\" alt=\"image\" src=\"https://user-images.githubusercontent.com/551858/189501141-a442b7b8-4089-4721-aaff-7d467b3d8bf4.png\"\u003e\n\nFeel free to \"steal\" anything you want, and if you have a question please open an issue.\n\n---\n\n# Dependencies\n\nThe goal is to have all dependencies for the config automatically installed with\nthe setup script. More details can be found by reading the following files:\n\n- [setup.sh](./setup.sh)\n- [Taskfile.dist.yml](./Taskfile.dist.yml)\n\n\u003e [!NOTE]\n\u003e The setup script relies on [Taskfile](https://taskfile.dev)! A modern alternative to `make`\n\u003e There are still some steps that have not been migrated, but will be soon\n\nGotchas for NeoVim setup:\n\n- All runtime dependencies, including neovim itself are installed via [Mise](https://mise.en.dev)\n- Tools such as formatters, LSPs, linters are automatically installed via\n  `:Mason`, if one of the deps is not installing make sure to open `:Mason` to\n  see the full error message.\n- Make sure to run `:checkhealth` to know if you are missing anything\n\n# Installation\n\nEasy..\n\n```sh\ngit clone git@github.com:dkarter/dotfiles.git\n```\n\nCd into the dotfiles dir: `cd dotfiles`\n\n```sh\n./setup.sh\n```\n\n## Synchronizing\n\nThe dotfiles get updated often, and with that some new tools and configurations might be added.\n\nIn order to keep the dotfiles up to date, I recommend running the following:\n\n```bash\ngit pull # get latest\ntask sync # installs/updates tools and symlinks new configs\n```\n\n# Note about forking/versioning\n\nI generally don't recommend using other people's dotfiles, at least not when you're just starting with Vim.. these are customized to my personal taste and preferences, and are subject to change at any time.\n\nInstead consider forking [kickstart.nvim](https://github.com/nvim-lua/kickstart.nvim), which is modern and very minimal, and using it as your base to build upon.\nAlternatively, there are some great NeoVim distributions out there such as [Lazy.nvim](https://github.com/folke/lazy.nvim), LunarVim, AstroVim, and NVChad.\n\n## Versioning\n\nMy dotfiles are now automatically (and semantically) versioned and contain a [Changelog](./CHANGELOG.md)! The main branch will be continuously updated, and you can use git tags to check out specific versions.\n\n\u003e [!WARNING]\n\u003e I do my best try to keep a good git hygiene. The versioning script I use here\n\u003e follows conventional commits to determine the semantic versioning. However, I\n\u003e may still inadvertently introduce a breaking change without a warning. The\n\u003e best course of action might be to have an independent fork and follow the\n\u003e changelog + rebase often - otherwise it could become painful to keep up (I\n\u003e update my dots all the time to keep things fresh and fight entropy).\n\nReleases and versioning is done using [Release Please](https://github.com/googleapis/release-please), GitHub Actions, and [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/)\n\n---\n\n## FAQ\n\n\u003cdetails\u003e\n\u003csummary\u003eQ: Why are things named without a dot at the beginning?\u003c/summary\u003e\nA: It makes it easier to include files in this repo if they are not named\nexactly how they would be when symlinked over (I symlink the files here to my home\ndirectory).  e.g. if I want to include the global `.gitignore` in this repo it\nwill override this repo's `.gitignore`.\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003eQ: Why are both Mise and Homebrew used?\u003c/summary\u003e\nA: [Mise](https://mise.jdx.dev) was recently introduced to manage runtimes - it\n  is an alternative to ASDF and it's super fast (at least compared to ASDF's\n  bash implementation). Furthermore, it is [more secure](https://github.com/jdx/mise/blob/main/SECURITY.md).\n\nRuntimes include things you need to run your app, such as Elixir, Erlang,\nRuby, Go, Python etc. Mise does that well and uses a `mise.toml` in your\nproject directory as an alternative to the `.tool-versions` - although it does\nsupport `.tool-versions` spec too.\n\nMise has multiple backends, and you should read a little about these to get\nthe most benefit out of using Mise. Specifically learn about:\n\n- [Aqua](https://mise.jdx.dev/dev-tools/backends/aqua.html)\n- [Github](https://mise.jdx.dev/dev-tools/backends/github.html)\n- [Cargo](https://mise.jdx.dev/dev-tools/backends/cargo.html)\n  There are others too - but these are the ones I use the most. UBI is\n  especially cool!\n\nMise also excels at managing binaries and CLIs and updating them to their\nlatest versions - for that reason I switched pretty much every CLI I use to be\ninstalled with Mise - as long as I could find it or make Mise know about it\n(e.g. via UBI).\n\nHowever, not all tools are available via Mise, and some are simply not\nsomething Mise particularly excels in: compile libs, Casks (aka UI apps) -\nthose are still managed with Homebrew (or in the case of Debian based distros - apt) - at least for now!\n\n\u003c/details\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdkarter%2Fdotfiles","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdkarter%2Fdotfiles","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdkarter%2Fdotfiles/lists"}