NexusLabs is an independent, monochrome student app for SJCET Palai. It presents student information from the official SJCET Etlab portal in a focused mobile experience. The portal remains the source of official academic records.
The app includes student sign-in, a home view, attendance, timetable, assignments, notices, materials, fee information, results, local assignment reminders, Privacy, and About screens. The Results screen covers Internal, Assignment, Module test, Seasonal, Self study, Tutorial, Series, and University categories with semester selection. Availability depends on the signed-in account and data returned by Etlab.
The product is being expanded toward complete student-facing Etlab coverage. Fee payment initiation and the separate exam-registration result flow are still being developed, so the current app must not be treated as a complete replacement for Etlab.
- Expo SDK 58 and React Native 0.88
- TypeScript, Expo Router, TanStack Query, Zustand, and SecureStore
- Node.js 24.22.0 (
.nvmrc) and npm - Android package:
in.nexuslabs.sjcet
Use Node.js 24.22.0 and install the locked dependencies:
npm ci
npx expo startTo start Expo on an available Android emulator:
npx expo start --androidFor a local native Android build:
npx expo run:androidExpo generates native projects through Continuous Native Generation. Keep native configuration in app.json and config plugins; do not commit generated android/ or ios/ directories.
Run these from the repository root before committing app changes:
npm run typecheck
npm run lint
npm test
npx expo export --platform android --output-dir .export-smoke
npx expo-doctorGitHub Actions runs type checking, lint, unit tests, and an Android bundle export on pushes and pull requests targeting main.
src/
app/ Expo Router screens and layouts
components/ Shared interface components
hooks/ Reusable React hooks
lib/ API, domain, and formatting utilities
providers/ App-wide providers
stores/ Local app state
theme/ Monochrome design tokens and theme access
tests/ Focused unit tests
assets/ App icons, fonts, and artwork
Keep API validation at the network boundary, domain calculations in pure functions, and screens focused on composition and interaction. Follow AGENTS.md for product, privacy, design, Android, and repository rules.
NexusLabs connects directly to https://sjcetpalai.etlab.in/androidapp/. It does not use an app server or proxy. Session credentials are stored in Android/iOS secure storage; cached academic data remains on the device. Never commit a student username, password, session token, live account response, or private screenshot.
Live account checks must remain read-only. Do not submit leave requests, assignments, surveys, hostel registrations, or payments during development verification. A payment flow must preserve the student's explicit confirmation and transfer control to the official payment provider.
NexusLabs is an independent project and is not affiliated with or endorsed by Etlab. The Etlab portal remains the authority for records and transactions.
The Git repository contains the NexusLabs mobile app and the app-specific files needed to build, verify, document, and maintain it. APKs, reverse-engineering evidence, and unrelated workspace material stay outside this repository. Changes are committed with focused Conventional Commit messages and pushed to main after relevant checks pass.
No license has been added yet. Public repository visibility does not grant permission to reuse the source.