ডকুমেন্টেশনকমান্ড এবং কনফিগারেশন

সিএলআই

বাইনারি হল nx (nexy হিসেবেও ইনস্টল করা হয়েছে)। uvx nexy new একটি প্রকল্প তৈরি করে (uvx uv এর সাথে আসে)। প্রজেক্টের ভার্চুয়াল এনভায়রনমেন্টের ভিতরে বা uv run এর মাধ্যমে অন্য প্রতিটি কমান্ড চালান, উদাহরণস্বরূপ uv run nexy dev: এখানেই আপনার নিজস্ব প্যাকেজ রয়েছে।

কমান্ড

আদেশ উপনাম এটা কি করে
nx dev nx d ডেভেলপমেন্ট সার্ভার: কম্পাইল অন পরিবর্তন, Vite, HMR
nx start nx s কম্পাইল করা আউটপুটে উৎপাদন সার্ভার
nx build nx b উত্পাদন নির্মাণ
nx new nx n একটি প্রকল্প ভারা
nx init nx i একটি বিদ্যমান প্রকল্পে Nexy যোগ করুন
nx add - রেজিস্ট্রি থেকে একটি UI উপাদান বা একটি URL যোগ করুন src/components/ui
nx migrate nx m Alembic বা Aerich দিয়ে ডাটাবেস মাইগ্রেশন তৈরি বা প্রয়োগ করুন
nx check nx c type-check: mypy on Python, tsc on TypeScript
nx format nx f বিন্যাস Python (রাফ), JS/TS (সুন্দর), .nexy ফাইল
nx test - চালান pytest; --client vitest যোগ করে
nx skills - কোডিং এজেন্টের জন্য দক্ষতা, AGENTS.md এবং CLAUDE.md যোগ করুন বা রিফ্রেশ করুন

পতাকা

আদেশ পতাকা ডিফল্ট
dev, start --port usePort, 3000
dev, start --host useHost, 0.0.0.0
build --check বন্ধ - বিল্ডের পরে রাফ এবং মাইপি চালায়
format --check বন্ধ - পুনর্লিখনের পরিবর্তে প্রতিবেদন
test --client বন্ধ - এছাড়াও একা pytest এর পরিবর্তে vitest চালান
test --no-server অন - আপনি যখন শুধুমাত্র ক্লায়েন্ট পরীক্ষা চান তখন pytest এড়িয়ে যান
new --template, -t none - প্রম্পট ছাড়া একটি নিবন্ধিত টেমপ্লেট ক্লোন করুন
new --no-agents এজেন্ট অন - স্কিপ AGENTS.md এবং এজেন্টের দক্ষতা
add --ui, --url বন্ধ - একটি রেজিস্ট্রি নাম বা URL যখন অস্পষ্ট হয় তখন জোর করে
add --all, -a বন্ধ - রেজিস্ট্রির প্রতিটি উপাদান যোগ করুন
add --sha256 কোনটিই - একটি দূরবর্তী উপাদানের প্রত্যাশিত ডাইজেস্ট; একটি অমিল বাতিল হয়
migrate --init বন্ধ - Alembic বা Aerich সেটআপ লিখুন
migrate --upgrade, -u বন্ধ - একটি নতুন লেখার পরিবর্তে মাইগ্রেশন প্রয়োগ করুন
migrate --message, -m খালি - নতুন সংশোধনের নাম

আউটপুট

দীর্ঘ পদক্ষেপ (প্যাকেজ ইনস্টল করা, কম্পাইল করা, বান্ডলিং) অতিবাহিত সময়ের সাথে একটি স্পিনার দেখান, তারপর একটি লাইন পিছনে রাখুন: ✔ uv sync .venv 1.4s। ধাপগুলির একটি গ্রুপ ( nx new এর ইনস্টলেশনগুলি সমাপ্ত পদক্ষেপগুলির সংখ্যা সহ একটি অগ্রগতি বার দেখায়, ━━━━──── 2/5; একটি একক ধাপ (nx add) একটি বার দেখায় যা চলার সময় স্পন্দিত হয়। ডেভ লগ রিকোয়েস্টের জন্য GET » /about 200 in 12ms এবং Vite এর জন্য vite » ... পড়ে। একটি ব্যর্থ পদক্ষেপ এটি লুকানোর পরিবর্তে কমান্ডের আউটপুটের শেষ লাইনগুলি মুদ্রণ করে। যেসব টার্মিনাল ইউনিকোড রেন্ডার করতে পারে না তারা + এবং x পায়।

nx dev রান করার সময় ত্রুটি

একটি ভাঙা ফাইল সংরক্ষণ করা সার্ভার বন্ধ করে না. একটি সিনট্যাক্স ত্রুটি সহ একটি .py ফাইলের ফাইল এবং লাইনের সাথে রিপোর্ট করা হয় এবং আপনি এটি ঠিক না করা পর্যন্ত সার্ভারটি শেষ কার্যকরী সংস্করণটি পরিবেশন করতে থাকে:

  nexy » error  src/routes/users.py:3  SyntaxError: invalid syntax     1 | import json    2 |  > 3 | def GET(:                ^    4 |     x = 1    5 |     return {"v": 2}   Fix it and save: the server keeps its last working version.

একটি ফাইল যা পার্স হয় কিন্তু ব্যর্থ হয় যখন অ্যাপ্লিকেশন লোড হয় (একটি অনুপস্থিত আমদানি, মডিউল স্তরে একটি ত্রুটি) একইভাবে রিপোর্ট করা হয় এবং nx dev আপনার পরবর্তী সংরক্ষণের জন্য অপেক্ষা করে; অ্যাপ্লিকেশন আবার লোড না হওয়া পর্যন্ত কিছুই পরিবেশন করা হয় না। সার্ভার পুনরায় লোড করার সময় একটি বৈধ সংরক্ষণ পড়ে nexy » update <file>। Markdown ফাইলগুলি src/routes এর বাইরে, যেমন README.md, পৃষ্ঠা নয় এবং কিছু ট্রিগার করে না। nx start কঠোর: এটি কোড 1 দিয়ে প্রস্থান করে, এবং রুট ফাইল লোড করতে না পারলে কিছুই শুরু হয় না।

nx new এর প্রশ্ন

nx new এই ক্রমে জিজ্ঞাসা করে: ফাইল-ভিত্তিক রাউটার, প্রকল্পের ধরন (ওয়েব বা API), ক্লায়েন্ট-সাইড রাউটিং, ক্লায়েন্ট ফ্রেমওয়ার্ক, অ্যাপটিকে কীভাবে স্টাইল করতে হয়, উপনাম আমদানি করতে হয়, ORM, ডাটাবেস এবং ডাটাবেস URL। প্রতিটি বিকল্পের একটি সংক্ষিপ্ত বিবরণ রয়েছে এবং বর্তমানটি হাইলাইট করা হয়েছে। যে প্রশ্নগুলি প্রযোজ্য নয় সেগুলি বাদ দেওয়া হয় (একটি API প্রকল্পের কোনও কাঠামো বা শৈলী নেই; কোনো ডেটাবেস বেছে নেওয়ার ফলে ORM ডাটাবেস এবং URL এড়িয়ে যায়)। তীর কী (বা j/k, বা একটি সংখ্যা দিয়ে সরান, enter দিয়ে নিশ্চিত করুন, ← বা esc দিয়ে পূর্ববর্তী প্রশ্নে ফিরে যান, ctrl+c দিয়ে প্রস্থান করুন।

প্রশ্ন পছন্দ
আমদানি উপনাম @ (@/components/... পয়েন্ট src/), বা অন্য উপসর্গ যেমন ~ বা #app
শৈলী Tailwind CSS, UnoCSS, ভ্যানিলা CSS, অন্যান্য (কোনও CSS টুল নয়, ভ্যানিলার মতো একই প্লেইন স্টাইলশীট)
ওআরএম SQLModel, SQLAlchemy, কচ্ছপ-ORM, কোন ডাটাবেস নেই
ডাটাবেস (একটি ORM সহ) SQLite, PostgreSQL, নিয়ন, মাইএসকিউএল / মারিয়াডিবি, অন্যান্য (আপনি URL টাইপ করেন)

নির্বাচিত ORM-এর জন্য ডাটাবেস ড্রাইভার এটির সাথে ইনস্টল করা হয় (psycopg, pymysql, asyncpg বা aiomysql), এবং URLটি .env-এ লেখা হয়।

প্যাকেজ ইনস্টল করার আগে, nx new সংযোগ পরীক্ষা করে। একটি ছাড়া, এটি ইনস্টলগুলি এড়িয়ে যায় এবং আপনাকে uv sync চালাতে এবং আপনার প্যাকেজ ম্যানেজারের পরে ইনস্টল করতে বলে। একটির সাথে, এটি লেটেন্সি এবং ডাউনলোডের গতি প্রিন্ট করে এবং সংযোগ ধীর হলে সতর্ক করে (400 ms এর বেশি, বা 100 KB/s এর কম)। প্রতিটি ইনস্টল লাইন টুলের নাম দেয় এবং এটি যে ফোল্ডারটি পূরণ করে, উদাহরণস্বরূপ pnpm install node_modules বা uv sync .venv।

কি dev, build এবং start তৈরি করে

তারা চালানোর আগে, তিনটি কমান্ড একটি খালি __init__.py তৈরি করে src/ এবং এর অধীনে প্রতিটি ফোল্ডারে যা একটি .py বা .nexy ফাইল ধারণ করে, তাই একটি রুট যেমন src/routes/users.py তাদের সবকটিতে একইভাবে আমদানি করে। বিদ্যমান ফাইলগুলিকে কখনই স্পর্শ করা হয় না, এবং আপনি যখন একটি ফোল্ডার যুক্ত করেন তখন nx dev আবার একই কাজ করে। Python বাইটকোড __nexy__/__pycache__ এ যায়, তাই আপনার উৎসের পাশে কোনো __pycache__ ফোল্ডার দেখা যায় না।

ভাষা

কমান্ড লাইন ইংরেজি, চীনা, হিন্দি, স্প্যানিশ, পর্তুগিজ, ফরাসি, জার্মান, জাপানি, রাশিয়ান, কোরিয়ান, ইন্দোনেশিয়ান এবং আরবি ভাষায় কথা বলে। এটি এইগুলির মধ্যে প্রথমটি ব্যবহার করে যা এটি সমর্থন করে:

  1. দ NEXY_LANG পরিবেশ পরিবর্তনশীল (NEXY_LANG=ja nx dev);
  2. আপনার শেলের লোকেল ভেরিয়েবল (LC_ALL, LC_MESSAGES, LANG, তারপর LANGUAGE);
  3. আপনার অপারেটিং সিস্টেমের ভাষা।

অন্য কিছু ইংরেজি, এবং তাই কোন বার্তা একটি ভাষা এখনও নেই. শুধুমাত্র যা nx প্রিন্ট করে তা অনুবাদ করা হয়: কম্পাইলার ত্রুটি, ট্রেসব্যাক এবং এটি চালানো সরঞ্জামগুলির আউটপুট যেমন আছে তেমনই থাকে। অনুবাদগুলি এখনও নেটিভ স্পিকারদের দ্বারা পর্যালোচনা করা হয়নি: সংশোধনগুলিকে nexy/modules/i18n/<language>.json-এ পুল অনুরোধ হিসাবে স্বাগত জানানো হয়।

আচরণ গড়ে তুলুন

nx build রুটগুলি কম্পাইল করে, তারপর যখন useVite চালু থাকে তখন ক্লায়েন্টকে বান্ডিল করে।

নেক্সিতে নিজেই কাজ করছেন

এই সংগ্রহস্থলের ভিতরে গেটগুলি হল:

python scripts/verify.py             # lint, format, typecheck, testspython scripts/audit_dependencies.py # supply-chain audit against the lock

পরবর্তী পদক্ষেপ

GitHub-এ সম্পাদনা করুন

Enter ফলাফল খোলে, Esc বন্ধ করে।