Loading...
Loading...
Compare original and translation side by side
{
"scripts": {
"dev": "next dev --turbo",
"build": "next build",
"start": "next start",
"lint": "eslint . --fix",
"format": "prettier --write .",
"typecheck": "tsc --noEmit",
"test": "vitest",
"test:watch": "vitest --watch",
"test:coverage": "vitest --coverage",
"prepare": "husky",
"validate": "npm run typecheck && npm run lint && npm run test"
}
}{
"scripts": {
"dev": "next dev --turbo",
"build": "next build",
"start": "next start",
"lint": "eslint . --fix",
"format": "prettier --write .",
"typecheck": "tsc --noEmit",
"test": "vitest",
"test:watch": "vitest --watch",
"test:coverage": "vitest --coverage",
"prepare": "husky",
"validate": "npm run typecheck && npm run lint && npm run test"
}
}// package.json
{
"lint-staged": {
"*.{js,ts,tsx}": ["eslint --fix", "prettier --write"],
"*.{json,md,yml}": ["prettier --write"]
}
}undefined// package.json
{
"lint-staged": {
"*.{js,ts,tsx}": ["eslint --fix", "prettier --write"],
"*.{json,md,yml}": ["prettier --write"]
}
}undefinedundefinedundefined// .vscode/settings.json
{
"editor.formatOnSave": true,
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit"
},
"typescript.preferences.importModuleSpecifier": "relative",
"files.associations": {
"*.css": "tailwindcss"
}
}// .vscode/extensions.json
{
"recommendations": [
"dbaeumer.vscode-eslint",
"esbenp.prettier-vscode",
"bradlc.vscode-tailwindcss",
"ms-vscode.vscode-typescript-next"
]
}// .vscode/settings.json
{
"editor.formatOnSave": true,
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit"
},
"typescript.preferences.importModuleSpecifier": "relative",
"files.associations": {
"*.css": "tailwindcss"
}
}// .vscode/extensions.json
{
"recommendations": [
"dbaeumer.vscode-eslint",
"esbenp.prettier-vscode",
"bradlc.vscode-tailwindcss",
"ms-vscode.vscode-typescript-next"
]
}.PHONY: help dev build test clean
help: ## Show this help
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-15s\033[0m %s\n", $$1, $$2}'
dev: ## Start development server
npm run dev
build: ## Build for production
npm run build
test: ## Run tests
npm run test
lint: ## Run linter
npm run lint
clean: ## Clean build artifacts
rm -rf .next node_modules/.cache
setup: ## Initial project setup
npm install
cp .env.example .env.local
@echo "Setup complete! Run 'make dev' to start.".PHONY: help dev build test clean
help: ## Show this help
@grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-15s\033[0m %s\n", $$1, $$2}'
dev: ## Start development server
npm run dev
build: ## Build for production
npm run build
test: ## Run tests
npm run test
lint: ## Run linter
npm run lint
clean: ## Clean build artifacts
rm -rf .next node_modules/.cache
setup: ## Initial project setup
npm install
cp .env.example .env.local
@echo "Setup complete! Run 'make dev' to start."undefinedundefinedundefinedundefinedmake setupmake setup