spb/spbgit Public MIT
SPB Git — the platform hosting itself
JavaScript 73.9%
CSS 11.7%
Nunjucks 11.6%
Shell 2.7%
1#!/usr/bin/env node2/**3 * ─────────────────────────────────────────────4 * SPB Git — Personal Git Platform5 * ─────────────────────────────────────────────6 * Author : Simon-Pierre Boucher7 * Contact : contact@spboucher.ai8 * File : cli/spbgit.mjs9 * Purpose : spbgit CLI entry point — terminal command center10 * License : MIT © Simon-Pierre Boucher11 * ─────────────────────────────────────────────12 */1314import { Command } from 'commander';15import pc from 'picocolors';16import { registerInit } from './commands/init.mjs';17import { registerToken } from './commands/token.mjs';18import { registerList } from './commands/list.mjs';19import { registerCreate } from './commands/create.mjs';20import { registerClone } from './commands/clone.mjs';21import { registerStatus } from './commands/status.mjs';22import { registerCommit } from './commands/commit.mjs';23import { registerPush } from './commands/push.mjs';24import { registerPull } from './commands/pull.mjs';25import { registerSync } from './commands/sync.mjs';26import { registerOpen } from './commands/open.mjs';27import { registerInfo } from './commands/info.mjs';28import { registerRm } from './commands/rm.mjs';29import { registerDoctor } from './commands/doctor.mjs';30import { registerRelease } from './commands/release.mjs';3132const program = new Command();33program34 .name('spbgit')35 .description('SPB Git — manage every repository on git.spboucher.ai from the terminal')36 .version('1.0.0');3738for (const register of [39 registerInit, registerToken, registerList, registerCreate, registerClone,40 registerStatus, registerCommit, registerPush, registerPull, registerSync,41 registerOpen, registerInfo, registerRm, registerDoctor, registerRelease,42]) {43 register(program);44}4546program.parseAsync(process.argv).catch((err) => {47 console.error(pc.red(`✗ ${err.message}`));48 process.exit(1);49});50