INNER CODE UNIT · TypeScript
initializeProject
akirarika/milkio · packages/cookbook/src/watcher/index.ts:99
async function initializeProject(mode: string, root: string, appRoot: string, validDirs: string[], options: CookbookOptions, project: CookbookWatcherExtensionProject) {
const versionKey = `v${__VERSION__}.${mode}.${options.hash}`;
const versionPath = join(root, ".milkio", ".version");
const needsReinit = !(await exists(versionPath)) || (await readFile(versionPath, "utf-8")) !== versionKey;
if (needsReinit) {
await rm(join(root, ".milkio"), { recursive: true, force: true });
try {
await mkdir(join(root, ".milkio"));
} catch (error) { }
await Bun.write(versionPath, versionKey);
}
// Create stub files only on fresh init
if (needsReinit) {
const milkioDir = join(root, ".milkio");
const stubs: Record<string, string> = {
"index.ts": indexTs,