0% found this document useful (0 votes)
24 views47 pages

Logical Apting

Uploaded by

karanramesh0124
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
24 views47 pages

Logical Apting

Uploaded by

karanramesh0124
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 47

LOGICAL APTING

A project report submitted in partial fulfilment of the requirements for the award of

the degree of

BACHELOR OF COMPUTER APPLICATIONS

Submitted by

KARAN.R

22105091

DEPARTMENT OF COMPUTER APPLICATIONS

SRI RAMAKRISHNA COLLEGE OF ARTS AND SCIENCE

(AUTONOMOUS)

(AFFILIATED TO BHARATHIAR UNIVERSITY)

(Re-Accredited by NAAC with ‘A+’ Grade)

COIMBATORE 641006

JUNE 2024
2023 – 2024

Reg.no: 22105091

Certified Bonafide record of work done by KARAN.R


Title: LOGICAL APTING

____________________ ____________________
Prof & Head Staff-In-Charge

Submitted for the mini project viva-voce examination held on______________.

______________________ _______________________
INTERNAL EXAMINER EXTERNAL EXAMINER

2
DECLARATION

I KARAN.R-22105091 hereby declare that the mini project, entitled

“LOGICAL APTING”, submitted in partial fulfillment of the requirements for the award of

the Degree of Bachelor of Computer Applications is a record of original work done during

2023-2024.

Date:

Place: Coimbatore

Signature of the Candidate

KARAN.R

3
ACKNOWLEDGEMENT
First and foremost my whole-hearted thanks to the Lord Almighty, the guiding light

of lite for granting us the strength and courage to complete this project work.

I express my thanks to Dr. B.L. SHIVAKUMAR, Principal & Secretary, Sri

Ramakrishna College of Arts & Science, Coimbatore for the facilities and assistance

provided during the course of the study.

I record my deep gratitude and will remain obliged Dr. D.HARI PRASAD, Professor

& Head, Department of Computer Applications, Sri Ramakrishna College of Arts and

Science, Coimbatore for his valuable help and suggestions to complete my project.

I take this opportunity to express my gratitude to the staff members, research scholars

and non-teaching staff members of the Sri Ramakrishna College of Arts and Science,

Coimbatore for their timely help.

I would like to extend my heartfelt thanks to my beloved parents and family members

without whose support in the project would be impossible.

The amount of encouragement received especially from my friends requires a special

mention. I record my deep indebtedness to them for their support.

KARAN.R

22105091

4
TABLE OF THE CONTENT

CHAPTER TITLE PAGENO


Introduction
1.1. Overview of the Project
1.2 Background and Motivation
1 1.3. Objectives
1.4. Purpose of the Project
2. System Study
2.1. Existing Systems
2.2. Limitations of Existing Systems
2 2.3. Proposed System
2.4. Feasibility Study
2.5. System Requirements

3. System Specification
3.1. Functional Requirements
3.2. Non-functional Requirements
3 3.3. Hardware and Software Requirements
3.4. Data Flow Diagrams

System Design
4.1. System Architecture
4.2. Component Design
4 4.3. User Interface Design
4.4. Database Design
4.5. Security Design

Testing and Implementation

5.1. Testing Strategy


5 5.2. Unit Testing
5.3. Integration Testing
5.4. System Testing
5.5. User Acceptance Testing
5.6. Deployment

5
Conclusion
6
6.1. Summary of Work Done

7 BIBILOGRAPHY
7.1. WEBSITE REFRENCES

APPENDIX
SAMPLE SCREENSHOTS
SOURCE CODE

6
CHAPTER I

INTRODUCTION

1.1 OVERVIEW OF THE PROJECT


The project aims to create a sophisticated web-based learning platform dedicated to
enhancing aptitude and logical reasoning skills, which are critical for academic success,
career advancement, and effective problem-solving. The platform targets a broad
audience, including students preparing for competitive exams, job seekers, professionals,
and individuals looking to improve their cognitive abilities. Key features include
interactive learning modules, diverse practice exercises, immediate feedback,
personalized learning paths, and progress tracking. Developed using modern web
technologies like HTML, CSS, JavaScript, and Node.js, the platform will ensure
seamless access across various devices.
The project follows a meticulously planned timeline involving phases of requirements
analysis, design, development, testing, and deployment. Success will be measured by
user engagement, learning outcomes, and overall satisfaction, with regular updates based
on feedback to maintain its relevance and effectiveness. The platform's user-centric
design will focus on delivering an intuitive and engaging experience, with features such
as gamification elements to motivate users and keep them engaged. The incorporation of
adaptive learning algorithms will tailor content to individual users' progress and learning
styles, enhancing the effectiveness of the learning process.
Additionally, the platform will support multiple languages to cater to a global audience,
ensuring inclusivity and broad accessibility. Security and privacy will be paramount, with
robust measures to protect user data and ensure a safe learning environment. Analytics
and reporting tools will be integrated to provide users with insights into their
performance and areas needing improvement, fostering a data-driven approach to
learning. Collaboration and community features will allow users to interact, share
knowledge, and support each other, creating a vibrant learning community. The platform
will also offer certifications upon completion of certain modules or courses, adding value
for users seeking to showcase their skills to potential employers. Ultimately, the project
seeks to democratize access to high-quality educational resources, fostering continuous
learning and personal and professional growth. By leveraging technology to create an

1
engaging, adaptive, and secure learning environment, the project aspires to empower
individuals worldwide to enhance their cognitive skills and achieve their full potential .

1.2. BACKGROUND AND MOTIVATION

1.2.1. BACKGROUND

The necessity for enhanced cognitive skills, particularly in aptitude and logical
reasoning, has never been more pronounced than in today's rapidlpagey evolving educational
and professional landscapes. Aptitude tests are a fundamental component of various
competitive examinations, job placements, and academic assessments. These tests evaluate an
individual's ability to solve problems, think critically, and understand complex concepts.
Similarly, logical reasoning is crucial for decision-making, problem-solving, and analytical
thinking, skills that are invaluable in both academic settings and the professional world.

Despite their importance, there is often a significant gap in accessible, high-quality resources
that cater to the diverse needs of individuals seeking to improve these skills. Traditional
learning methods, such as textbooks and classroom instruction, may not fully address the
varied learning styles and paces of different individuals. Moreover, the static nature of these
resources often fails to provide the interactive and engaging experience necessary for
effective learning.

The advent of digital learning platforms presents an opportunity to bridge this gap. By
leveraging technology, we can create dynamic, personalized, and interactive learning
experiences that are accessible to a wider audience. This project aims to harness these
possibilities, providing a comprehensive platform for aptitude and logical reasoning training
that adapts to the needs of each learner.

1.2.2. MOTIVATION

The motivation behind this project stems from several key factors:

1. Growing Demand for Cognitive Skills: In an increasingly competitive job market,


employers are prioritizing candidates with strong cognitive abilities. Aptitude and logical
reasoning skills are critical for roles that require problem-solving, strategic thinking, and

2
analytical capabilities. There is a clear demand for resources that help individuals develop
these skills to enhance their employability and career prospects.

2. Educational Requirements: Many academic institutions include aptitude and logical


reasoning tests as part of their admissions processes. Students preparing for entrance exams
such as the GRE, GMAT, SAT, and various other standardized tests need effective tools to
improve their performance. A dedicated platform can provide targeted practice and feedback,
helping students achieve higher scores and secure admission to their desired programs.

3. Advancements in E-Learning: The e-learning industry has experienced significant


growth, driven by advancements in technology and the increasing acceptance of online
education. Interactive, adaptive learning platforms can offer personalized experiences that are
more engaging and effective than traditional methods. This project aims to capitalize on these
advancements to deliver a superior learning experience.

4. Accessibility and Inclusivity: One of the main motivations is to democratize access to


quality education. Many individuals do not have access to high-quality educational resources
due to geographical, financial, or other constraints. An online platform can overcome these
barriers, providing equal opportunities for learning to a global audience.

5. Continuous Improvement: The platform will not only provide learning resources but also
continuously gather data on user performance and feedback. This data-driven approach will
enable ongoing improvements to the content and delivery methods, ensuring that the platform
evolves to meet the changing needs of its users.

6. Personal Growth and Lifelong Learning: Beyond academic and professional


applications, aptitude and logical reasoning skills contribute to personal development. They
enhance an individual's ability to think critically, make informed decisions, and solve
everyday problems. Promoting these skills supports the broader goal of lifelong learning and
personal growth.

1.2.3. OBJECTIVES

1. Enhance Cognitive Skills: Develop a platform that effectively improves users' aptitude
and logical reasoning abilities through interactive and engaging content.

3
2. Accessibility: Provide a resource that is easily accessible across various devices and
available to a global audience, breaking geographical and financial barriers.

3. Personalized Learning: Implement adaptive learning paths that tailor content to


individual user needs and progress, maximizing learning efficiency and retention.

4. Comprehensive Content: Offer a wide range of topics and practice exercises covering
various aspects of aptitude and logical reasoning, catering to diverse learning requirements.

5. Interactive Features: Incorporate immediate feedback, gamification elements, and


community features to keep users motivated and engaged.

6. Performance Tracking: Enable users to track their progress and identify areas for
improvement with detailed analytics and reporting tools.

7. Security and Privacy: Ensure robust security measures to protect user data and maintain a
safe learning environment.

8. Continuous Improvement: Regularly update the platform based on user feedback and
performance data to keep the content relevant and effective.

9. Certification: Provide certifications upon completion of certain modules or courses to add


value for users in their academic and professional pursuits.

10. Support Multiple Languages: Cater to a global audience by offering content in multiple
languages to ensure inclusivity and broad accessibility.

1.2.4. PURPOSE OF THE PROJECT

The primary purpose of this project is to develop an advanced web-based learning platform
focused on enhancing aptitude and logical reasoning skills. These skills are critical for
various aspects of personal and professional life, including academic success, career
advancement, and effective problem-solving. The platform aims to address several key
objectives:

1. Filling the Resource Gap: Traditional resources such as textbooks and classroom-based
learning often fail to meet the diverse needs of learners aiming to improve their cognitive
skills. This project intends to fill this gap by providing an accessible, comprehensive, and
interactive online platform that caters to different learning styles and paces.

2. Supporting Academic Success:

4
Aptitude and logical reasoning are integral components of many competitive exams and
entrance tests. The platform aims to support students preparing for these assessments by
offering tailored practice exercises, instant feedback, and detailed explanations, thereby
improving their chances of success.

3. Enhancing Employability:

In today’s competitive job market, employers increasingly value candidates with strong
analytical and problem-solving skills. The platform seeks to enhance users' employability by
developing these critical skills, making them better equipped for various roles that demand
high cognitive abilities.

4. Promoting Lifelong Learning:

Beyond academic and professional contexts, logical reasoning and aptitude are essential for
everyday decision-making and problem-solving. The platform encourages lifelong learning
and personal development by providing resources that help users continually improve their
cognitive skills.

5. Leveraging Technology for Education:

The project leverages the latest advancements in technology to create a dynamic and
engaging learning environment. Features such as adaptive learning paths, gamification, and
real-time progress tracking are designed to enhance the learning experience and outcomes.

6. Ensuring Inclusivity and Accessibility:

By being an online platform, the project ensures that quality educational resources are
accessible to a global audience, overcoming geographical and financial barriers. This
democratization of education aims to provide equal learning opportunities for everyone,
regardless of their location or economic status.

7. Creating a Community of Learners:

The platform also aims to build a supportive community where users can interact, share
knowledge, and motivate each other. Community features, such as discussion forums and
peer reviews, will foster collaboration and mutual support among learners.

8. Adapting to User Needs:

5
One of the primary purposes is to create a platform that continuously evolves based on user
feedback and data. By analyzing user performance and preferences, the platform will adapt
its content and features to better meet the needs of its users, ensuring continuous
improvement and relevance.

CHAPTER II

SYSTEM STUDY

2.1. EXISTING SYSTEM

The existing system comprises traditional learning resources like textbooks and
classroom instruction, alongside digital platforms offering online courses and mobile apps for
aptitude and logical reasoning. However, these systems often lack interactivity,
personalization, and accessibility. Users face challenges such as limited adaptability to
individual learning needs and concerns about data privacy. Despite providing valuable
content, existing systems fail to meet the growing demand for dynamic, engaging, and
personalized learning experiences.

2.2. LIMITATION OF EXISTING SYSTEM

 Lack of interactivity: Existing systems often offer static content without interactive
features.

 Limited personalization: Learning paths are not customized based on individual progress
and preferences.

 Accessibility challenges: Some platforms may not be accessible on all devices or lack
inclusive design features.

 Inadequate feedback: Users may not receive timely feedback on their performance,
hindering effective learning.

 Security concerns: Weak security measures and unclear privacy policies may compromise
user data.

6
2.3. PROPOSED SYSTEM

The proposed system is an advanced, web-based learning platform designed to enhance the
study of aptitude and logical reasoning. It features interactive quizzes, simulations, and
games to make learning engaging and fun, with gamification elements like badges and
leaderboards to motivate users. The platform provides personalized learning paths and real-
time feedback, tailored to individual progress and performance. It is accessible on multiple
devices, ensuring flexibility, and includes inclusive design features for users with disabilities.
Strong security measures and clear privacy policies protect user data. Additionally, the
platform fosters a supportive learning community through discussion forums and access to
expert mentors.

2.3.1. BENEFITS OF THE PROPOSED SYSTEM:

 Enhanced Learning Experience: Engaging and interactive content will make


learning more enjoyable and effective.
 Improved Performance: Personalized learning paths and real-time feedback will
help users improve their performance.
 Greater Accessibility: The platform's accessibility features ensure high-quality
education is available to everyone.
 Secure and Private: Robust security measures and privacy protection will give users
confidence in the platform.
 Supportive Community: Community features will foster collaboration and mutual
support.

2.4. FEASIBILITY STUDY

A feasibility study is a critical evaluation process that involves several key considerations:

1. Technical Feasibility: This aspect assesses whether the proposed system can be developed
using available technology and resources. It examines factors such as software and hardware
requirements, compatibility with existing systems, and scalability to accommodate future
growth.

2. Economic Feasibility: Economic feasibility evaluates the financial viability of the project.
It involves estimating the costs associated with development, implementation, and

7
maintenance of the system, as well as potential revenue streams and return on investment
(ROI). Cost-benefit analysis helps determine whether the benefits outweigh the costs.

3. Operational Feasibility: Operational feasibility focuses on the practicality of


implementing the system within the organization. It considers factors such as user
acceptance, training needs, and the impact on existing business processes. Assessing
operational feasibility helps identify potential challenges and risks associated with system
integration and adoption.

4. Scheduling Feasibility: Scheduling feasibility examines the project timeline and resource
allocation required to complete the development and implementation phases. It involves
creating a realistic schedule that accounts for various tasks, dependencies, and potential
delays. Effective scheduling ensures timely delivery of the system while minimizing
disruptions to ongoing operations.

5. Risk Management: A feasibility study also includes risk assessment and mitigation
strategies to address potential challenges and uncertainties. Identifying risks early allows
project teams to develop contingency plans and proactive measures to mitigate their impact
on project success.

2.5. SYSTEM REQUIREMENTS

System requirements outline the technical specifications and capabilities necessary for the
successful development, implementation, and operation of the proposed learning platform.
Here are the key system requirements:

1.HARDWARE REQUIREMENTS:

- Server Infrastructure: Robust servers capable of handling high volumes of user traffic
and data processing.

- Client Devices: Compatibility with a range of devices including desktops, laptops, tablets,
and smartphones.

2.SOFTWARE REQUIREMENTS:

- Operating System: Compatibility with major operating systems such as Windows,


macOS, iOS, and Android.

8
- Web Browsers: Support for popular web browsers like Chrome, Firefox, Safari, and
Edge.

- Development Tools: Programming languages (e.g., JavaScript, Python), frameworks


(e.g., React, Node.js), and development environments (e.g., Visual Studio Code).

3. DATABASE REQUIREMENTS:

- Database Management System (DBMS): Selection of an appropriate DBMS for storing


user data, content, and analytics.

- Data Security: Implementation of encryption, access controls, and data backup


mechanisms to ensure data security and integrity.

4. NETWORKING REQUIREMENTS:

- Internet Connectivity: Reliable internet connectivity to access the platform from any
location.

- Scalability: Network infrastructure capable of scaling to accommodate growing user


numbers and traffic.

5. USER INTERFACE REQUIREMENTS:

- Intuitive Interface: User-friendly interface design with intuitive navigation and


responsive layouts for various screen sizes.

- Accessibility: Compliance with accessibility standards (e.g., WCAG) to ensure usability


for users with disabilities.

6. FUNCTIONALITY REQUIREMENTS:

- Interactive Features: Implementation of interactive quizzes, simulations, games, and


real-time feedback mechanisms.

- Personalization: Customization of learning paths, content recommendations, and progress


tracking based on user preferences and performance.

- Collaboration Tools: Integration of discussion forums, peer reviews, and expert support
features for collaborative learning.

7. SECURITY AND PRIVACY REQUIREMENTS:

9
- Authentication and Authorization: User authentication mechanisms (e.g.,
username/password, OAuth) and role-based access controls.

- Data Encryption: Encryption of sensitive user data (e.g., passwords, personal


information) during transmission and storage.

- Privacy Policy: Clear privacy policy outlining data collection, usage, and protection
practices to ensure user privacy and compliance with regulations (e.g., GDPR).

8. PERFORMANCE REQUIREMENTS:

- Response Time: Fast response times for loading content, submitting responses, and
accessing features to enhance user experience.

- Scalability: Scalable architecture to handle concurrent user sessions and peak loads
without performance degradation.

By defining these system requirements, the project team can ensure that the learning platform
meets the needs of users, complies with technical standards, and operates effectively and
securely.

10
CHAPTER III

SYSTEM SPECIFICATION

3.1. FUNCTIONAL REQUIREMENTS

1. User Registration and Authentication:

- Account creation with unique usernames and passwords.

- Support for email verification and social media login.

2. Learning Content Management:

- Upload, organize, and update quizzes, tutorials, and study materials.

- Categorize content by topic, difficulty, and type.

3. Interactive Learning Activities:

- Provide interactive quizzes, exercises, and simulations.

- Immediate feedback and explanations for incorrect answers.

4. Personalized Learning Paths:

- Custom learning paths based on user performance and preferences.

11
- Content recommendations tailored to user progress.

5. Progress Tracking and Analytics:

- Track user progress and performance metrics.

- Analytics dashboards for admins to monitor engagement and effectiveness.

6. Collaborative Learning Features:

- Discussion forums, group study sessions, and peer reviews.

- Interaction with instructors, mentors, and peers.

7. Accessibility and Inclusivity:

- Adherence to accessibility standards.

- Features like adjustable text sizes and screen reader compatibility.

8. Communication and Notifications:

- Notifications for new content, assessments, and announcements.

- Messaging channels for contacting instructors and peers.

9. Admin Management Tools:

- Tools for user management, content moderation, and platform configuration.

- Ability to create/manage accounts and monitor activity.

10. Security and Data Protection:

- Encryption, secure authentication, and access controls.

- Clear privacy policies and user control over personal information.

These functional requirements ensure the platform is user-friendly, secure, and effective for
both learning and administrative tasks.

3.2.NON-FUNCTIONAL REQUIREMENTS:

Non-functional requirements define how the system operates and its quality attributes. Here's
a brief overview:

12
1. Performance: The system should respond quickly and handle increasing loads without
slowdowns.

2. Usability: It should be easy to navigate and accessible to users with disabilities.

3. Reliability: The system must be available and maintain data integrity.

4. Security: It should protect user data through encryption, secure authentication, and access
controls.

5. Maintainability: The code should be well-structured and documented for easy


maintenance.

6. Portability: The platform should work across different devices and browsers.

7. Efficiency: It should use resources efficiently to minimize costs.

8. Scalability: The system should scale to accommodate growing user numbers.

9. Compliance: Ensure compliance with data protection laws and industry standards.

10. Interoperability: It should integrate with other systems and services.

11. Supportability: Provide documentation and customer support for users and developers.

3.3. HARDWARE AND SOFTWARE REQUIREMENTS:

 HARDWARE REQUIREMENTS

1. Server Hardware:
o Processor: Multi-core processors (e.g., Intel Xeon or AMD EPYC) to handle
concurrent users and complex operations.
o Memory (RAM): At least 32GB, scalable based on user load and data
handling requirements.
o Storage: SSDs with a minimum of 1TB for fast data access and retrieval, with
RAID configuration for redundancy.
o Network: High-speed network interface cards (NICs) for efficient data
transfer and connectivity.

2. Client Hardware:
o Devices: Desktops, laptops, tablets, and smartphones.

13
o Processor: Minimum dual-core processor.
o Memory (RAM): At least 4GB for smooth operation.
o Storage: Sufficient storage to handle application data and cache.

 SOFTWARE REQUIREMENTS:

1. Server Software:
o Operating System: Linux (e.g., Ubuntu Server, CentOS) or Windows Server,
depending on compatibility and preference.
o Web Server: Apache HTTP Server or Nginx to serve web pages and handle
requests.
o Database: MySQL, PostgreSQL, or MongoDB for data storage and retrieval.
o Programming Languages: Node.js for server-side logic, with JavaScript
frameworks such as React for the frontend.
o Application Server: Express.js for handling backend logic and API requests.
o Version Control: Git for source code management and collaboration.
o Containerization: Docker for consistent deployment across different
environments.
o Load Balancer: HAProxy or Nginx for distributing incoming traffic evenly
across servers.

2. Client Software:
o Web Browser: Latest versions of Chrome, Firefox, Safari, and Edge for
accessing the platform.
o Operating System: Compatibility with Windows, macOS, Linux, Android,
and iOS.

14
3.3.DATA FLOW DIAGRAM:

APP COMPONENT

STATE VARIABLES
- SelectedTopic
- Selected Sub -Topic
- Question Index
- Selected Answer
- Show Explanation

FUNCTIONS
- Handle Topic Change
- Handle Sub Topic Change
- Handle Answer Select
- Next Question

RENDER: 15

- Topic Buttons
- Sub-Topic Buttons
- Question Text
- Answer Buttons
- Explanation
- Correct/Wrong
- Next Question
CHAPTER IV

SYSTEM DESIGN

4.1. SYSTEM ARCHITECTURE

The system architecture for the learning platform is designed to ensure scalability, reliability,
and efficient performance. It comprises multiple layers, each responsible for different aspects
of the system's functionality. Here's an overview:

1. PRESENTATION LAYER

Components: User Interface (UI), Browser, Mobile Apps

Description: This layer interacts directly with users, providing them with interfaces to
register, log in, browse content, take quizzes, and track progress. It ensures a responsive and
intuitive experience across various devices, including desktops, tablets, and smartphones.

2. Application Layer

Components: Web Server, Application Server

Description: This layer handles the core business logic of the platform. It processes user
requests, manages sessions, and interacts with the database. It includes:

Authentication and Authorization: Ensures secure login and access control.

Content Management: Handles creation, updating, and retrieval of learning materials.

Quiz and Exercise Management: Manages the creation, delivery, and scoring of quizzes.

User Progress Tracking: Monitors and records user activities and progress.

3. SERVICE LAYER

Components: API Gateway, External Service Integrations

Description: This layer provides integration with external services and platforms. It
includes:

APIs: Facilitates communication between the application layer and external systems (e.g.,
payment gateways, analytics tools, learning management systems).

16
Third-Party Services: Integrates with services like email notifications, messaging, and
cloud storage.

4. DATA LAYER

Components: Database Server, Data Storage, Backup Systems

Description: This layer is responsible for storing, managing, and retrieving data. It ensures
data integrity, security, and availability. It includes:

Relational Databases: Stores structured data such as user accounts, learning materials,
quiz results, and progress records.

NoSQL Databases: Handles unstructured data like logs, user interactions, and large
multimedia files.

Backup and Recovery: Regularly backs up data to prevent loss and facilitates recovery in
case of failures.

5. INFRASTRUCTURE LAYER

Components: Cloud Services, Servers, Network Infrastructure

Description: This layer provides the foundational infrastructure for hosting and running the
platform. It includes:

Cloud Providers: Utilizes services from cloud providers (e.g., AWS, Azure, Google
Cloud) for scalability and flexibility.

Load Balancers: Distributes incoming traffic across multiple servers to ensure


availability and performance.

Network Security: Implements firewalls, VPNs, and other security measures to protect
the system from external threats.

6. SECURITY LAYER

Components: Security Protocols, Encryption, Access Controls

Description: This layer ensures the security of the platform and user data. It includes:

Encryption: Encrypts data in transit and at rest to prevent unauthorized access.

17
Access Control: Implements role-based access control (RBAC) to restrict access to
sensitive data and functionalities.

Security Audits: Regularly conducts security audits and vulnerability assessments to


identify and mitigate risks.

System Architecture Diagram

Here's a simplified representation of the system architecture:

Presentation Layer | Application Layer

Web Server, App Server


UI, Browser, Mobile Content, Quiz Mgmt
Apps

| Data Layer Service Layer

| API Gateway,
Database Server,
Integrations
Storage, Backup
|
Systems
v

Infrastructure Layer | Security Layer

\
Cloud Services, Servers | Security Protocols,
Network Infrastructure
Encryption, Access Control
18
4.2. COMPONENT DESIGN

1. User Interface (UI) Component

Description: Manages user interactions with intuitive and responsive interfaces.

Key Elements:

- Registration and Login Forms

- Dashboard

- Content Browser

- Quiz Interface

- Progress Tracker

2. Authentication and Authorization Component

Description: Manages user login/logout and access control.

Key Elements:

- Login Module

- Registration Module

- Role-Based Access Control (RBAC)

3. Content Management Component

Description: Handles creation, updating, and retrieval of learning materials.

Key Elements

- Content Upload and Organization

- Search and Retrieval

- Content Categorization

4. Quiz Management Component

19
Description: Manages quiz creation, delivery, and scoring.

Key Elements:

- Quiz Builder

- Question Bank

- Automated Scoring and Feedback

5. User Progress Tracking Component

Description: Monitors and records user activities and progress.

Key Elements:

- Progress Metrics

- Activity Logs

- Performance Reports

6.API and Integration Component

Description: Facilitates communication with external services and systems.

Key Elements:

- External APIs

- Third-Party Integrations

- Data Exchange

7. Database Component:

Description: Manages data storage and retrieval.

Key Elements:

- Relational Database

- NoSQL Database

- Backup and Recovery Systems

8. Security Component

20
Description: Ensures the security of the platform and user data.

Key Elements:

- Encryption

- Access Controls

- Security Audits

This modular approach ensures the system is scalable, maintainable, and easy to develop and
test.

4.3.USER INTERFACE DESIGN

User Interface (UI) design is paramount for the effectiveness of a learning platform, as it
directly impacts user experience and engagement. The UI design should prioritize clarity,
intuitiveness, and responsiveness to accommodate diverse user needs and device types.

The login and registration forms serve as the entry point to the platform, designed with
simplicity and user-friendliness in mind. These forms include essential input fields for
username, email, and password, ensuring users can easily create accounts and log in. Features
like password recovery, reset options, and optional social media logins enhance accessibility
and convenience.

Upon logging in, users are greeted by the dashboard, which acts as the central hub for their
activities. The dashboard provides a comprehensive overview, displaying summaries of
recent activities such as completed quizzes and newly available content. It also features
notifications for upcoming quizzes or deadlines, along with quick links to frequently accessed
sections, ensuring users can navigate the platform efficiently.

The content browser is crucial for enabling users to search and navigate learning materials.
It incorporates a search bar with filters for subjects, difficulty levels, and types of content,
such as articles, videos, and quizzes. This organization helps users find relevant materials
quickly. The browser also uses categories and tags for better content organization, offering
preview options so users can get a glimpse of the material before fully opening it.

A well-designed quiz interface is essential for maintaining user engagement during


assessments. The interface displays questions and multiple-choice options clearly, often with
a timer for timed quizzes. It allows users to receive instant feedback on their answers and

21
includes navigation buttons for moving between questions, making the quiz-taking process
smooth and interactive.

The progress tracker is another vital component, helping users monitor their learning
journey and performance. It includes visual indicators like progress bars and charts, providing
detailed performance metrics such as scores, completion rates, and time spent on various
activities. This feature often offers personalized recommendations for improvement based on
the user's performance, fostering a more targeted learning experience.

Lastly, the user profile section enables users to manage their personal information and
preferences. It often includes details such as the user’s name, contact information, and
learning history. This section ensures that users can update their information easily and view
their overall progress and achievements on the platform.

Together, these UI components create a cohesive and engaging learning environment, making
it easier for users to interact with the platform, access educational content, and track their
progress effectively.

4.4. Database Design:

The database design for a learning platform like the one described in the project involves
structuring data efficiently to support the platform's functionality. The design must ensure
data integrity, quick access, and ease of management. Here, we outline the key components
and considerations for the database design.

1. User Table

Purpose: Store user-related information.

Fields:

- user_id (Primary Key): Unique identifier for each user.

- username: User's chosen name for logging in.

- email: User's email address.

- password: Encrypted user password.

- role: User role (e.g., student, admin).

- created_at: Timestamp of when the user account was created.

22
- updated_at: Timestamp of the last update to the user account.

2. Profile Table

Purpose: Store additional profile information for users.

Fields:

- profile_id (Primary Key): Unique identifier for each profile entry.

- user_id (Foreign Key): References the `user_id` in the User table.

- first_name: User's first name.

- last_name: User's last name.

- birthdate: User's birthdate.

- bio: Short biography or description.

- profile_picture: URL of the user's profile picture.

3.Content Table

Purpose: Store information about learning materials.

Fields:

- content_id (Primary Key): Unique identifier for each content item.

- title: Title of the content.

- description: Brief description of the content.

- content_type: Type of content (e.g., article, video, quiz).

- file_url: URL or path to the content file.

- created_at: Timestamp of when the content was created.

- updated_at: Timestamp of the last update to the content.

- author_id (Foreign Key): References the `user_id` in the User table, indicating the
content creator.

4. Quiz Table

Purpose: Store quiz-related information

23
Fields:

- quiz_id (Primary Key): Unique identifier for each quiz.

- title: Title of the quiz.

- description: Brief description of the quiz.

- created_at: Timestamp of when the quiz was created.

- updated_at: Timestamp of the last update to the quiz.

5. Question Table

Purpose: Store individual questions for quizzes.

Fields:

- question_id (Primary Key): Unique identifier for each question.

- quiz_id (Foreign Key): References the `quiz_id` in the Quiz table.

- question_text: The text of the question.

- option_a: Text for option A.

- option_b: Text for option B.

- option_c: Text for option C.

- option_d: Text for option D.

- correct_option: Indicates the correct option (e.g., 'A', 'B', 'C', 'D').

6. Response Table

Purpose: Store users' responses to quiz questions.

Fields:

- response_id (Primary Key): Unique identifier for each response.

- user_id (Foreign Key): References the `user_id` in the User table.

- quiz_id (Foreign Key): References the `quiz_id` in the Quiz table.

- question_id (Foreign Key): References the `question_id` in the Question table.

24
- selected_option: The option chosen by the user.

- is_correct: Boolean indicating if the response was correct.

7. Progress Table

Purpose: Track user progress and performance.

Fields:

- progress_id (Primary Key): Unique identifier for each progress entry.

- user_id (Foreign Key): References the `user_id` in the User table.

- content_id (Foreign Key): References the `content_id` in the Content table.

- status: Indicates progress status (e.g., completed, in progress).

- score: Score achieved in quizzes.

- last_accessed: Timestamp of the last time the content was accessed.

4.4.1. Considerations for Database Design

1. Normalization: Ensure that the database is normalized to reduce redundancy and improve
data integrity. Typically, a third normal form (3NF) is adequate for most applications.

2. Indexes: Use indexes on frequently queried fields such as `user_id`, `quiz_id`, and
`content_id` to improve query performance.

3. Foreign Keys: Use foreign keys to maintain referential integrity between tables. This
ensures that, for example, every `author_id` in the Content table matches a valid `user_id` in
the User table.

4. Scalability: Design the database to handle an increasing amount of data as more users and
content are added to the platform. This might involve considering partitioning and sharding
techniques for large tables.

5. Security: Encrypt sensitive data such as passwords and use secure connections for data
transmission to protect user information.

6. Backup and Recovery: Implement regular backup procedures and a disaster recovery plan
to prevent data loss.

25
By adhering to these design principles and structuring the database as outlined, the learning
platform will be robust, efficient, and scalable, ensuring a smooth and secure experience for
all users.

4.5. Security Design

Security design is crucial for safeguarding a web-based learning platform. Key components
include secure user authentication (e.g., multi-factor authentication) and role-based access
control to restrict data and function access. Data encryption is essential: sensitive information
at rest should use strong encryption algorithms like AES-256, and data in transit should be
protected with TLS. Secure coding practices are vital to prevent vulnerabilities, such as
injection attacks, by implementing strict input validation and using prepared statements for
database queries. Regular security audits and updates further ensure the system remains
secure against evolving threats.

26
CHAPTER V

TESTING AND IMPLEMENTATION

5.1. UNIT TESTING

Unit testing is a fundamental practice in software development that involves testing


individual components, such as functions, methods, or classes, in isolation. The primary
objective of unit testing is to verify that each unit of code performs as expected and produces
the correct output for a given input. Developers write test cases to cover various scenarios
and edge cases, ensuring comprehensive test coverage. By automating unit tests and running
them frequently during the development process, developers can detect and fix bugs early,
leading to higher code quality and easier maintenance. Unit testing significantly contributes
to the overall reliability and stability of the web-based learning platform.

5.2. INTEGRATION TESTING

Integration testing is a critical phase in the software development lifecycle that focuses on
testing the interactions and interfaces between integrated components of a system. Unlike
unit testing, which verifies individual units of code in isolation, integration testing ensures
that integrated units work together seamlessly as a whole.

During integration testing, developers combine units of code and test their interactions to
identify any inconsistencies, communication issues, or integration errors. This phase helps
uncover integration-related bugs that may arise when integrating different modules or
subsystems.

By thoroughly testing the integration points and interfaces, integration testing ensures the
smooth functioning of the entire system and validates its ability to handle real-world
scenarios. It plays a crucial role in ensuring the overall reliability, stability, and performance
of the web-based learning platform.

5.3. SYSTEM TESTING

System testing is a comprehensive evaluation of the entire web-based learning platform to


ensure that it meets the specified requirements and functions correctly in its intended

27
environment. Unlike unit testing and integration testing, which focus on individual
components and their interactions, system testing examines the system as a whole.

During system testing, various aspects of the platform are evaluated, including its features,
functionalities, performance, security, and usability. Functional testing verifies that all
features and workflows work as expected, while non-functional testing assesses aspects such
as performance under load, security vulnerabilities, and user experience.

System testing validates the end-to-end functionality of the platform and helps identify any
defects or issues that may impact its usability or reliability. By conducting thorough system
testing, developers can ensure that the web-based learning platform meets user expectations
and performs effectively in real-world scenarios.

5.4. USER ACCEPTANCE TESTING

User Acceptance Testing (UAT) is a crucial phase in the software development process where
actual end-users evaluate the web-based learning platform to ensure it meets their needs and
expectations. During UAT, users perform various tasks and provide feedback on usability,
functionality, and overall user experience. This testing phase aims to validate that the
platform aligns with user requirements before deployment, helping to ensure user satisfaction
and reduce the risk of post-deployment issues.

5.5. DEPLOYMENT

Deployment is the final phase in the software development lifecycle where the web-based
learning platform is released into the production environment for use by end-users. This
process involves configuring the production environment, migrating data, and performing
final checks to ensure the platform is ready for use. Successful deployment marks the
culmination of the development process and signifies the platform's transition to its
operational phase. Ongoing monitoring and support are essential post-deployment to address
any issues and maintain the platform's performance and stability.

28
CHAPTER VI

CONCLUSION

In conclusion, the development of a web-based learning platform involves


careful planning, implementation, and testing to ensure its success. Through the
detailed analysis of requirements, thorough design and development, rigorous
testing, and user validation, the platform can meet the needs of its users
effectively.

The integration of various features, such as user authentication, content


management, interactive learning modules, and assessment tools, enhances the
platform's functionality and usability. Additionally, implementing robust
security measures and maintaining data integrity are paramount to protect users'
information and ensure a safe learning environment.
Furthermore, continuous improvement and adaptation to user feedback are
essential for the platform's long-term success. Regular updates, feature
enhancements, and responsiveness to changing educational needs contribute to
its relevance and effectiveness over time.

Ultimately, the web-based learning platform serves as a valuable resource for


learners, educators, and institutions alike, facilitating access to quality education
and fostering lifelong learning opportunities. By leveraging technology to
support and enhance the learning experience, the platform plays a significant
role in advancing education and empowering individuals worldwide.

29
CHAPTER VII

BIBILOGRAPHY

7.1. WEBSITE REFRENCES

www.google.com

www.reactjs.dev

https://stackoverflow.com

www.chatgpt.com

www.githubcopilot.com

www.youtube.com

30
APPENDIX

SAMPLE SCREEN SHOT

Select Topic

Select Aptitude

Select subtopic

31
Answer the question:

Click next:

Answer next question:

32
SOURCE CODE
JS:
import React, { useState } from 'react';
import './App.css';

const questions = {
aptitude: {
Average: [
{
question: "What is the average of first five multiples of 12?",
options: ["36", "38", "40","42"],

explanation: "Average = 12∗(1+2+3+4+5) ∗


correctAnswer: "36",

1/5=12*15*1/5=12*3=36."
},
{
question: "Average of five numbers is 20. If each number is
multiplied by 2, what will be the new average?",
options: ["30", "40", "50","60"],

explanation: "The new average = Initial average ∗2=20*2=40."


correctAnswer: "40",

},
{
question: "10 typists can type 600 pages in 8 hours. Find the
average number of pages typed by each typist in an hour.",
options: ["7 pages", "7.5 pages", "8 pages","8.5 pages"],
correctAnswer: "7.5 pages",
explanation: "Total pages typed by 10 typists in 8 hours = 600,
Pages typed by one typist in 8 hours = 600/10 = 60 pages, Pages typed
by one typist in one hour = 60/8 = 7.5 pages."
}
],
Problems_on_Ages: [
{
question: "A mother is twice as old as her son. If 20 years
ago, the age of the mother was 10 times the age of the son, what is the
present age of the mother?",
options: ["38 years", "40 years", "43 years","45 years"],
correctAnswer: "45 years",
explanation: "Let the age of son = X years,∴Age of mother would
be =2X,As per question 20 years ago;10 (X -20) = 2X - 20,10X - 200 = 2X
- 20,10X - 2X= - 20 + 200,8X = 180,X=180/8= 22.5 years,∴Age of mother =
22.5 * 2 = 45 years"
},

33
{
question: "The ratio of the ages of Minu and Meera is 4:2. If
the sum of their ages is 6 years, find the ratio of their ages after 8
years.",
options: ["8.6", "6.5","6.4","7.5"],
correctAnswer: "6.5",
explanation: "Let the age of Minu is 4X and age of Meera 2X;As
per question; 4X + 2X = 6,6X = 6,X = 1,∴Minu's age = 4*1= 4
years,Meera's age = 2*1= 2 years.Ratio of their ages after 8 years;=
(4+8): (2+8)= 12: 10= 6:5"
},
{
question: " Ten years ago, the sum of ages of a father and his
son was 34 years. If the ratio of present ages of the father and son is
7:2, find the present age of the son.",
options: ["12 years","11 years", "10 years","8 years"],
correctAnswer: "12 years",
explanation: "Let the present age of the father is 7X and
present age of son is 2X.As per question, ten years ago;(7X - 10)+ (2X
- 10) = 34.7X - 10 + 2X - 10= 34.9X = 34 + 20.9X = 54,X = 6.∴Present
age of son = 2 * 6= 12 years"
}
],
calender: [
{
question: "If January 1, 1996, was Monday, what day of the week
was January 1, 1997?",
options: ["Thursday", "wednesday", "friday","sunday"],
correctAnswer: "wednesday",
explanation: "The year 1996 is divisible by 4, so it is a leap
year with 2 odd days.As per the question, the first day of the year
1996 was Monday, so the first day of the year 1997 must be two days
after Monday. So, it was Wednesday."
},
{
question: "On February 5, 1998, it was Thursday. The day of the
week on February 5, 1997, was",
options: ["wednesday", "monday","friday","sunday"],
correctAnswer: "wednesday",
explanation: "1997 was an ordinary year, it had 1 odd day. So,

February 5, 1997. ∴ Thursday on February 5, 1998, would be one day


the day on February 5, 1998, would be one day beyond the day on

beyond the day on February 5, 1997, so the day on February 5, 1997, was
Wednesday."
},
{
question:"Today is Wednesday, after 68 days, it will be",
options: ["friday","sunday", "monday","thursday"],

34
correctAnswer: "monday",
explanation: "Each day of a week is repeated after 7 days, so
after 70 days, it will be Wednesday.Therefore, after 68 days, it will
be Monday."
}
],
percentage: [
{
question: "40 % of 280 =?",
options: ["112", "116", "115","120"],
correctAnswer: "112",

= 280. ∴ 40 % of 280 = 40/100* 280 = 112"


explanation: "x % of a given number 'n'= x/100*n. x = 40 and n

},
{
question: "Whose 35% is 280?",
options: ["750", "700","800","850"],
correctAnswer: "800",
explanation: "Let the required value is x.As per question; 35%
of x = 280. 35/100*x=280, x=280*100/35=800"
},
{
question:"45 *? = 35% of 900",
options: ["6","7", "9","4"],

explanation: "Let the missing value is x. ∴ 45 * x =


correctAnswer: "7",

35/100*900. 45 x = 315, x=315/45=7"


}
]
},
logicalReasoning: {
Numberseries: [
{
question: "Find the next number in the series 13, 17, 19, 23,
29, _.",
options: ["33", "35", "31","37"],
correctAnswer: "31",
explanation: "The given series consists of consecutive prime
numbers in increasing order, so the next number (prime number) would be
31."
},
{
question: "Find the next number in the series 4, 6,8,9,10,12,
_.",
options: ["14", "13", "15","16"],
correctAnswer: "31",

35
explanation: "The given series consists of consecutive prime
numbers in increasing order, so the next number (prime number) would be
31."
},
{
question: "What comes next in the series: 1, 1, 2, 3, 5, ...?",
options: ["6", "7", "8"],
correctAnswer: "8",
explanation: "This is the Fibonacci series where each number is
the sum of the two preceding ones: 1, 1, 2, 3, 5, 8."
}
],
Letterseries: [
{
question: "RQP, ONM, _, IHG, FED, find the missing letters.",
options: ["CDE", "LKI", "LKJ","BAE"],
correctAnswer: "LKJ",
explanation: "The series consists of letters in reverse
alphabetical order. Therefore, the missing letters are LKJ.."
},
{
question: "CKDL, EKFL, GKHL, _, KKLL, find the missing
letters.",
options: ["IJKL","IKJL","MNOP","MNPQ"],
correctAnswer: "IKJL",
explanation: "The second and fourth letters (K and L) in the
series are static. The first and third letters are in alphabetical
order starting with the letter C. So, the missing letters are IKJL."
},
{
question: " Find the missing letters in the series, GAH, IBJ,
KCL, MDN, _.",
options: ["OEG","OEP","OEB","OEA"],
correctAnswer: "OEP",
explanation: "The middle letters in this series follow the
order ABCDE. The first and third letters are in alphabetical order
starting with the letter G."
}
],
Bloodrelations: [
{
question: "Pointing to a photograph, a man said, 'I have no
brother, and that man's father is my father's son.' Whose photograph
was it?",
options: ["His son", "His own", "His father","His nephew"],
correctAnswer: "His son",
explanation: "The narrator has no brother, so he is the only
son of his father, and his father's son is he himself. Hence, the

36
narrator is the father of the man in the photograph, so the man in the
photograph is his son."
},
{
question: "Pointing to a photograph of a man, Pooja said,'He is
the only son of the mother of my sister's brother'. How is that person
related to Pooja?",
options: ["Father","Maternal Uncle","Cousin","None of these"],
correctAnswer: "None of these",
explanation: "The person in the photograph is the only son of
the mother of Pooja's sister's brother. So, he is the brother of
Pooja."
},
{
question: " Sunil is the brother of Anil. Anil is the son of
Sohan. Meena is Sohan's mother. How is Sunil related to Meena? ",
options: ["Son","Grandson","Brother","Grandfather"],
correctAnswer: "Grandson",
explanation: "Sunil is the brother of Anil and Anil is the son
of Sohan. So, Sunil is the son of Sohan. Now, Meen is the mother of
Sohan. So, Sunil is the grandson of Meena."
}
],
Coding_Decoding: [
{
question: "If in a certain language, NOIDA is coded as OPJEB,
how is DELHI coded in that language?",
options: ["CDKGH", "EFMIJ", "FGNIJK","IHLED"],
correctAnswer: "EFMIJ",
explanation: "Each letter in the word NOIDA is moved one step
forward to form the code OPJEB. So, in DELHI, D will be coded as E, E
as F, L as M, H as I, I as J. Thus, the code becomes EFMIJ. "
},
{
question: "If HOT is coded as GNS, How is COLD coded?",
options: ["BNKC","DPME","EQNF","FROG"],
correctAnswer: "BNKC",
explanation: "The first letter of the word PAPER is moved one
step forward and the next two letters have exchanged their positions
and so on. So, following the same coding, T will be coded as U, A will
be coded as B, B will be coded as A, L will be coded as E and E will be
coded as L. Thus, TABLE is written as UBAEL in that code."
},
{
question: " In a certain code, PAPER is written as QPARE. How
is TABLE written in that code? ",
options: ["UBALE","UBCMF","UZAKD","UBAEL"],
correctAnswer: "UBAEL",

37
explanation: "Sunil is the brother of Anil and Anil is the son
of Sohan. So, Sunil is the son of Sohan. Now, Meen is the mother of
Sohan. So, Sunil is the grandson of Meena."
}
]
}
};

function App() {
const [selectedTopic, setSelectedTopic] = useState(null);
const [selectedSubTopic, setSelectedSubTopic] = useState(null);
const [questionIndex, setQuestionIndex] = useState(0);
const [selectedAnswer, setSelectedAnswer] = useState(null);
const [showExplanation, setShowExplanation] = useState(false);

const handleTopicChange = (topic) => {


setSelectedTopic(topic);
setSelectedSubTopic(null);
setQuestionIndex(0);
setSelectedAnswer(null);
setShowExplanation(false);
};

const handleSubTopicChange = (subTopic) => {


setSelectedSubTopic(subTopic);
setQuestionIndex(0);
setSelectedAnswer(null);
setShowExplanation(false);
};

const handleAnswerSelect = (answer) => {


setSelectedAnswer(answer);
setShowExplanation(true);
};

const getQuestions = () => {


if (selectedTopic && selectedSubTopic) {
return questions[selectedTopic][selectedSubTopic];
}
return [];
};

const nextQuestion = () => {


if (questionIndex < getQuestions().length - 1) {
setQuestionIndex(questionIndex + 1);
} else {
setQuestionIndex(0);
}

38
setSelectedAnswer(null);
setShowExplanation(false);
};

const currentQuestion = getQuestions()[questionIndex];

return (
<div className="App">
<header className="App-header">
<h1>Learn Aptitude and Logical Reasoning, </h1>
<div className="topics">
<button onClick={() =>
handleTopicChange('aptitude')}>Aptitude</button>
<button onClick={() =>
handleTopicChange('logicalReasoning')}>Logical Reasoning</button>
</div>
{selectedTopic && (
<div className="subtopics">
{Object.keys(questions[selectedTopic]).map(subTopic => (
<button key={subTopic} onClick={() =>
handleSubTopicChange(subTopic)}>{subTopic}</button>
))}
</div>
)}

{selectedSubTopic && currentQuestion && (


<div className="questions">
<div className="question">
<p>{currentQuestion.question}</p>
{currentQuestion.options.map((option, i) => (
<button
key={i}
onClick={() => handleAnswerSelect(option)}
disabled={showExplanation}
className={selectedAnswer === option ? 'selected' :
''}
>
{option}
</button>
))}
{showExplanation && (
<div>
<p className={selectedAnswer ===
currentQuestion.correctAnswer ? 'correct' : 'wrong'}>
{selectedAnswer === currentQuestion.correctAnswer ?
`Correct! ${currentQuestion.explanation}` : `Wrong! $
{currentQuestion.explanation}`}
</p>

39
<button onClick={nextQuestion}>Next Question</button>
</div>
)}
</div>
</div>
)}
</header>
</div>
);
}

export default App;

CSS:
body {
margin: 0;
font-family: Arial, Helvetica, sans-serif;
background-size: cover;
}

.App {
text-align: center;
color: #fff;
}

.App-header {
background-color: rgba(0, 0, 0, 0.7);
padding: 20px;
border-radius: 10px;
margin: 20px auto;
max-width: 800px;
}

.topics button, .subtopics button, .questions button {


margin: 10px;
padding: 10px 20px;
border: none;
border-radius: 5px;
cursor: pointer;
transition: background-color 0.3s;
}

40
.topics button {
background-color: #007BFF;
color: white;
}

.subtopics button {
background-color: #28A745;
color: white;
}

.questions button {
background-color: #FFC107;
color: black;
}

.questions button.selected {
background-color: #FF5733;
color: white;
}

.correct {
color: #28A745;
}

.wrong {
color: #DC3545;
}

41

You might also like