mydata-cli
Version:
A CLI tool for interacting with MyData API and managing data. Supports login, data retrieval, and more. Built with Node.js.
43 lines (35 loc) • 1.27 kB
JavaScript
import { Command } from "commander";
import loginCommand from "../commands/login.js";
import projectCommand from "../commands/project.js";
import configCommand from "../commands/config.js";
import todoCommand from "../commands/todo.js";
import readmeCommand from "../commands/readme.js";
import { readFileSync } from "fs";
import path from "path";
import { fileURLToPath } from "url";
// Setup __dirname in ES module
const __filename = fileURLToPath(import.meta.url);
const __dirname = path.dirname(__filename);
// Read version from package.json
const pkg = JSON.parse(
readFileSync(path.join(__dirname, "../package.json"), "utf-8")
);
const program = new Command();
program
.name("mycli")
.description("CLI to access Mydata Manager API")
.version(pkg.version, "-v, --version", "Display CLI version"); // ✅ add -v alias
// Custom `version` command
program
.command("version")
.description("Show CLI version")
.action(() => {
console.log(`mycli version ${pkg.version}`);
});
program.addCommand(loginCommand);
program.addCommand(projectCommand);
program.addCommand(configCommand);
program.addCommand(todoCommand);
program.addCommand(readmeCommand);
program.parse(process.argv);