Skip to content

Web set editor#1105

Open
jamesbeldock wants to merge 150 commits intomathiasbynens:mainfrom
jamesbeldock:web-set-editor
Open

Web set editor#1105
jamesbeldock wants to merge 150 commits intomathiasbynens:mainfrom
jamesbeldock:web-set-editor

Conversation

@jamesbeldock
Copy link
Copy Markdown

No description provided.

jamesbeldock and others added 30 commits December 8, 2025 14:04
* 'main' of https://github.com/jamesbeldock/dotfiles:
  lazyvim latest news read
  Replace fastfetch config and fix bug in stow path
  Add homebrew's ruby to path
  Fixing missing pre-install checked for network security tools (OS X)
Removed instructions for sourcing specific dotfiles.
* 'main' of https://github.com/jamesbeldock/dotfiles:
  Update README to simplify setup instructions
  Update README to clarify dotfiles origin
…nd modularity

- Refactored `linux-apt-package-install.sh` to use functions for argument parsing, privilege detection, and installation execution.
- Updated `osx-package-install.sh` to modularize Homebrew checks and package installation logic.
- Enhanced `stow-packages.sh` with structured argument parsing and execution functions.
- Added BATS tests for `bootstrap.sh`, `linux-apt-package-install.sh`, `osx-package-install.sh`, and `stow-packages.sh` to ensure proper functionality and coverage.
- Introduced a test helper script to streamline array assertions in BATS tests.
- Created `.gitmodules` to manage BATS dependencies as submodules.
- Added `TESTING.md` to document testing procedures and guidelines.
- Included a settings file for Claude with specific permissions for script execution.
Add bats-core, bats-support, and bats-assert as git submodules
under test/libs/ to support the unit test suite.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The oh-my-zsh/dot-oh-my-zsh directory was tracked as a submodule
in the git index but had no corresponding entry in .gitmodules,
causing the GitHub Actions checkout with submodules: recursive to
fail.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Introduce a YAML-based package configuration (config/packages.yaml as
shared catalog, config/sets/ for per-set definitions) with JSON Schema
validation. Python tools (load_config.py, validate_config.py,
verify_transition.py) bridge YAML into bash arrays via eval. All three
install scripts now load packages dynamically from config instead of
maintaining duplicate hard-coded arrays. Tests updated: package content
assertions moved to load-config.bats, new validation and transition
verification test files added. CI workflow updated with Python setup.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Implemented dynamic set discovery in various scripts using a shared function.
- Updated argument parsing to list available sets and validate configurations.
- Added tests for dynamic set discovery and validation checks.
- Improved error handling for invalid sets and platform checks.
- Introduced `PackageTable` for displaying package comparison across different sets.
- Added `SetSelector` for managing active and comparison sets.
- Implemented `FileBrowser` and `FileEditor` for file management within stow packages.
- Created `PackageList` for listing stow packages with options to create and delete.
- Developed `ConfigSetsPage` and `StowPackagesPage` for managing configuration sets and stow packages respectively.
- Integrated Tailwind CSS for styling and Vite for development setup.
- Added TypeScript configuration for improved type safety and development experience.
- Included React SVG for visual representation of React in the UI.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant