Project Description
I need a self-contained login module for an elevator maintenance mobile app. Here’s the stack and what I’m after:
• Front end: React Native screen that displays our supplied logo, collects email/username and password, validates input, and handles success/error messages gracefully on both iOS and Android.
• Back end: Node.js (Express preferred) endpoint running on Render.com. It should create, authenticate, and authorize a single user type—Maintenance personnel—with the “Technician” role. Use secure password hashing with a unique salt per user and issue a JWT (or similarly secure token) on successful login.
• Database: PostgreSQL instance on Render.com. Set up the users table plus any minimal support tables. Each user record must store salted/hashed password, personal details, and an activity log reference. Please include SQL migrations or Prisma/Knex scripts so the schema can be recreated easily.
• Continuity: Structure the code so additional roles (Administrator, Manager) and profile fields can be added later without rewrites.
• Deliverables:
– React Native component(s) with clear navigation hooks.
– Node.js source with environment‐driven config.
– SQL/migration scripts and a brief README covering setup, env vars, and test credentials.
– Postman collection or curl samples for quick testing.
Once this module is solid, there’s an option to stay on for 3–4 months of feature work on a monthly retainer, so write clean, extendable code and document it well.