amitkumariitmadras / devMiniTest

2 stars 0 forks source link

Authentication Implementation #1

Open amitkumariitmadras opened 1 month ago

amitkumariitmadras commented 1 month ago

Implement Authentication Pages (Login, Signup, Signout)

Objective: Create full-stack authentication functionality for our app, including Login, Signup, and Signout pages.

Project Overview: Frontend: Flutter Backend: Node.js with Express.js Database: Firebase

Tasks

  1. Frontend - Flutter Login Page Email and password fields Form validation (e.g., valid email format, password length) Error messages for incorrect credentials Signup Page Fields: Name, Email, Password, Confirm Password Form validation (e.g., password match, strong password criteria) Success message upon successful registration Signout Functionality Accessible from the app's home or profile page Confirmation prompt before signing out

  2. Backend - Node.js with Express.js API Endpoints POST /signup - Register new users POST /login - Authenticate users POST /signout - Invalidate user session (if applicable)

Middleware Input validation Authentication checks Hash passwords before storing Implement JWT for session management Secure API with HTTPS (if possible)

  1. Database - Firebase User Authentication Store user credentials securely Set up authentication rules

Acceptance Criteria

  1. _Users can register, log in, and log out successfully.
  2. Form inputs are validated on both frontend and backend.
  3. Passwords are securely hashed and not stored in plain text.
  4. User sessions are managed securely using JWT or Firebase Auth.
  5. Error and success messages are displayed appropriately.
  6. Code is clean, well-documented, and follows best practices._
amitkumariitmadras commented 1 month ago

@Abijith27UK @Coderlearner41 @JulieRiverside you guys can put any of your issues here regarding this project

Coderlearner41 commented 1 month ago

Sir if we are using firebase it does not require any backend for for log in and signup and authentication everything is inbuild in firebase so I don't think we need any backend work in this task

amitkumariitmadras commented 1 month ago

@Coderlearner41 @Abijith27UK @JulieRiverside Yup that's right- have you guys already written Firebase code or should we shift to MongoDB??

I rarely use Firebase, in case you guys are familiar with that. No issues go ahead, else let's switch to MongoDB or Postgresql.

My suggestion would be MongoDB.

amitkumariitmadras commented 1 month ago

guys in case you have any secret keys, put them in .env file ->> .gitignore

Abijith27UK commented 1 month ago

Using firebase would make auth part easy with minimal code