尚未检测到更新。GitHub 发布版本后会显示在这里。
制作者的介绍仅有上面的一句话。 更多详情请阅读仓库 README。 仓库 README ↗
正在加载完整 README。
查看完整 README ↗Systems Engineering Department — Military Technological College (MTC), Sultanate of Oman.
A bilingual (English / Arabic) step-by-step survey with 15 questions in 5 sections, a PostgreSQL backend, and a secure staff dashboard at /admin.
Stack: Next.js 15 (App Router) · React 19 · TypeScript · Tailwind CSS 4 · shadcn/ui-style components · React Hook Form · Zod · Prisma 6 · PostgreSQL
Staff fill in open forms, like the student survey. No account or password is needed.
| Route | Purpose |
|---|---|
/staff | Choose a form, in English or Arabic |
/staff/pathway | Pathway Leaders: pathway, competencies, external opportunities (one record each), student preparation, recommendations |
/staff/module | TNA Module Coordinators: one module per form. Learning outcomes, proposed activities linked explicitly to outcomes, assessment, resources, competition potential |
/staff/contribution | Academic & technical staff: expertise, workshops, project/research ideas, mentoring, delivery preferences, availability |
/staff routes behind the college's single sign-on or a shared access code./admin, administrators only)The side menu is grouped as follows:
Matching (on each opportunity and initiative) is rule-based and explained on screen. It uses students' self-reported survey answers: interest overlap, self-rated proficiency, readiness, weekly hours and previous participation, restricted to the target levels. It also lists staff with related expertise or mentoring interest, and the training gaps with related proposed workshops. Suggestions are never applied automatically. Administrators add students or staff to an initiative explicitly, and eligibility remains a staff decision.
Reports: CSV and Excel exports for opportunities, pathways, modules (one row per activity, with linked outcomes), workshops, research ideas, the staff directory, initiatives, and an integrated planning report per technical field. Exports follow the page filters and the interface language. They are admin-only and recorded in the audit log.
| Item | Where | Notes |
|---|---|---|
| Official logo | public/brand/se-logo.jpeg | Copy the department-supplied file unchanged. Until it exists, the header shows an empty outlined placeholder. To use another file name or format (e.g. SVG), change src/config/brand.ts. |
| Specialisations (Q4) | src/config/survey.ts → SPECIALISATIONS, ISE_TRACKS | Configured with the 10 department programmes plus Information Systems Engineering (ISE). Choosing ISE asks for a track: Cybersecurity, Artificial Intelligence, Information Technology, or Other (specify). value is stored in the database, so do not change it once responses are being collected. Have the Arabic programme names checked. |
| Student ID rule (Q2) | NEXT_PUBLIC_STUDENT_ID_PATTERN env var | A regular expression applied to the trimmed, upper-cased ID. Default ^[A-Z0-9]{6,12}$. It is applied at build time, so rebuild after changing it. |
| Privacy / consent wording | src/i18n/en.ts, src/i18n/ar.ts → reviewScreen | Have the wording checked against institutional policy. |
All visible text, in both languages, is in src/i18n/en.ts and src/i18n/ar.ts. A unit test fails if any key is missing from the Arabic file.
Requires Node.js 20+.
npm install
cp .env.example .env # then edit .env (see below)
npm run db:local # optional: starts a local PostgreSQL on port 54329 (keep it running)
npx prisma migrate deploy # creates the tables
npm run admin:create -- --email [email protected] --name "Your Name"
npm run dev # http://localhost:3000 (staff: /admin)
npm run db:local uses embedded-postgres (a real PostgreSQL server, stored in ./.pg-data) so you don't need a system install. For it, set:
以上为 README 的开头部分。其余内容请阅读原文。 查看完整 README ↗