Compare commits

..

No commits in common. "v0.3.0" and "v0.2.2" have entirely different histories.

4 changed files with 62 additions and 126 deletions

View file

@ -1,9 +1,3 @@
## [0.3.0](https://git.kjan.de/jank/project-cli/compare/v0.2.2...v0.3.0) (2025-06-19)
### Features
* Add some compiling ([81ee09b](https://git.kjan.de/jank/project-cli/commit/81ee09b42fafa5300e384a236602ee22f838da00))
## [0.2.2](https://git.kjan.de/jank/project-cli/compare/v0.2.1...v0.2.2) (2025-06-19) ## [0.2.2](https://git.kjan.de/jank/project-cli/compare/v0.2.1...v0.2.2) (2025-06-19)
### Bug Fixes ### Bug Fixes

View file

@ -1,5 +1,3 @@
#!/usr/bin/env node
import fs from "fs"; import fs from "fs";
import { confirm, select, input } from "@inquirer/prompts"; import { confirm, select, input } from "@inquirer/prompts";
import { exit } from "process"; import { exit } from "process";
@ -12,18 +10,10 @@ import {
type Project, type Project,
} from "./configuration/configuration"; } from "./configuration/configuration";
import { execSync } from "child_process"; import { execSync } from "child_process";
import { program } from "commander";
const CLI_NAME = "pcli";
program
.name("project-cli")
.description("A cli for managing projects")
.action(async () => {
if (!fs.existsSync(configPath + "config.toml")) { if (!fs.existsSync(configPath + "config.toml")) {
const createConfig = await confirm({ const createConfig = await confirm({
message: message: "No cofig has been found. Would you like to generate a new one?",
"No cofig has been found. Would you like to generate a new one?",
}); });
if (createConfig) { if (createConfig) {
@ -46,9 +36,7 @@ program
choices: ["Clone a project with git", "Create a new empty Project"], choices: ["Clone a project with git", "Create a new empty Project"],
}); });
if (anwser == "Clone a project with git") { if (anwser == "Clone a project with git") {
const repoUrl = await input({ const repoUrl = await input({ message: "What is the url of the repo?" });
message: "What is the url of the repo?",
});
const wantsCustomName = await confirm({ const wantsCustomName = await confirm({
message: "Would you like to give this project a custom name?", message: "Would you like to give this project a custom name?",
default: false, default: false,
@ -84,36 +72,4 @@ program
addProject(newProject); addProject(newProject);
} }
} }
const pickedProject = await select({
message: "Which Project would you like to go to?",
choices: getProjects().map((project: Project) => project.name),
});
process.chdir(getConfiguration().projectsDirectory + "/" + pickedProject);
console.log(getProjects()); console.log(getProjects());
});
program.command("init").action(() => {
console.log(`${CLI_NAME}() {
local output
output=$(command ${CLI_NAME} "$@")
local exit_code=$?
if [ $exit_code -eq 0 ]; then
echo "$output" | while IFS= read -r line; do
if [[ $line == __EXEC__* ]]; then
eval "\${line#__EXEC__}"
else
echo "$line"
fi
done
else
echo "$output" >&2
return $exit_code
fi
}`);
});
program.parse();

7
package-lock.json generated
View file

@ -1,12 +1,12 @@
{ {
"name": "proj-cli", "name": "proj-cli",
"version": "0.3.0", "version": "0.2.2",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "proj-cli", "name": "proj-cli",
"version": "0.3.0", "version": "0.2.2",
"dependencies": { "dependencies": {
"@saithodev/semantic-release-gitea": "^2.1.0", "@saithodev/semantic-release-gitea": "^2.1.0",
"@semantic-release/changelog": "^6.0.3", "@semantic-release/changelog": "^6.0.3",
@ -21,9 +21,6 @@
"inquirer": "^12.6.3", "inquirer": "^12.6.3",
"semantic-release": "^24.2.5" "semantic-release": "^24.2.5"
}, },
"bin": {
"pcli": "dist/index.js"
},
"devDependencies": { "devDependencies": {
"@types/bun": "latest" "@types/bun": "latest"
}, },

View file

@ -1,19 +1,8 @@
{ {
"name": "proj-cli", "name": "proj-cli",
"version": "0.3.0", "version": "0.2.2",
"module": "index.ts", "module": "index.ts",
"type": "module", "type": "module",
"bin": {
"pcli": "./dist/index.js"
},
"scripts": {
"build": "bun build index.ts --outfile dist/index.js --target node",
"dev": "bun run index.ts",
"prepublishOnly": "bun run build"
},
"files": [
"dist/"
],
"devDependencies": { "devDependencies": {
"@types/bun": "latest" "@types/bun": "latest"
}, },