Oracle APEX App Development with Claude Code

Disclaimer: I have not written any part of this post myself. I am sharing it solely for future reference and in the hope that it may be helpful to others as well. All credit belongs to the claude code. Image Credit Jon Dixon, Cloud Nueva.

Oracle APEX 26.1-এ Claude Code দিয়ে অ্যাপ বানানোর নতুন পদ্ধতিটি APEXlang-এর উপর ভিত্তি করে। নিচে ধাপে ধাপে পুরো প্রক্রিয়াটি দেওয়া হলো।

আগে মূল ধারণাটি বুঝে নিন

APEX 26.1-এর কেন্দ্রে আছে APEXlang। এটি একটি অ্যাপ্লিকেশন ডেফিনিশন ল্যাঙ্গুয়েজ, যেখানে পেজ, নেভিগেশন, ফর্ম, রিপোর্ট, ড্যাশবোর্ড ও বিজনেস লজিক একটি কাঠামোবদ্ধ ও মানুষের পড়ার উপযোগী ডিক্লারেটিভ ফরম্যাটে লেখা থাকে। একটি APEX অ্যাপ কয়েকটি .apx টেক্সট ফাইলের প্যাকেজ হিসেবে থাকে।

অর্থাৎ Claude Code হাজার লাইনের কোড লেখে না। সে এই .apx ফাইলগুলো তৈরি বা পরিবর্তন করে, তারপর আপনি সেগুলো APEX-এ ইমপোর্ট করেন। APEXlang-এর সিনট্যাক্স না জেনেও সাধারণ ভাষায় নির্দেশ দিয়ে কাজ করা যায়।

ধাপ ১: যা যা লাগবে

  • APEX 26.1 ইনস্টল করা একটি Oracle Database। Oracle Cloud Free Tier-এর Autonomous Database সবচেয়ে সহজ পথ। নিজের মেশিনে বা সার্ভারে ইনস্টলও করা যায়।
  • VS Code
  • Claude সাবস্ক্রিপশন (Pro বা Max), যাতে Claude Code ব্যবহার করা যায়।

Oracle-এর অফিসিয়াল গাইডে এই তিনটিই পূর্বশর্ত হিসেবে দেওয়া আছে।

ধাপ ২: VS Code-এ প্রজেক্ট ফোল্ডার খুলুন

একটি ফোল্ডার তৈরি করুন, যেমন APEX_APPS। তারপর VS Code-এ File → Open Folder দিয়ে সেটি খুলুন। আপনার সব APEXlang ফাইল এখানেই থাকবে। শুরুতেই এখানে git init করে নিন, যাতে AI-এর প্রতিটি পরিবর্তন দেখা যায় এবং দরকার হলে আগের অবস্থায় ফেরা যায়।

ধাপ ৩: Oracle SQL Developer এক্সটেনশন ও ডাটাবেস কানেকশন

  1. VS Code-এর Extensions-এ গিয়ে Oracle SQL Developer for VSCode ইনস্টল করুন।
  2. SQL Developer প্যানেল থেকে নতুন কানেকশন তৈরি করুন। নাম, ইউজারনেম, পাসওয়ার্ড, হোস্ট, পোর্ট ও সার্ভিস নেম দিয়ে Test এবং Connect চাপুন।

এই এক্সটেনশন দিয়ে ডাটাবেসে সংযোগ, স্কিমা ব্রাউজ, SQL চালানো এবং APEX অ্যাপ ইমপোর্ট/এক্সপোর্ট সবই করা যায়। এক্সটেনশনের Auto Update চালু রাখুন।

ধাপ ৪: Claude Code ইনস্টল ও সাইন ইন

  1. Extensions-এ Claude Code খুঁজে ইনস্টল করুন।
  2. Claude Code প্যানেল খুলে Sign In চাপুন। ব্রাউজারে লগইন শেষ করে VS Code-এ ফিরে আসুন।
  3. আপনার অ্যাকাউন্টে থাকা সবচেয়ে সক্ষম মডেলটি বেছে নিন।

জটিল কাজের জন্য, যেমন স্কিমা বুঝে পরিবর্তন বা অ্যাপ বিশ্লেষণ, Oracle বেশি reasoning/effort লেভেল ব্যবহারের পরামর্শ দেয়।

ধাপ ৫: APEXlang Skills ইনস্টল করুন (সবচেয়ে গুরুত্বপূর্ণ ধাপ)

এই skills থেকেই Claude APEXlang-এর নিয়ম, কাঠামো আর best practice শেখে।

  1. SQL Developer-এ আপনার কানেকশনে রাইট-ক্লিক করে Open SQLcl চাপুন।
  2. এই কমান্ডটি চালান: skills sync -skill-name apex,db
  3. ঠিকমতো ইনস্টল হয়েছে কিনা দেখতে চালান: skills list

চাইলে Oracle-এর GitHub skills রিপোজিটরি থেকে ম্যানুয়ালি ডাউনলোড করে .claude/skills ফোল্ডারে কপি করতে পারেন। নতুন আপডেট পেতে যেকোনো সময় আবার skills sync চালাতে পারেন।

ধাপ ৬: Claude-কে SQLcl-এর কথা জানিয়ে দিন

~/.claude/CLAUDE.md ফাইলটি খুলুন (Windows-এ C:\Users\<আপনার-ইউজার>\.claude\CLAUDE.md)। না থাকলে তৈরি করে নিচের অংশটি যোগ করুন:

## Database Tooling
Use Local SQLcl CLI for Oracle Database-related tasks.
SQLcl executable: <path-to-sqlcl>
Before performing database-related tasks:
- Verify that SQLcl is available.
- Use SQLcl for schema inspection, SQL execution, metadata generation, and APEX development workflows.
- Do not store passwords or connection credentials in project files.

SQLcl আলাদা করে ইনস্টল করার দরকার নেই, SQL Developer এক্সটেনশনের সাথেই আসে। সাধারণত এটি থাকে এই পাথে: Windows-এ C:\Users\<user-id>\.vscode\extensions\oracle.sql-developer-<version>\dbtools\sqlcl\bin\sql.exe, আর macOS/Linux-এ ~/.vscode/extensions/oracle.sql-developer-<version>/dbtools/sqlcl/bin/sql।

বিকল্প (প্রস্তাবিত): SQLcl-কে MCP সার্ভার হিসেবে যুক্ত করুন। এতে Claude সরাসরি আপনার টেবিল, কলাম ও সম্পর্কগুলো দেখে কাজ করতে পারে। VS Code টার্মিনালে চালান:

claude mcp add --transport stdio --scope user sqlcl -- <path-to-sqlcl>/bin/sql -mcp

Windows-এ শেষে sql.exe দিন। তারপর VS Code রিস্টার্ট করুন।

ধাপ ৭: একটি শুরুর অ্যাপ তৈরি ও ইমপোর্ট করুন

প্র্যাকটিসের জন্য প্রথমে APEX ওয়ার্কস্পেসে SQL Workshop → Utilities → Sample Datasets থেকে EMP/DEPT ডেটাসেট ইনস্টল করে নিন। তারপর:

  1. SQL Developer-এ আপনার স্কিমার APEX ফোল্ডারে রাইট-ক্লিক করে Generate চাপুন।
  2. অ্যাপের নাম (যেমন Employee Portal), Alias (যেমন EMPLOYEE_PORTAL) এবং Target Path হিসেবে আপনার প্রজেক্ট ফোল্ডার দিন। তারপর Apply চাপুন।
  3. তৈরি হওয়া ফোল্ডারের যেকোনো ফাইল খুলে এডিটরের ডান-উপরের Import Application বাটনে চাপুন।
  4. APEX-এ গিয়ে অ্যাপটি রান করে দেখুন।

ধাপ ৮: Claude Code দিয়ে অ্যাপ বড় করুন

এখন Claude Code প্যানেলে সাধারণ ভাষায় নির্দেশ দিন। Oracle-এর উদাহরণ প্রম্পটটি এরকম:

Create an Employee Directory page with Faceted Search and Content Row results showing department as overline, employee name as title, and only location plus hire date in the description with those labels emphasised. Use an extra-small avatar icon and place a medium, rounded, subtle Job badge on the right.

Claude .apx ফাইলগুলো পরিবর্তন করবে। পরিবর্তনগুলো রিভিউ করে Accept করুন, তারপর ধাপ ৭-এর মতো আবার Import Application করে অ্যাপ রান করুন।

আরও কিছু প্রম্পটের ধারণা: অগ্রাধিকার অনুযায়ী অ্যাসাইনমেন্টের চার্ট যোগ করা, অ্যাপ অন্য ভাষায় অনুবাদ করা, কাস্টমারের অর্ডার নিয়ে প্রশ্নের উত্তর দিতে AI এজেন্ট যোগ করা, কিংবা সব “Apply Changes” বাটনের নাম বদলে “Save” করা।

ধাপ ৯: ইমপোর্টে ভুল হলে কী করবেন

ইমপোর্টে এরর এলে VS Code-এর Problems প্যানেল খুলুন (Windows-এ Ctrl + Shift + M, Mac-এ Cmd + Shift + M)। এররটি কপি করে Claude-কে দিন:

The following error occurred during import: <PASTE ERROR HERE> Analyze the issue and fix only the failing APEXlang source or related file. Do not modify unrelated components.

তারপর আবার ইমপোর্ট করুন। এভাবে কয়েকবার ঘুরিয়ে ঠিক করাটাই স্বাভাবিক কাজের ধারা।

কিছু কাজের পরামর্শ

  • শুরুতে ছোট পরিবর্তন চান। একবারে পুরো অ্যাপ না চেয়ে এক পেজ, এক ফিচার করে এগোন এবং প্রতিবার ইমপোর্ট করে যাচাই করুন।
  • প্রতিটি ধাপের পর git commit করুন। Claude কী বদলেছে তা diff দেখে বোঝা সহজ হবে।
  • প্রোডাকশন ডাটাবেসে সরাসরি কাজ করবেন না। একটি ডেভেলপমেন্ট ওয়ার্কস্পেস বা স্কিমা ব্যবহার করুন।
  • প্রজেক্ট-ভিত্তিক নির্দেশ দিন। প্রজেক্ট ফোল্ডারে আলাদা CLAUDE.md রেখে সেখানে অ্যাপের নিয়ম লিখে রাখতে পারেন, যেমন নামকরণের ধরন বা কোন টেবিল ব্যবহার হবে।
  • ফলাফল প্রতিবার হুবহু এক হবে না। মডেল ও অ্যাপের অবস্থাভেদে AI-এর তৈরি পরিবর্তন কিছুটা ভিন্ন হতে পারে। তাই প্রম্পট আরও নির্দিষ্ট করে বা এরর মেসেজ দিয়ে ধাপে ধাপে ঠিক করে নিতে হয়।
  • আগে থেকে থাকা কোনো অ্যাপে কাজ করতে চাইলে প্রথমে সেটি APEXlang ফরম্যাটে এক্সপোর্ট করে নিন। Oracle-এর “APEXlang in Practice: Export, Edit, Validate, and Import” ব্লগে এর বিস্তারিত আছে।
  • Manually App Import – windows powershell-এ গিয়ে লিখুন
    & “C:\Users\Username\.vscode\extensions\oracle.sql-developer-26.3.0-win32-x64\dbtools\sqlcl\bin\sql.exe” -name “Local Database”
    এরপর আপনার স্কিমা পাসওয়ার্ড দিন, লগিন হলে এই কমান্ড দিন –
    apex import -input “C:/Users/Username/Desktop/apex/apex_app_ai/employee-portal” -workspaceid 1496170008502614

Sources:

Published by

Ali Asgor

Graduate in GES, OCP holder, Self-motivated app developer, Programming lover, Lazy person...