#+TITLE: Amr's Modular Emacs Configuration
#+PROPERTY: header-args :tangle yes

* Configuration Modules

This file loads the modular Emacs configuration files. It should be the primary way Emacs is configured, replacing or integrating with the original `~/.emacs`, `~/.emacs.d/init.el`, `~/.emacs.d/early-init.el`, and `~/.emacs.d/config.el`.

#+begin_src emacs-lisp
(let ((config-dir "~/memex/system/"))
  ;; Load the core settings, including package management and essential setup.
  (org-babel-load-file (expand-file-name "emacs-core.org" config-dir))

  ;; Load early init settings (if separate and not fully covered by core)
  ;; (org-babel-load-file (expand-file-name "emacs-early-init.org" config-dir))

  ;; Load other modules in a logical order
  (org-babel-load-file (expand-file-name "emacs-org.org" config-dir))
  (org-babel-load-file (expand-file-name "emacs-gtd.org" config-dir))
  (org-babel-load-file (expand-file-name "emacs-roam.org" config-dir))
  (org-babel-load-file (expand-file-name "emacs-writing.org" config-dir))
  (org-babel-load-file (expand-file-name "emacs-media.org" config-dir))
  (org-babel-load-file (expand-file-name "emacs-shell.org" config-dir))
  (org-babel-load-file (expand-file-name "emacs-ai.org" config-dir))
  (org-babel-load-file (expand-file-name "emacs-misc.org" config-dir)))
#+end_src