From a569a5cd9aca554264451d94e0b1f097682643c3 Mon Sep 17 00:00:00 2001 From: truehazker <40111175+truehazker@users.noreply.github.com> Date: Sun, 4 Jan 2026 13:08:41 +0400 Subject: [PATCH 1/3] feat: :sparkles: enhance README, refactor CLI code --- CHANGELOG.md | 11 ++ README.md | 65 ++++---- assets/demo.mp4 | Bin 0 -> 189357 bytes src/constants.ts | 20 +++ src/git.ts | 95 ++++++++++++ src/index.ts | 376 ++++++++++++++++------------------------------- src/template.ts | 62 ++++++++ src/utils.ts | 64 ++++++++ 8 files changed, 415 insertions(+), 278 deletions(-) create mode 100644 assets/demo.mp4 create mode 100644 src/constants.ts create mode 100644 src/git.ts create mode 100644 src/template.ts create mode 100644 src/utils.ts diff --git a/CHANGELOG.md b/CHANGELOG.md index 1ce9afd..042ae2c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,17 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Changed + +- Refactored codebase for better maintainability and organization +- Extracted `copyRecursive` and validation logic into `src/utils.ts` +- Extracted git initialization logic into `src/git.ts` +- Extracted template setup logic into `src/template.ts` +- Centralized constants and configuration into `src/constants.ts` +- Reduced main function complexity from 296 to 60 lines +- Added JSDoc comments to all exported functions +- Improved code reusability and testability + ## [0.1.2] - 2026-01-03 ### Added diff --git a/README.md b/README.md index b7f2662..10a2992 100644 --- a/README.md +++ b/README.md @@ -1,49 +1,60 @@ # create-ely -Scaffold ElysiaJS projects with ease using [Bun](https://bun.sh). +[![Lint](https://github.com/truehazker/create-ely/actions/workflows/lint.yml/badge.svg)](https://github.com/truehazker/create-ely/actions/workflows/lint.yml) +[![npm version](https://img.shields.io/npm/v/create-ely.svg)](https://www.npmjs.com/package/create-ely) +[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) -## Usage +[![Bun](https://img.shields.io/badge/Bun-000000?logo=bun)](https://bun.sh) +[![ElysiaJS](https://img.shields.io/badge/ElysiaJS-6366f1?logo=elysia&logoColor=white)](https://elysiajs.com) +[![TypeScript](https://img.shields.io/badge/TypeScript-3178C6?logo=typescript&logoColor=white)](https://www.typescriptlang.org/) +[![PostgreSQL](https://img.shields.io/badge/PostgreSQL-316192?logo=postgresql&logoColor=white)](https://www.postgresql.org/) -Create a new ElysiaJS project: +The fastest way to scaffold production-ready [ElysiaJS](https://elysiajs.com) projects with [Bun](https://bun.sh). + +
+ +
+ +## Quick Start + +Create a new project: ```bash -bunx create-ely my-project +bun create ely ``` -You'll be prompted to choose between: +Or with a project name: -- **Backend only** - ElysiaJS API with PostgreSQL, Drizzle ORM -- **Monorepo** - Backend + Frontend (React with TanStack Router) +```bash +bun create ely my-project +``` -## Templates +You'll be prompted to choose: -### Backend Only +- **Backend Only** - API-first ElysiaJS backend with PostgreSQL, Drizzle ORM, and OpenAPI docs +- **Monorepo** - Full-stack setup with React frontend, TanStack Router, and shared workspace -A production-ready ElysiaJS backend with: +## What's Included -- PostgreSQL database with Drizzle ORM -- Type-safe API with OpenAPI documentation -- Global error handling -- Structured logging with Pino -- Docker support -- Environment validation +**Backend Template:** -### Monorepo +- PostgreSQL + Drizzle ORM for type-safe database access +- OpenAPI documentation out of the box +- Global error handling and structured logging (Pino) +- Docker support for development and production +- Environment validation with type safety -Full-stack setup with: +**Monorepo Template:** -- Backend: Everything from Backend Only template -- Frontend: React + TanStack Router + Vite -- Workspace configuration with Bun +- Everything from Backend template +- React frontend with TanStack Router and Vite +- Bun workspaces for seamless monorepo management -## Development +## Contributing -To test the CLI locally: +> **⚠️ Important:** This project uses Git submodules for templates. Make sure to clone with `git clone --recurse-submodules` or run `git submodule update --init --recursive` after cloning. -```bash -bun link -bunx create-ely -``` +See [CONTRIBUTING.md](./CONTRIBUTING.md) for development setup and guidelines. ## License diff --git a/assets/demo.mp4 b/assets/demo.mp4 new file mode 100644 index 0000000000000000000000000000000000000000..c720d9c64d60755cc197cd048d3a5c73311a4bde GIT binary patch literal 189357 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%0D&im-;=rTNYOtkxcmwCMV!J*d1mf87M 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%0DXD)|**!^yc1k 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 z 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 RBJgID1-#iLjK0|PzW{V>yO#g} literal 0 HcmV?d00001 diff --git a/src/constants.ts b/src/constants.ts new file mode 100644 index 0000000..f24a1ba --- /dev/null +++ b/src/constants.ts @@ -0,0 +1,20 @@ +export const TEMPLATE_TYPES = { + BACKEND: 'backend', + MONOREPO: 'monorepo', +} as const; + +export const DEFAULT_PROJECT_NAME = 'my-ely-app'; + +export const PROJECT_NAME_REGEX = /^[a-z0-9-]+$/; + +export const EXCLUDED_COPY_PATTERNS = ['node_modules', '.git']; + +export const PORTS = { + BACKEND: 3000, + FRONTEND: 5173, +} as const; + +export const TEMPLATE_PATHS = { + BACKEND_BIOME_TEMPLATE: 'apps/backend-biome.json.template', + BACKEND_BIOME_TARGET: 'apps/backend/biome.json', +} as const; diff --git a/src/git.ts b/src/git.ts new file mode 100644 index 0000000..26ccdf6 --- /dev/null +++ b/src/git.ts @@ -0,0 +1,95 @@ +import * as clack from '@clack/prompts'; + +/** + * Initializes a git repository in the target directory and creates an initial commit + * @param targetDir - The directory to initialize git in + * @returns Promise that resolves when git initialization is complete + */ +export async function initializeGit(targetDir: string): Promise { + const initGit = await clack.confirm({ + message: 'Initialize git repository?', + initialValue: true, + }); + + if (clack.isCancel(initGit)) { + clack.cancel('Operation cancelled'); + process.exit(0); + } + + if (!initGit) { + return; + } + + // Check if git is available + const gitCheckProc = Bun.spawn(['git', '--version'], { + stdout: 'pipe', + stderr: 'pipe', + }); + await gitCheckProc.exited; + + if (gitCheckProc.exitCode !== 0) { + clack.log.warn( + 'Git is not installed or not available. Skipping git initialization.', + ); + return; + } + + const gitSpinner = clack.spinner(); + gitSpinner.start('Initializing git repository...'); + + try { + const gitInitProc = Bun.spawn(['git', 'init'], { + cwd: targetDir, + stdout: 'pipe', + stderr: 'pipe', + }); + await gitInitProc.exited; + + if (gitInitProc.exitCode !== 0) { + gitSpinner.stop('Failed to initialize git'); + clack.log.warn( + 'Git initialization failed. You can initialize manually later.', + ); + return; + } + + gitSpinner.stop('Git repository initialized'); + + // Make initial commit + gitSpinner.start('Creating initial commit...'); + + const gitAddProc = Bun.spawn(['git', 'add', '.'], { + cwd: targetDir, + stdout: 'pipe', + stderr: 'pipe', + }); + await gitAddProc.exited; + + if (gitAddProc.exitCode !== 0) { + gitSpinner.stop('Git initialized (add failed)'); + clack.log.warn('Failed to stage files. You can add them manually later.'); + return; + } + + const gitCommitProc = Bun.spawn(['git', 'commit', '-m', 'Initial commit'], { + cwd: targetDir, + stdout: 'pipe', + stderr: 'pipe', + }); + await gitCommitProc.exited; + + if (gitCommitProc.exitCode === 0) { + gitSpinner.stop('Initial commit created'); + } else { + gitSpinner.stop('Git initialized (commit failed)'); + clack.log.warn( + 'Failed to create initial commit. You can commit manually later.', + ); + } + } catch { + gitSpinner.stop('Git initialization failed'); + clack.log.warn( + 'An error occurred during git initialization. You can initialize manually later.', + ); + } +} diff --git a/src/index.ts b/src/index.ts index ae75516..030ee22 100755 --- a/src/index.ts +++ b/src/index.ts @@ -1,14 +1,117 @@ #!/usr/bin/env bun -import { - copyFileSync, - existsSync, - mkdirSync, - readdirSync, - rmSync, - statSync, -} from 'node:fs'; -import { dirname, join } from 'node:path'; +import { existsSync, readdirSync, rmSync } from 'node:fs'; +import { join } from 'node:path'; import * as clack from '@clack/prompts'; +import { + DEFAULT_PROJECT_NAME, + PORTS, + PROJECT_NAME_REGEX, + TEMPLATE_TYPES, +} from './constants.ts'; +import { initializeGit } from './git.ts'; +import { setupTemplate } from './template.ts'; +import { validateProjectName } from './utils.ts'; + +/** + * Gets the project name from command line arguments or prompts the user + * @param args - Command line arguments + * @returns Promise resolving to the project name + */ +async function getProjectName(args: string[]): Promise { + const projectNameArg = args[0]; + + // If project name was provided as argument and is valid, use it + if (projectNameArg && PROJECT_NAME_REGEX.test(projectNameArg)) { + return projectNameArg; + } + + // Otherwise, prompt for it with default value + const projectName = await clack.text({ + message: 'Project name:', + placeholder: DEFAULT_PROJECT_NAME, + initialValue: DEFAULT_PROJECT_NAME, + validate: validateProjectName, + }); + + if (clack.isCancel(projectName)) { + clack.cancel('Operation cancelled'); + process.exit(0); + } + + // Trim and normalize the project name + return projectName.trim(); +} + +/** + * Handles existing directory by prompting user to overwrite if not empty + * @param targetDir - The target directory path + * @param projectName - The project name + * @returns Promise that resolves when directory is ready + */ +async function handleExistingDirectory( + targetDir: string, + projectName: string, +): Promise { + if (!existsSync(targetDir)) { + return; + } + + const dirContents = readdirSync(targetDir); + const isEmpty = dirContents.length === 0; + + if (isEmpty) { + return; + } + + const shouldOverwrite = await clack.confirm({ + message: `Directory "${projectName}" already exists and is not empty. Overwrite it?`, + initialValue: false, + }); + + if (clack.isCancel(shouldOverwrite) || !shouldOverwrite) { + clack.cancel('Operation cancelled'); + process.exit(0); + } + + rmSync(targetDir, { recursive: true, force: true }); +} + +/** + * Generates the next steps message based on project type + * @param projectType - The type of project created + * @param projectName - The project name + * @param targetDir - The target directory path + * @returns Formatted message with next steps + */ +function getNextStepsMessage( + projectType: string, + projectName: string, + targetDir: string, +): string { + const projectTypeLabel = + projectType === TEMPLATE_TYPES.MONOREPO ? 'monorepo' : 'backend'; + + const nextSteps = + projectType === TEMPLATE_TYPES.MONOREPO + ? ` cd ${projectName} + bun run dev:backend # Start backend on http://localhost:${PORTS.BACKEND} + bun run dev:frontend # Start frontend on http://localhost:${PORTS.FRONTEND}` + : ` cd ${projectName} + bun run dev # Start backend on http://localhost:${PORTS.BACKEND}`; + + return ` +✨ Success! Your ElysiaJS ${projectTypeLabel} project is ready. + +📁 Project created at: ${targetDir} + +🚀 Next steps: +${nextSteps} + +📚 Check out the README.md for more information. + +Happy coding! 🎉 + `; +} async function main() { console.clear(); @@ -17,19 +120,18 @@ async function main() { // Check if project name was passed as argument const args = process.argv.slice(2); - const projectNameArg = args[0]; // Step 1: Select project type const projectType = await clack.select({ message: 'What would you like to create?', options: [ { - value: 'backend', + value: TEMPLATE_TYPES.BACKEND, label: 'Backend only', hint: 'ElysiaJS API with PostgreSQL', }, { - value: 'monorepo', + value: TEMPLATE_TYPES.MONOREPO, label: 'Monorepo', hint: 'Backend + Frontend (React + TanStack Router)', }, @@ -42,252 +144,24 @@ async function main() { } // Step 2: Get project name - let projectName: string | symbol; - - // If project name was provided as argument and is valid, use it - if (projectNameArg && /^[a-z0-9-]+$/.test(projectNameArg)) { - projectName = projectNameArg; - } else { - // Otherwise, prompt for it with default value - projectName = await clack.text({ - message: 'Project name:', - placeholder: 'my-ely-app', - initialValue: 'my-ely-app', - validate: (value) => { - if (!value || value.trim() === '') { - return 'Project name is required'; - } - const trimmed = value.trim(); - if (!/^[a-z0-9-]+$/.test(trimmed)) { - return 'Project name must contain only lowercase letters, numbers, and hyphens'; - } - if (trimmed.startsWith('-') || trimmed.endsWith('-')) { - return 'Project name cannot start or end with a hyphen'; - } - return undefined; - }, - }); - - if (clack.isCancel(projectName)) { - clack.cancel('Operation cancelled'); - process.exit(0); - } - - // Trim and normalize the project name - projectName = (projectName as string).trim(); - } - - const targetDir = join(process.cwd(), projectName as string); + const projectName = await getProjectName(args); + const targetDir = join(process.cwd(), projectName); // Step 3: Check if directory exists and handle it - if (existsSync(targetDir)) { - const dirContents = readdirSync(targetDir); - const isEmpty = dirContents.length === 0; - - if (!isEmpty) { - const shouldOverwrite = await clack.confirm({ - message: `Directory "${String(projectName)}" already exists and is not empty. Overwrite it?`, - initialValue: false, - }); - - if (clack.isCancel(shouldOverwrite) || !shouldOverwrite) { - clack.cancel('Operation cancelled'); - process.exit(0); - } - - rmSync(targetDir, { recursive: true, force: true }); - } - } - - const spinner = clack.spinner(); - spinner.start('Creating project...'); + await handleExistingDirectory(targetDir, projectName); try { - const templateDir = join( - import.meta.dir, - '..', - 'templates', - projectType as string, - ); - - // Cross-platform recursive copy function - function copyRecursive(src: string, dest: string, exclude: string[] = []) { - const stats = statSync(src); - - if (stats.isDirectory()) { - if (!existsSync(dest)) { - mkdirSync(dest, { recursive: true }); - } - - for (const entry of readdirSync(src)) { - if (exclude.includes(entry) || entry.endsWith('.template')) continue; - - const srcPath = join(src, entry); - const destPath = join(dest, entry); - copyRecursive(srcPath, destPath, exclude); - } - } else { - const destDir = dirname(dest); - if (!existsSync(destDir)) { - mkdirSync(destDir, { recursive: true }); - } - copyFileSync(src, dest); - } - } - - copyRecursive(templateDir, targetDir, ['node_modules', '.git']); - - // Handle template files: copy them to their intended locations - if (projectType === 'monorepo') { - const backendBiomeTemplate = join( - templateDir, - 'apps', - 'backend-biome.json.template', - ); - const backendBiomeTarget = join( - targetDir, - 'apps', - 'backend', - 'biome.json', - ); - - if (existsSync(backendBiomeTemplate)) { - copyFileSync(backendBiomeTemplate, backendBiomeTarget); - } - } - - spinner.stop('Project structure created!'); - - const s = clack.spinner(); - s.start('Installing dependencies...'); - - // Install dependencies - const installProc = Bun.spawn(['bun', 'install'], { - cwd: targetDir, - stdout: 'inherit', - stderr: 'inherit', - }); - await installProc.exited; - - if (installProc.exitCode !== 0) { - throw new Error('Failed to install dependencies'); - } - - s.stop('Dependencies installed!'); + // Step 4: Setup template + await setupTemplate(projectType, targetDir); - // Step 4: Ask if user wants to initialize git - const initGit = await clack.confirm({ - message: 'Initialize git repository?', - initialValue: true, - }); + // Step 5: Initialize git + await initializeGit(targetDir); - if (clack.isCancel(initGit)) { - clack.cancel('Operation cancelled'); - process.exit(0); - } - - if (initGit) { - // Check if git is available - const gitCheckProc = Bun.spawn(['git', '--version'], { - stdout: 'pipe', - stderr: 'pipe', - }); - await gitCheckProc.exited; - - if (gitCheckProc.exitCode !== 0) { - clack.log.warn( - 'Git is not installed or not available. Skipping git initialization.', - ); - } else { - const gitSpinner = clack.spinner(); - gitSpinner.start('Initializing git repository...'); - - try { - const gitInitProc = Bun.spawn(['git', 'init'], { - cwd: targetDir, - stdout: 'pipe', - stderr: 'pipe', - }); - await gitInitProc.exited; - - if (gitInitProc.exitCode === 0) { - gitSpinner.stop('Git repository initialized'); - - // Make initial commit - gitSpinner.start('Creating initial commit...'); - - const gitAddProc = Bun.spawn(['git', 'add', '.'], { - cwd: targetDir, - stdout: 'pipe', - stderr: 'pipe', - }); - await gitAddProc.exited; - - if (gitAddProc.exitCode === 0) { - const gitCommitProc = Bun.spawn( - ['git', 'commit', '-m', 'Initial commit'], - { - cwd: targetDir, - stdout: 'pipe', - stderr: 'pipe', - }, - ); - await gitCommitProc.exited; - - if (gitCommitProc.exitCode === 0) { - gitSpinner.stop('Initial commit created'); - } else { - gitSpinner.stop('Git initialized (commit failed)'); - clack.log.warn( - 'Failed to create initial commit. You can commit manually later.', - ); - } - } else { - gitSpinner.stop('Git initialized (add failed)'); - clack.log.warn( - 'Failed to stage files. You can add them manually later.', - ); - } - } else { - gitSpinner.stop('Failed to initialize git'); - clack.log.warn( - 'Git initialization failed. You can initialize manually later.', - ); - } - } catch { - gitSpinner.stop('Git initialization failed'); - clack.log.warn( - 'An error occurred during git initialization. You can initialize manually later.', - ); - } - } - } - - // Prepare next steps message - const projectTypeLabel = - projectType === 'monorepo' ? 'monorepo' : 'backend'; - const nextSteps = - projectType === 'monorepo' - ? ` cd ${String(projectName)} - bun run dev:backend # Start backend on http://localhost:3000 - bun run dev:frontend # Start frontend on http://localhost:5173` - : ` cd ${String(projectName)} - bun run dev # Start backend on http://localhost:3000`; - - clack.outro(` -✨ Success! Your ElysiaJS ${projectTypeLabel} project is ready. - -📁 Project created at: ${targetDir} - -🚀 Next steps: -${nextSteps} - -📚 Check out the README.md for more information. - -Happy coding! 🎉 - `); + // Step 6: Show success message + clack.outro( + getNextStepsMessage(projectType, projectName, targetDir), + ); } catch (error) { - spinner.stop('Failed to create project'); clack.cancel( error instanceof Error ? error.message : 'Unknown error occurred', ); diff --git a/src/template.ts b/src/template.ts new file mode 100644 index 0000000..195e233 --- /dev/null +++ b/src/template.ts @@ -0,0 +1,62 @@ +import { copyFileSync, existsSync } from 'node:fs'; +import { join } from 'node:path'; +import * as clack from '@clack/prompts'; +import { + EXCLUDED_COPY_PATTERNS, + TEMPLATE_PATHS, + TEMPLATE_TYPES, +} from './constants.ts'; +import { copyRecursive } from './utils.ts'; + +/** + * Sets up the project template by copying files and installing dependencies + * @param projectType - The type of project template to use ('backend' or 'monorepo') + * @param targetDir - The directory to create the project in + * @returns Promise that resolves when template setup is complete + */ +export async function setupTemplate( + projectType: string, + targetDir: string, +): Promise { + const spinner = clack.spinner(); + spinner.start('Creating project...'); + + const templateDir = join(import.meta.dir, '..', 'templates', projectType); + + copyRecursive(templateDir, targetDir, EXCLUDED_COPY_PATTERNS); + + // Handle template files: copy them to their intended locations + if (projectType === TEMPLATE_TYPES.MONOREPO) { + const backendBiomeTemplate = join( + templateDir, + TEMPLATE_PATHS.BACKEND_BIOME_TEMPLATE, + ); + const backendBiomeTarget = join( + targetDir, + TEMPLATE_PATHS.BACKEND_BIOME_TARGET, + ); + + if (existsSync(backendBiomeTemplate)) { + copyFileSync(backendBiomeTemplate, backendBiomeTarget); + } + } + + spinner.stop('Project structure created!'); + + const s = clack.spinner(); + s.start('Installing dependencies...'); + + // Install dependencies + const installProc = Bun.spawn(['bun', 'install'], { + cwd: targetDir, + stdout: 'inherit', + stderr: 'inherit', + }); + await installProc.exited; + + if (installProc.exitCode !== 0) { + throw new Error('Failed to install dependencies'); + } + + s.stop('Dependencies installed!'); +} diff --git a/src/utils.ts b/src/utils.ts new file mode 100644 index 0000000..bf8a6a3 --- /dev/null +++ b/src/utils.ts @@ -0,0 +1,64 @@ +import { + copyFileSync, + existsSync, + mkdirSync, + readdirSync, + statSync, +} from 'node:fs'; +import { dirname, join } from 'node:path'; + +/** + * Recursively copies files and directories from source to destination + * @param src - Source path to copy from + * @param dest - Destination path to copy to + * @param exclude - Array of file/directory names to exclude from copying + */ +export function copyRecursive( + src: string, + dest: string, + exclude: string[] = [], +): void { + const stats = statSync(src); + + if (stats.isDirectory()) { + if (!existsSync(dest)) { + mkdirSync(dest, { recursive: true }); + } + + for (const entry of readdirSync(src)) { + if (exclude.includes(entry) || entry.endsWith('.template')) continue; + + const srcPath = join(src, entry); + const destPath = join(dest, entry); + copyRecursive(srcPath, destPath, exclude); + } + } else { + const destDir = dirname(dest); + if (!existsSync(destDir)) { + mkdirSync(destDir, { recursive: true }); + } + copyFileSync(src, dest); + } +} + +/** + * Validates a project name according to npm package naming rules + * @param value - The project name to validate + * @returns Error message if invalid, undefined if valid + */ +export function validateProjectName(value: string): string | undefined { + if (!value || value.trim() === '') { + return 'Project name is required'; + } + + const trimmed = value.trim(); + if (!/^[a-z0-9-]+$/.test(trimmed)) { + return 'Project name must contain only lowercase letters, numbers, and hyphens'; + } + + if (trimmed.startsWith('-') || trimmed.endsWith('-')) { + return 'Project name cannot start or end with a hyphen'; + } + + return undefined; +} From d6dbb655b44cf4a7672932ba267ad46cb9d8c919 Mon Sep 17 00:00:00 2001 From: truehazker <40111175+truehazker@users.noreply.github.com> Date: Sun, 4 Jan 2026 13:14:44 +0400 Subject: [PATCH 2/3] refactor: :sparkles: update README to use image for demo and solve linter issues --- README.md | 4 +--- src/index.ts | 4 +--- 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index 10a2992..6007a60 100644 --- a/README.md +++ b/README.md @@ -11,9 +11,7 @@ The fastest way to scaffold production-ready [ElysiaJS](https://elysiajs.com) projects with [Bun](https://bun.sh). -

+![Demo](https://github.com/user-attachments/assets/256757ca-92dd-49f3-ba8f-2dda62410aa7) ## Quick Start diff --git a/src/index.ts b/src/index.ts index 030ee22..c5748be 100755 --- a/src/index.ts +++ b/src/index.ts @@ -158,9 +158,7 @@ async function main() { await initializeGit(targetDir); // Step 6: Show success message - clack.outro( - getNextStepsMessage(projectType, projectName, targetDir), - ); + clack.outro(getNextStepsMessage(projectType, projectName, targetDir)); } catch (error) { clack.cancel( error instanceof Error ? error.message : 'Unknown error occurred', From cdb9f55b14c303bf665119e858756932d5fb782c Mon Sep 17 00:00:00 2001 From: truehazker <40111175+truehazker@users.noreply.github.com> Date: Sun, 4 Jan 2026 13:22:04 +0400 Subject: [PATCH 3/3] docs: :sparkles: update demo video in readme --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 6007a60..07984d4 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ The fastest way to scaffold production-ready [ElysiaJS](https://elysiajs.com) projects with [Bun](https://bun.sh). -![Demo](https://github.com/user-attachments/assets/256757ca-92dd-49f3-ba8f-2dda62410aa7) +![Demo](https://github.com/user-attachments/assets/67386464-eb39-4b71-8b9b-34039e2861d0) ## Quick Start

4EbvE@qD!01WrLckr8mJi=h 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