create a new project
This commit is contained in:
parent
01d614a5d9
commit
bd7771e813
23
nose/bin/new.ts
Normal file
23
nose/bin/new.ts
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
import { mkdirSync, writeFileSync } from "fs"
|
||||
import { join } from "path"
|
||||
|
||||
import { apps } from "@/webapp"
|
||||
import { NOSE_WWW } from "@/config"
|
||||
import { isDir } from "@utils"
|
||||
|
||||
import load from "./load"
|
||||
|
||||
export default function (project: string) {
|
||||
if (!project) throw "Please provide a name for your new project\n> new <project>"
|
||||
|
||||
if (apps().includes(project)) throw `${project} already exists`
|
||||
|
||||
if (!isDir(NOSE_WWW)) throw `no www dir! make one in a real shell:\n$ mkdir -p ${NOSE_WWW}`
|
||||
|
||||
mkdirSync(join(NOSE_WWW, project))
|
||||
writeFileSync(join(NOSE_WWW, project, `index.ts`), `export default (c: Context) =>\n "Hello, world!"`)
|
||||
|
||||
load(project)
|
||||
|
||||
return `created ${project}`
|
||||
}
|
||||
Loading…
Reference in New Issue
Block a user