{ "name": "manacore-monorepo", "version": "1.0.0", "private": true, "type": "module", "description": "Manacore Monorepo containing manacore, manadeck, picture, chat, zitare, and presi", "scripts": { "dev": "turbo run dev", "build": "turbo run build", "test": "turbo run test", "lint": "turbo run lint", "lint:root": "eslint . --cache", "lint:fix": "eslint . --fix --cache", "type-check": "turbo run type-check --filter='./apps/**' --filter='./packages/**' --filter='./services/**'", "type-check:all": "turbo run type-check", "clean": "turbo run clean", "format": "prettier --config .prettierrc.json --write \"**/*.{ts,tsx,js,jsx,json,md,svelte,astro}\"", "format:check": "prettier --config .prettierrc.json --check \"**/*.{ts,tsx,js,jsx,json,md,svelte,astro}\"", "setup:env": "node scripts/generate-env.mjs", "setup:db": "./scripts/setup-databases.sh", "setup:db:chat": "./scripts/setup-databases.sh chat", "setup:db:auth": "./scripts/setup-databases.sh auth", "seed:dev-user": "pnpm --filter mana-core-auth db:seed:dev", "build:packages": "pnpm --filter '@manacore/*' build", "postinstall": "node scripts/generate-env.mjs || true && pnpm run build:packages || true", "manacore:dev": "turbo run dev --filter=manacore...", "manadeck:dev": "turbo run dev --filter=manadeck...", "picture:dev": "turbo run dev --filter=picture...", "chat:dev": "turbo run dev --filter=chat...", "dev:manacore:web": "pnpm --filter @manacore/web dev", "dev:manacore:landing": "pnpm --filter @manacore/landing dev", "dev:manacore:mobile": "pnpm --filter @manacore/mobile dev", "dev:manacore:app": "pnpm --filter @manacore/web dev", "dev:manacore:backends": "concurrently -n auth,chat,calendar,contacts,todo,zitare,picture,manadeck,clock -c blue,green,yellow,magenta,cyan,red,white,gray,orange \"pnpm dev:auth\" \"pnpm dev:chat:backend\" \"pnpm dev:calendar:backend\" \"pnpm dev:contacts:backend\" \"pnpm dev:todo:backend\" \"pnpm dev:zitare:backend\" \"pnpm dev:picture:backend\" \"pnpm dev:manadeck:backend\" \"pnpm dev:clock:backend\"", "dev:manacore:full": "concurrently -n web,backends -c cyan,yellow \"pnpm dev:manacore:web\" \"pnpm dev:manacore:backends\"", "dev:manadeck:web": "pnpm --filter @manadeck/web dev", "dev:manadeck:landing": "pnpm --filter @manadeck/landing dev", "dev:manadeck:backend": "pnpm --filter @manadeck/backend dev", "dev:manadeck:mobile": "pnpm --filter @manadeck/mobile dev", "dev:manadeck:app": "turbo run dev --filter=@manadeck/web --filter=@manadeck/backend", "dev:picture:web": "pnpm --filter @picture/web dev", "dev:picture:landing": "pnpm --filter @picture/landing dev", "dev:picture:mobile": "pnpm --filter @picture/mobile dev", "dev:picture:backend": "pnpm --filter @picture/backend dev", "dev:picture:app": "turbo run dev --filter=@picture/web --filter=@picture/backend", "dev:picture:full": "./scripts/setup-databases.sh picture && ./scripts/setup-databases.sh auth && concurrently -n auth,backend,web -c blue,green,cyan \"pnpm dev:auth\" \"pnpm dev:picture:backend\" \"pnpm dev:picture:web\"", "dev:chat:mobile": "pnpm --filter @chat/mobile dev", "dev:chat:web": "pnpm --filter @chat/web dev", "dev:chat:landing": "pnpm --filter @chat/landing dev", "dev:chat:backend": "pnpm --filter @chat/backend start:dev", "dev:chat:app": "turbo run dev --filter=@chat/web --filter=@chat/backend", "dev:auth": "pnpm --filter mana-core-auth start:dev", "dev:chat:full": "./scripts/setup-databases.sh chat && ./scripts/setup-databases.sh auth && concurrently -n auth,backend,web -c blue,green,cyan \"pnpm dev:auth\" \"pnpm dev:chat:backend\" \"pnpm dev:chat:web\"", "zitare:dev": "turbo run dev --filter=zitare...", "dev:zitare:mobile": "pnpm --filter @zitare/mobile dev", "dev:zitare:web": "pnpm --filter @zitare/web dev", "dev:zitare:landing": "pnpm --filter @zitare/landing dev", "dev:zitare:backend": "pnpm --filter @zitare/backend dev", "dev:zitare:app": "turbo run dev --filter=@zitare/web --filter=@zitare/backend", "dev:zitare:full": "./scripts/setup-databases.sh zitare && ./scripts/setup-databases.sh auth && concurrently -n auth,backend,web -c blue,green,cyan \"pnpm dev:auth\" \"pnpm dev:zitare:backend\" \"pnpm dev:zitare:web\"", "contacts:dev": "turbo run dev --filter=contacts...", "dev:contacts:mobile": "pnpm --filter @contacts/mobile dev", "dev:contacts:web": "pnpm --filter @contacts/web dev", "dev:contacts:landing": "pnpm --filter @contacts/landing dev", "dev:contacts:backend": "pnpm --filter @contacts/backend dev", "dev:contacts:app": "turbo run dev --filter=@contacts/web --filter=@contacts/backend", "dev:contacts:full": "./scripts/setup-databases.sh contacts && ./scripts/setup-databases.sh auth && pnpm contacts:db:seed && concurrently -n auth,backend,web -c blue,green,cyan \"pnpm dev:auth\" \"pnpm dev:contacts:backend\" \"pnpm dev:contacts:web\"", "contacts:db:push": "pnpm --filter @contacts/backend db:push", "contacts:db:studio": "pnpm --filter @contacts/backend db:studio", "contacts:db:seed": "pnpm --filter @contacts/backend db:seed", "calendar:dev": "turbo run dev --filter=calendar...", "dev:calendar:mobile": "pnpm --filter @calendar/mobile dev", "dev:calendar:web": "pnpm --filter @calendar/web dev", "dev:calendar:landing": "pnpm --filter @calendar/landing dev", "dev:calendar:backend": "pnpm --filter @calendar/backend dev", "dev:calendar:app": "turbo run dev --filter=@calendar/web --filter=@calendar/backend", "dev:calendar:full": "./scripts/setup-databases.sh calendar && ./scripts/setup-databases.sh auth && concurrently -n auth,backend,web -c blue,green,cyan \"pnpm dev:auth\" \"pnpm dev:calendar:backend\" \"pnpm dev:calendar:web\"", "calendar:db:push": "pnpm --filter @calendar/backend db:push", "calendar:db:studio": "pnpm --filter @calendar/backend db:studio", "calendar:db:seed": "pnpm --filter @calendar/backend db:seed", "clock:dev": "turbo run dev --filter=clock...", "dev:clock:web": "pnpm --filter @clock/web dev", "dev:clock:landing": "pnpm --filter @clock/landing dev", "dev:clock:backend": "pnpm --filter @clock/backend dev", "dev:clock:app": "turbo run dev --filter=@clock/web --filter=@clock/backend", "dev:clock:full": "./scripts/setup-databases.sh clock && ./scripts/setup-databases.sh auth && concurrently -n auth,backend,web -c blue,green,cyan \"pnpm dev:auth\" \"pnpm dev:clock:backend\" \"pnpm dev:clock:web\"", "clock:db:push": "pnpm --filter @clock/backend db:push", "clock:db:studio": "pnpm --filter @clock/backend db:studio", "clock:db:seed": "pnpm --filter @clock/backend db:seed", "mail:dev": "turbo run dev --filter=mail...", "dev:mail:mobile": "pnpm --filter @mail/mobile dev", "dev:mail:web": "pnpm --filter @mail/web dev", "dev:mail:landing": "pnpm --filter @mail/landing dev", "dev:mail:backend": "pnpm --filter @mail/backend dev", "dev:mail:app": "turbo run dev --filter=@mail/web --filter=@mail/backend", "mail:db:push": "pnpm --filter @mail/backend db:push", "mail:db:studio": "pnpm --filter @mail/backend db:studio", "mail:db:seed": "pnpm --filter @mail/backend db:seed", "todo:dev": "turbo run dev --filter=todo...", "dev:todo:web": "pnpm --filter @todo/web dev", "dev:todo:landing": "pnpm --filter @todo/landing dev", "dev:todo:backend": "pnpm --filter @todo/backend dev", "dev:todo:app": "turbo run dev --filter=@todo/web --filter=@todo/backend", "dev:todo:full": "./scripts/setup-databases.sh todo && ./scripts/setup-databases.sh auth && concurrently -n auth,backend,web -c blue,green,cyan \"pnpm dev:auth\" \"pnpm dev:todo:backend\" \"pnpm dev:todo:web\"", "todo:db:push": "pnpm --filter @todo/backend db:push", "todo:db:studio": "pnpm --filter @todo/backend db:studio", "todo:db:seed": "pnpm --filter @todo/backend db:seed", "dev:tags-test": "./scripts/setup-databases.sh todo && ./scripts/setup-databases.sh calendar && ./scripts/setup-databases.sh contacts && ./scripts/setup-databases.sh auth && concurrently -n auth,todo-be,todo-web,cal-be,cal-web,con-be,con-web -c blue,green,cyan,yellow,magenta,red,white \"pnpm dev:auth\" \"pnpm dev:todo:backend\" \"pnpm dev:todo:web\" \"pnpm dev:calendar:backend\" \"pnpm dev:calendar:web\" \"pnpm dev:contacts:backend\" \"pnpm dev:contacts:web\"", "moodlit:dev": "turbo run dev --filter=moodlit...", "dev:moodlit:mobile": "pnpm --filter @moodlit/mobile dev", "dev:moodlit:web": "pnpm --filter @moodlit/web dev", "dev:moodlit:landing": "pnpm --filter @moodlit/landing dev", "dev:moodlit:backend": "pnpm --filter @moodlit/backend dev", "dev:moodlit:app": "turbo run dev --filter=@moodlit/web --filter=@moodlit/backend", "moodlit:db:push": "pnpm --filter @moodlit/backend db:push", "moodlit:db:studio": "pnpm --filter @moodlit/backend db:studio", "moodlit:db:seed": "pnpm --filter @moodlit/backend db:seed", "finance:dev": "turbo run dev --filter=finance...", "dev:finance:web": "pnpm --filter @finance/web dev", "dev:finance:mobile": "pnpm --filter @finance/mobile dev", "dev:finance:landing": "pnpm --filter @finance/landing dev", "dev:finance:backend": "pnpm --filter @finance/backend dev", "dev:finance:app": "turbo run dev --filter=@finance/web --filter=@finance/backend", "finance:db:push": "pnpm --filter @finance/backend db:push", "finance:db:studio": "pnpm --filter @finance/backend db:studio", "finance:db:seed": "pnpm --filter @finance/backend db:seed", "voxel-lava:dev": "turbo run dev --filter=@voxel-lava/web --filter=@voxel-lava/backend", "dev:voxel-lava:web": "pnpm --filter @voxel-lava/web dev", "dev:voxel-lava:backend": "pnpm --filter @voxel-lava/backend start:dev", "dev:voxel-lava:app": "turbo run dev --filter=@voxel-lava/web --filter=@voxel-lava/backend", "voxel-lava:db:push": "pnpm --filter @voxel-lava/backend db:push", "voxel-lava:db:studio": "pnpm --filter @voxel-lava/backend db:studio", "mana-games:dev": "turbo run dev --filter=mana-games...", "dev:mana-games:web": "pnpm --filter @mana-games/web dev", "dev:mana-games:backend": "pnpm --filter @mana-games/backend dev", "dev:mana-games:app": "turbo run dev --filter=@mana-games/web --filter=@mana-games/backend", "figgos:dev": "turbo run dev --filter=figgos...", "dev:figgos:mobile": "pnpm --filter @figgos/mobile dev", "dev:figgos:web": "pnpm --filter @figgos/web dev", "dev:figgos:backend": "pnpm --filter @figgos/backend dev", "dev:figgos:app": "turbo run dev --filter=@figgos/web --filter=@figgos/backend", "dev:figgos:ios": "pnpm --filter @figgos/mobile ios", "dev:figgos:android": "pnpm --filter @figgos/mobile android", "figgos:db:push": "pnpm --filter @figgos/backend db:push", "figgos:db:studio": "pnpm --filter @figgos/backend db:studio", "worldream:dev": "turbo run dev --filter=worldream...", "dev:worldream:web": "pnpm --filter @worldream/web dev", "context:dev": "turbo run dev --filter=context...", "dev:context:mobile": "pnpm --filter @context/mobile dev", "planta:dev": "turbo run dev --filter=planta...", "dev:planta:web": "pnpm --filter @planta/web dev", "dev:planta:backend": "pnpm --filter @planta/backend dev", "dev:planta:app": "turbo run dev --filter=@planta/web --filter=@planta/backend", "dev:planta:full": "./scripts/setup-databases.sh planta && ./scripts/setup-databases.sh auth && concurrently -n auth,backend,web -c blue,green,cyan \"pnpm dev:auth\" \"pnpm dev:planta:backend\" \"pnpm dev:planta:web\"", "planta:db:push": "pnpm --filter @planta/backend db:push", "planta:db:studio": "pnpm --filter @planta/backend db:studio", "planta:db:seed": "pnpm --filter @planta/backend db:seed", "nutriphi:dev": "turbo run dev --filter=nutriphi...", "dev:nutriphi:web": "pnpm --filter @nutriphi/web dev", "dev:nutriphi:landing": "pnpm --filter @nutriphi/landing dev", "dev:nutriphi:backend": "pnpm --filter @nutriphi/backend dev", "dev:nutriphi:app": "turbo run dev --filter=@nutriphi/web --filter=@nutriphi/backend", "dev:nutriphi:full": "./scripts/setup-databases.sh nutriphi && ./scripts/setup-databases.sh auth && concurrently -n auth,backend,web -c blue,green,cyan \"pnpm dev:auth\" \"pnpm dev:nutriphi:backend\" \"pnpm dev:nutriphi:web\"", "nutriphi:db:push": "pnpm --filter @nutriphi/backend db:push", "nutriphi:db:studio": "pnpm --filter @nutriphi/backend db:studio", "nutriphi:db:seed": "pnpm --filter @nutriphi/backend db:seed", "deploy:landing:nutriphi": "pnpm --filter @nutriphi/landing build && npx wrangler pages deploy apps/nutriphi/apps/landing/dist --project-name=nutriphi-landing", "presi:dev": "turbo run dev --filter=presi...", "dev:presi:web": "pnpm --filter @presi/web dev", "dev:presi:landing": "pnpm --filter @presi/landing dev", "dev:presi:mobile": "pnpm --filter @presi/mobile dev", "dev:presi:backend": "pnpm --filter @presi/backend dev", "dev:presi:app": "turbo run dev --filter=@presi/web --filter=@presi/backend", "dev:presi:full": "./scripts/setup-databases.sh presi && ./scripts/setup-databases.sh auth && concurrently -n auth,backend,web -c blue,green,cyan \"pnpm dev:auth\" \"pnpm dev:presi:backend\" \"pnpm dev:presi:web\"", "presi:db:push": "pnpm --filter @presi/backend db:push", "presi:db:studio": "pnpm --filter @presi/backend db:studio", "presi:db:seed": "pnpm --filter @presi/backend db:seed", "storage:dev": "turbo run dev --filter=storage...", "dev:storage:web": "pnpm --filter @storage/web dev", "dev:storage:backend": "pnpm --filter @storage/backend dev", "dev:storage:app": "turbo run dev --filter=@storage/web --filter=@storage/backend", "dev:storage:full": "./scripts/setup-databases.sh storage && ./scripts/setup-databases.sh auth && concurrently -n auth,backend,web -c blue,green,cyan \"pnpm dev:auth\" \"pnpm dev:storage:backend\" \"pnpm dev:storage:web\"", "storage:db:push": "pnpm --filter @storage/backend db:push", "storage:db:studio": "pnpm --filter @storage/backend db:studio", "storage:db:seed": "pnpm --filter @storage/backend db:seed", "docker:up": "docker compose -f docker-compose.dev.yml --env-file .env.development up -d postgres redis minio minio-init", "docker:up:infra": "docker compose -f docker-compose.dev.yml --env-file .env.development up -d postgres redis minio minio-init", "docker:up:db": "docker compose -f docker-compose.dev.yml --env-file .env.development up -d postgres redis", "docker:up:auth": "docker compose -f docker-compose.dev.yml --env-file .env.development --profile auth up -d", "docker:up:chat": "docker compose -f docker-compose.dev.yml --env-file .env.development --profile chat up -d", "docker:up:all": "docker compose -f docker-compose.dev.yml --env-file .env.development --profile all up -d", "docker:down": "docker compose -f docker-compose.dev.yml --env-file .env.development --profile all down", "docker:logs": "docker compose -f docker-compose.dev.yml --env-file .env.development logs -f", "docker:logs:auth": "docker compose -f docker-compose.dev.yml --env-file .env.development logs -f mana-core-auth", "docker:logs:chat": "docker compose -f docker-compose.dev.yml --env-file .env.development logs -f chat-backend", "docker:ps": "docker compose -f docker-compose.dev.yml --env-file .env.development ps -a", "docker:clean": "docker compose -f docker-compose.dev.yml --env-file .env.development --profile all down -v", "deploy:landing:todo": "pnpm --filter @todo/landing build && npx wrangler pages deploy apps/todo/apps/landing/dist --project-name=todo-landing", "deploy:landing:calendar": "pnpm --filter @calendar/landing build && npx wrangler pages deploy apps/calendar/apps/landing/dist --project-name=calendars-landing", "deploy:landing:chat": "pnpm --filter @chat/landing build && npx wrangler pages deploy apps/chat/apps/landing/dist --project-name=chat-landing", "deploy:landing:picture": "pnpm --filter @picture/landing build && npx wrangler pages deploy apps/picture/apps/landing/dist --project-name=picture-landing", "deploy:landing:manacore": "pnpm --filter @manacore/landing build && npx wrangler pages deploy apps/manacore/apps/landing/dist --project-name=manacore-landing", "deploy:landing:manadeck": "pnpm --filter @manadeck/landing build && npx wrangler pages deploy apps/manadeck/apps/landing/dist --project-name=manadeck-landing", "deploy:landing:zitare": "pnpm --filter @zitare/landing build && npx wrangler pages deploy apps/zitare/apps/landing/dist --project-name=zitare-landing", "deploy:landing:presi": "pnpm --filter @presi/landing build && npx wrangler pages deploy apps/presi/apps/landing/dist --project-name=presi-landing", "deploy:landing:clock": "pnpm --filter @clock/landing build && npx wrangler pages deploy apps/clock/apps/landing/dist --project-name=clocks-landing", "deploy:landing:mail": "pnpm --filter @mail/landing build && npx wrangler pages deploy apps/mail/apps/landing/dist --project-name=mail-landing", "deploy:landing:moodlit": "pnpm --filter @moodlit/landing build && npx wrangler pages deploy apps/moodlit/apps/landing/dist --project-name=moodlit-landing", "deploy:landing:all": "pnpm deploy:landing:calendar && pnpm deploy:landing:chat && pnpm deploy:landing:picture && pnpm deploy:landing:manacore && pnpm deploy:landing:manadeck && pnpm deploy:landing:zitare && pnpm deploy:landing:presi && pnpm deploy:landing:clock && pnpm deploy:landing:mail && pnpm deploy:landing:nutriphi", "cf:login": "npx wrangler login", "cf:projects:list": "npx wrangler pages project list", "cf:projects:create": "echo 'Creating Cloudflare Pages projects...' && npx wrangler pages project create chat-landing --production-branch=main && npx wrangler pages project create picture-landing --production-branch=main && npx wrangler pages project create manacore-landing --production-branch=main && npx wrangler pages project create manadeck-landing --production-branch=main && npx wrangler pages project create zitare-landing --production-branch=main", "dev:search": "pnpm --filter @manacore/mana-search dev", "dev:search:docker": "docker-compose -f services/mana-search/docker-compose.dev.yml up -d", "dev:search:docker:down": "docker-compose -f services/mana-search/docker-compose.dev.yml down", "dev:search:docker:logs": "docker-compose -f services/mana-search/docker-compose.dev.yml logs -f", "dev:search:full": "docker-compose -f services/mana-search/docker-compose.dev.yml up -d && pnpm --filter @manacore/mana-search dev", "search:docker:up": "docker-compose -f services/mana-search/docker-compose.yml up -d", "search:docker:down": "docker-compose -f services/mana-search/docker-compose.yml down", "search:docker:logs": "docker-compose -f services/mana-search/docker-compose.yml logs -f", "questions:dev": "turbo run dev --filter=questions...", "dev:questions:backend": "pnpm --filter @questions/backend dev", "dev:questions:web": "pnpm --filter @questions/web dev", "dev:questions:app": "turbo run dev --filter=@questions/web --filter=@questions/backend", "dev:questions:full": "./scripts/setup-databases.sh questions && ./scripts/setup-databases.sh auth && pnpm dev:search:docker && concurrently -n auth,search,backend -c blue,yellow,green \"pnpm dev:auth\" \"pnpm dev:search\" \"pnpm dev:questions:backend\"", "questions:db:push": "pnpm --filter @questions/backend db:push", "questions:db:studio": "pnpm --filter @questions/backend db:studio", "dev:projectdoc": "pnpm --filter @manacore/telegram-project-doc-bot start:dev", "dev:projectdoc:full": "./scripts/setup-databases.sh projectdoc && pnpm dev:projectdoc", "projectdoc:db:push": "pnpm --filter @manacore/telegram-project-doc-bot db:push", "projectdoc:db:studio": "pnpm --filter @manacore/telegram-project-doc-bot db:studio", "dev:zitare-bot": "pnpm --filter @manacore/telegram-zitare-bot start:dev", "dev:zitare-bot:full": "./scripts/setup-databases.sh zitare_bot && pnpm dev:zitare-bot", "zitare-bot:db:push": "pnpm --filter @manacore/telegram-zitare-bot db:push", "zitare-bot:db:studio": "pnpm --filter @manacore/telegram-zitare-bot db:studio", "dev:todo-bot": "pnpm --filter @manacore/telegram-todo-bot start:dev", "dev:todo-bot:full": "./scripts/setup-databases.sh todo_bot && ./scripts/setup-databases.sh todo && ./scripts/setup-databases.sh auth && concurrently -n auth,todo-be,bot -c blue,green,cyan \"pnpm dev:auth\" \"pnpm dev:todo:backend\" \"pnpm dev:todo-bot\"", "todo-bot:db:push": "pnpm --filter @manacore/telegram-todo-bot db:push", "todo-bot:db:studio": "pnpm --filter @manacore/telegram-todo-bot db:studio", "dev:nutriphi-bot": "pnpm --filter @manacore/telegram-nutriphi-bot start:dev", "dev:nutriphi-bot:full": "./scripts/setup-databases.sh nutriphi_bot && pnpm dev:nutriphi-bot", "nutriphi-bot:db:push": "pnpm --filter @manacore/telegram-nutriphi-bot db:push", "nutriphi-bot:db:studio": "pnpm --filter @manacore/telegram-nutriphi-bot db:studio", "prepare": "husky" }, "devDependencies": { "@eslint/js": "^9.39.1", "concurrently": "^9.2.0", "eslint": "^9.39.1", "eslint-config-prettier": "^10.1.8", "eslint-plugin-prettier": "^5.5.4", "globals": "^16.5.0", "husky": "^9.1.7", "lint-staged": "^16.2.7", "prettier": "^3.3.3", "prettier-plugin-astro": "^0.14.1", "prettier-plugin-svelte": "^3.4.0", "turbo": "^2.3.0", "typescript": "^5.9.3", "typescript-eslint": "^8.48.1", "wrangler": "^4.51.0" }, "engines": { "node": ">=18.0.0" }, "packageManager": "pnpm@9.15.0", "pnpm": { "peerDependencyRules": { "allowedVersions": { "@mana-core/nestjs-integration>@nestjs/common": "^11.0.0", "@mana-core/nestjs-integration>@nestjs/core": "^11.0.0", "react-native>react": ">=18.0.0", "react-native>@types/react": ">=18.0.0", "@sveltejs/vite-plugin-svelte>vite": ">=6.0.0", "@sveltejs/vite-plugin-svelte-inspector>vite": ">=6.0.0" } } } }