0% found this document useful (0 votes)
3 views

ReactAssignment (1)

The document outlines the requirements for building a Single Page Application (SPA) that includes user authentication, form validation, CRUD functionality, and a dynamic data table using React and Prisma with a SQL Server database. Key features include user login/signup, personal information management, data table display with search and filter capabilities, and CRUD operations on user data. The technical stack involves React for the frontend, Node.js with Express for the backend, and JWT for session management.

Uploaded by

parthiv192
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views

ReactAssignment (1)

The document outlines the requirements for building a Single Page Application (SPA) that includes user authentication, form validation, CRUD functionality, and a dynamic data table using React and Prisma with a SQL Server database. Key features include user login/signup, personal information management, data table display with search and filter capabilities, and CRUD operations on user data. The technical stack involves React for the frontend, Node.js with Express for the backend, and JWT for session management.

Uploaded by

parthiv192
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 2

Objective: The objective of this task is to build a Single Page Application (SPA) that

includes basic user authentication, form validation, CRUD functionality, and a dynamic data
table. The app should interact with a SQL Server database using Prisma, and the frontend
should be built with React (or any other preferred framework/library) for a seamless user
experience.

Project Requirements:

1. Authentication (Login and Signup):

 Implement user authentication with Login and Signup functionality.


 Store user session information and ensure session management for logged-in users.
 After a successful login, the application should allow the user to perform CRUD operations.

2. Signup and Login Forms:

 Signup Form: Allow users to create an account with the following fields:
o Email (must be unique and valid)
o Username
o Password (validation for strong passwords)
 Login Form: Allow users to sign in using their email and password.

3. User Info After Login:

 After the user successfully logs in, they should be able to update their personal information,
including:
o Username
o Email
o Phone
o Gender (Checkbox for Male/Female/Other)
o Date of Birth (DOB) (Using a date picker or input field)
o Other optional fields such as Address, Profile Picture, etc.
 Use a dropdown for selecting gender.

4. Data Table:

 Create a table that displays the user’s personal information and allows searching and
filtering by:
o Username
o Email
o Phone
o Gender
o Date of Birth
 Create a table from the provided script that contains sales data. Display this data in a table
as desired and perform the following analyses in separate tables:
(NOTE : In Sales.sql replace Use [Database] with the actual database name.)

1. Best-Selling Product
2. Profit by City
3. Annual Sales and Profit
4. Quarterly Sales and Profit
5. Product-wise Sales Grouped by Year

5. CRUD Operations (Only on user table):

 The application must allow basic CRUD operations for user data:
o Create: Add new data (e.g., create a new user profile).
o Read: View user data in a data table.
o Update: Edit existing user data (i.e., allow the user to update their profile).
o Delete: Remove a user from the system.

6. Form Validation:

 Use Zod or any relevant validation library to validate forms before submission (e.g., for email
format, password strength, required fields, etc.).

7. Database:

 Use SQL Server as the database.


 Implement Prisma as the ORM for database operations.
 Store user data (Username, Email, Password, Phone, Gender, DOB) in the database.

Technical Stack:

Frontend:

 React (or your preferred frontend framework)


 React Router for navigation
 CSS/SCSS for styling
 Zod or another form validation library

Backend:

 Node.js with Express (or any relevant backend framework)


 Prisma ORM for database interaction
 SQL Server as the database engine

Authentication:

 Use JWT (JSON Web Tokens) for session management (or use cookie-based sessions if
preferred).

You might also like