#2633·bower

Bower's role in 2025

Author: percebusCreated Jan 15, 2025Updated Jan 15, 2025

Not a bug. But I don't have access to discussions.

Every year or so, I find myself scoundring throught the internet for a solution to be able to simply checkout main branch for some repos (ala svn:externals. Every year, I've revisited:

  • git submodules. But I need to maintain the commit reference, even when addind the reference w/ -b main
  • git externals. But: requires rubym, is stale and there are like 3 forked repos
  • gil (git links): Works very similar
  • git merged trees
  • etc. etc. etc.

Looking at GitHub's team, they seem to go with submodules https://github.com/github/scripts-to-rule-them-all

I've even come up w/ my own light wait implementation.-

cwd=$(pwd)
echo "[C]urrent [W]orking [D]irectory: ${cwd}"
repos_folder_path="${cwd}/repos"
rm -rf ${repos_folder_path}
mkdir -p ${repos_folder_path}
cd ${repos_folder_path}
pwd
repos_file_path="${cwd}/git_repos.txt"
cat ${repos_file_path}
IFS=$'\n'
for git_repo in `cat ${repos_file_path}`
do
    echo "Cloning: ${git_repo}..."
    git clone "${git_repo}"
done

Yet, every year I find myself to simply adding a minimal bower.json with some reference to a scripts repo that I can include in all of my projects, even if bower will go away someday.

json
{
  "name": "some-project",
  "private": true,
  "ignore": ["**/.*", "node_modules", "bower_components", "test", "tests"],
  "devDependencies": {
    "commons": "[email protected]:percebus/commons.git#main"
  }
}

I've also looked at package manager alternatives

  • npm: I need to maintain a package.json
  • pip: I need to create a python package
  • pipx: I could potentially transform each scripts/ into an cmd tool
  • choco: Overkill
  • nuget: Too verbose for this task
  • I've heard that go might have something towards this end. But I have not find it.
  • etc.

In my 10yrs+ in corp America, there are some other useful tasks I've come across:

  • Having a centralized LICENSE(.md) with the updated year, that I can pull and git commit
  • Some team maintaining some PDFs manuals (LFS), that should get shipped with the webapp
  • Sync-ing files like .github/PULL_REQUEST_TEMPLATE.md or stylecop.json
  • etc.

So I figured I would post the question.- Is there no Other mainstream tool to perform such a simple task?

  • Maintain a list of git repos #(master|main) I can git clone to victory?
  • Should bower cli remain just to fill this need?