Compare commits

..

2 Commits

Author SHA1 Message Date
54f70e9bba toes version 2026-01-29 23:44:57 -08:00
2730cc0d8e npm 2026-01-29 23:42:41 -08:00
3 changed files with 13 additions and 8 deletions

View File

@ -2,7 +2,7 @@
Toes is a personal web server you run in your home.
Set it up, turn it on, and forget about the cloud.
Turn it on and forget about the cloud.
## quickstart

View File

@ -1,8 +1,9 @@
{
"name": "toes",
"name": "@because/toes",
"version": "0.0.2",
"description": "personal web appliance - turn it on and forget about the cloud",
"module": "src/index.ts",
"type": "module",
"private": true,
"bin": {
"toes": "src/cli/index.ts"
},

View File

@ -284,12 +284,12 @@ function getAppPackage(): { name?: string; scripts?: { toes?: string } } | null
}
}
const getAppName = () => getAppPackage()?.name || basename(process.cwd())
const isApp = () => !!getAppPackage()?.scripts?.toes
function resolveAppName(name?: string): string | undefined {
if (name) return name
const pkg = getAppPackage()
if (pkg?.scripts?.toes) return pkg.name || basename(process.cwd())
if (isApp()) return getAppName()
console.error('No app specified and current directory is not a toes app')
return undefined
}
@ -300,7 +300,7 @@ async function pushApp() {
return
}
const appName = basename(process.cwd())
const appName = getAppName()
const localManifest = generateManifest(process.cwd(), appName)
const result = await getManifest(appName)
@ -430,7 +430,7 @@ async function pullApp() {
return
}
const appName = basename(process.cwd())
const appName = getAppName()
const remoteManifest: Manifest | undefined = await get(`/api/sync/apps/${appName}/manifest`)
if (!remoteManifest) {
@ -507,7 +507,7 @@ async function syncApp() {
return
}
const appName = basename(process.cwd())
const appName = getAppName()
const gitignore = loadGitignore(process.cwd())
const localHashes = new Map<string, string>()
@ -667,6 +667,10 @@ program
},
})
program
.command('version', { hidden: true })
.action(() => console.log(program.version()))
program
.command('info')
.description('Show info for an app')