Engineering Students' EdTech Project
Engineering Students' EdTech Project
INSTITUTE OF ENGINEERING
PROJECT REPORT
ON
STUDYNOTION
[CODE NO: CT 755]
BY:
ANURAG JHA (BCT76015)
ARBIN CHAND (BCT76017)
ARJIN JOSHI (BCT76019)
KUSHAL BANSAL (BCT76036)
KATHMANDU, NEPAL
2080
TRIBHUVAN UNIVERSITY
INSTITUTE OF ENGINEERING
KATHMANDU ENGINEERING COLLEGE
STUDYNOTION
BY
KATHMANDU, NEPAL
FALGUN 2080
TRIBHUVAN UNIVERSITY
KATHMANDU ENGINEERING COLLEGE
DEPARTMENT OF COMPUTER ENGINEERING
ii
TRIBHUVAN UNIVERSITY
INSTITUTE OF ENGINEERING
Kathmandu Engineering College
Department of Computer Engineering
CERTIFICATE
The undersigned certify that they have read and recommended to the Department of
Computer Engineering, a major project work entitled “StudyNotion” submitted by
(Anurag Jha-76015, Arbin Chand-76017, Arjin Joshi-76019, Kushal Bansal-76036) in
the partial fulfillment of the requirements for the Degree of Computer Engineering.
Pulchowk Campus
(Head of Department)
iii
ACKNOWLEDGEMENT
First of all, we would like to acknowledge our deep sense of gratitude to Institute of
Engineering for including this major project in our course, as this has been very helpful
for us to obtain proper insights on the development of software, web applications and
micro-frontends. Similarly, we are very thankful to the Department of Computer
Engineering, Kathmandu Engineering College (Kalimati) for guiding us throughout this
project.
We are highly indebted to our respected supervisor and major project coordinator as
well as our year coordinator Er. Sharad Chandra Joshi who has been overseeing our
project and documentation with his expertise about how a project must be developed
and helping us with all the necessary details and supervision he has provided us so far.
Also, we extend a special thanks to Er. Sudeep Shakya, Head of Computer
Department. We can’t thank the teachers of Kathmandu Engineering College
Department of Computer Engineering enough for providing us with the invaluable
supervision and necessary information for the successful completion of the project.
We are highly obliged to express our thanks towards our parents and friends for their
kind support, co-operation and encouragement which has helped us a lot throughout
our project.
iv
ABSTRACT
The educational technology is one of the major sectors which has expanded over the
years post the Covid-19 pandemic outbreak. As it was difficult to attend physical
classes for the students the education shifted to distance learning utilizing the
educational technology applications. Though there are plenty of applications that are
being used currently for information and educational content teaching and learning,
there is a niche and that is coding, science, technology, engineering and mathematics
education, besides there are also subjects which do require extensive attention and
dedication from the students. In context of attending the online class the students may
venture into other tabs or applications leading to the decrease in effectiveness of
instructor also students may just join the class and leave their screen which are few
challenges we prefer to solve. Moreover, with the abilities of various frameworks a
more complete web application for teaching and learning was required. Also, students
learn better when they do peer to peer study, the peer-to-peer group study was
integrated where the students can collaborate and learn together. The data security and
authentication were given much priority and frameworks such as React, Node and
Express were used to make this application use of Mongodb as the database helps it in
terms of scalability. Thus, this project serves as both a collaboration application and
teacher to student learning platform.
v
TABLE OF CONTENTS
ACKNOWLEDGEMENT iv
ABSTRACT v
TABLE OF CONTENTS vi
LIST OF ABBREVIATIONS ix
CHAPTER 1: INTRODUCTION 1
vi
3.3.1 FLOWCHART FOR STUDENT 20
3.3.2 FLOWCHART FOR TEACHER 21
3.3.3 FLOWCHART FOR ADMIN 22
3.4 UML USE CASE DIAGRAM 23
3.5 ENTITY RELATIONSHIP DIAGRAM 25
3.6 DATA FLOW DIAGRAM 27
3.7 TOOLS USED 28
3.7.1 NODE.JS 28
3.7.2 MONGODB 29
3.7.3 EXPRESS.JS 30
3.7.4 JWT (JSON WEB TOKENS) 31
3.7.5 BCRYPT 33
3.7.6 MONGOOSE 34
3.7.7 REACTJS 35
3.7.8.FIGMA 36
3.7.9. POSTMAN 38
3.8 VERIFICATION AND VALIDATION 38
4. EPILOGUE 41
BIBLIOGRAPHY 49
SCREENSHOTS 50
vii
LIST OF FIGURES
viii
LIST OF ABBREVIATIONS
UI: User-Interface
ix
CHAPTER 1: INTRODUCTION
The COVID-19 pandemic acted as a catalyst for the rapid adoption of EdTech solutions,
as educational institutions had to quickly transition to remote learning models. This
sudden shift emphasized the importance of digital tools and platforms in ensuring the
continuity of education. McKinsey & Company reported a significant twentyfold
increase in the usage of educational technology during the pandemic, highlighting the
critical role it played in enabling remote instruction, collaboration, and assessment.
Research studies have consistently shown the positive impact of EdTech on learning
outcomes. For example, personalized learning software has been found to enhance
student performance in subjects such as mathematics. These software programs adapt
to individual student needs, providing targeted instruction, immediate feedback, and
personalized learning paths. This tailored approach helps students grasp difficult
concepts more effectively and improve their academic performance.
Mobile learning has also emerged as a significant trend in EdTech. With the ubiquity
of smartphones and tablets, learners can access educational content anytime and
1
anywhere. The global mobile learning market has witnessed substantial growth, with a
projected value of $70.4 billion by 2020. Mobile learning offers flexibility,
convenience, and personalized learning experiences, enabling learners to engage with
educational content at their own pace and in their preferred environment.
Adaptive learning technologies have gained traction for their ability to customize the
learning experience to the individual needs and preferences of learners. These
technologies leverage data analytics and artificial intelligence to analyze learner
behavior, performance, and learning styles. By providing personalized
recommendations, adaptive learning platforms empower learners to focus on their areas
of weakness, reinforce their strengths, and progress at a pace that suits them best.
Numerous studies have shown that adaptive learning leads to increased engagement,
motivation, and academic achievement.
Another notable trend in the EdTech market is the adoption of virtual reality (VR) and
augmented reality (AR) technologies. These immersive technologies offer unique
learning experiences by creating virtual environments or overlaying digital content onto
the real world. VR and AR enable students to explore virtual simulations, conduct
virtual experiments, and interact with three-dimensional models, enhancing their
understanding and retention of complex concepts. The global market for VR in
education is projected to reach $6 billion by 2022, indicating the growing interest in
these technologies for educational purposes.
Overall, the growing market and trends in educational technology demonstrate the
increasing recognition of the value that technology brings to education. EdTech has the
potential to enhance access, engagement, and outcomes for learners by providing
personalized learning experiences, facilitating remote instruction, and leveraging
immersive technologies. As technology continues to advance, the EdTech landscape is
expected to evolve further, revolutionizing the way education is delivered and
experienced.
Educational technology (EdTech) has ushered in a new era of learning, reaching and
impacting millions of students worldwide. The scale of student engagement with
EdTech is vast and continually expanding, revolutionizing education across various
levels and contexts.
2
Massive Open Online Courses (MOOCs) have emerged as a prominent form of EdTech,
providing learners with access to a wide range of courses from leading universities and
institutions. Platforms like Coursera, edX, and Udemy have attracted millions of
students globally, enabling them to pursue learning opportunities that were previously
inaccessible. These platforms offer diverse subjects, including computer science,
business, humanities, and more, empowering learners to acquire new skills and
knowledge at their own pace.
Learning Management Systems (LMS) have become integral tools for educational
institutions, facilitating the management and delivery of digital courses. LMS platforms
such as Canvas, Moodle, and Blackboard are widely adopted, serving as central hubs
for students and educators to access course materials, submit assignments, engage in
discussions, and receive feedback. These systems have transformed the traditional
classroom experience, enabling students to engage with content and interact with
instructors and peers in virtual learning environments.
Virtual schools and online programs have witnessed significant growth, providing
flexible and accessible education options for K-12 students. These programs cater to
students with various needs, including those seeking an alternative to traditional brick-
and-mortar schools, students in remote areas, and those requiring specialized education.
Virtual schools offer comprehensive curricula, interactive lessons, and support services,
allowing students to learn from the comfort of their homes while maintaining a
structured educational experience.
The proliferation of mobile devices has led to the rise of mobile learning, transforming
education into a portable and personalized experience. Educational apps and platforms
have made learning accessible anytime, anywhere, catering to learners of all ages.
Mobile learning apps provide a wide range of educational content, interactive exercises,
and personalized learning experiences. Students can access educational resources,
engage in practice exercises, and receive instant feedback, enhancing their
understanding and retention of concepts. The convenience and ubiquity of mobile
devices have democratized access to education, bridging gaps in digital literacy and
expanding learning opportunities for students worldwide.
3
In higher education, online courses and digital resources have revolutionized the
learning landscape. Students can pursue degrees or certifications remotely, allowing
them to balance education with other commitments. The flexibility offered by online
education has attracted a growing number of students, enabling them to access high-
quality instruction from renowned institutions. Online courses provide interactive
multimedia content, discussion forums, and collaborative projects, fostering an
engaging and immersive learning experience. Additionally, digital resources, such as
e-books, research databases, and virtual laboratories, augment traditional learning
materials, expanding students' access to a wealth of information and research
opportunities.
Study Notion, a cloud-based Ed-Tech application developed using the MERN stack,
incorporates these principles to provide a comprehensive and dynamic learning
environment. By integrating MongoDB, Express.js, React, and Node.js, Study Notion
ensures efficient data management, seamless communication between server and client-
side components, interactive user interfaces, and high-performance server-side
execution.
4
Collaboration is another crucial aspect that Study Notion emphasizes. Through its
robust collaboration features, students can engage in real-time discussions, form study
groups, and share resources, fostering a collaborative learning environment. Moreover,
Study Notion leverages intelligent algorithms to provide personalized learning
experiences, analyzing user data and offering tailored recommendations and study
plans to maximize individual learning outcomes.
By combining these features, Study Notion aims to overcome the challenges faced by
other EdTech platforms, offering a comprehensive, user-friendly, and adaptive learning
platform. It empowers students to efficiently organize their study materials, collaborate
with peers, engage in interactive coding exercises, and receive personalized guidance.
Ultimately, Study Notion revolutionizes the educational landscape by leveraging
technology to enhance the learning experience and empower students in their
educational journey.
The traditional methods of education often fall short in providing students with a truly
seamless and interactive learning experience, while instructors face limitations in
reaching and connecting with learners on a global scale. Existing ed-tech platforms lack
the versatility and intuitive features necessary to deliver engaging and immersive
educational content. Moreover, the absence of a well-designed API and comprehensive
testing processes hinders the platform's performance and reliability, leading to a subpar
user experience.
5
1.3 OBJECTIVES
This project was created with the purpose to fulfill the following objectives:
The scope of StudyNotion is vast and encompasses various aspects of education and
learning. It is aimed towards students at all educational levels, from elementary school
through college and beyond. The platform seeks to support a variety of topics for coding
education. By offering a seamless and interactive learning experience, StudyNotion
intends to engage students in a way that traditional education methods often fail to
achieve. StudyNotion gives teachers a platform to share their knowledge with students
all around the world and engage with them. Video lectures, interactive presentations,
and in-depth study materials are just a few examples of the educational content that
instructors can produce and distribute. The applications of StudyNotion are numerous.
In traditional classrooms, StudyNotion can be used as a supplementary tool to enhance
student engagement and comprehension.
6
CHAPTER 2: LITERATURE REVIEW
StudyNotion is a versatile and intuitive ed-tech platform that aims to revolutionize the
way students learn and instructors teach. In this literature review, we explore the
existing research and literature surrounding similar ed-tech platforms, the impact of
interactive and seamless learning experiences, the importance of global connectivity in
education, and the effectiveness of personalized learning environments. By examining
these relevant studies, we gain valuable insights into the potential benefits and
implications of StudyNotion.
Ed-Tech Platforms: Numerous studies have examined the impact of ed-tech platforms
on education. Research by Dichev and Dicheva highlights the advantages of integrating
technology in education, including increased student engagement, improved learning
outcomes, and enhanced collaboration [1]. Additionally, studies such as that by Means
et al. demonstrate the effectiveness of ed-tech platforms in facilitating personalized and
adaptive learning experiences, catering to individual student needs [2]. EdTech
encompasses various components, including hardware, software, online platforms, and
digital tools, all aimed at enhancing educational experiences. One of the key advantages
of EdTech is its ability to provide improved access to education, personalized learning
experiences, and increased student engagement. It aligns with high-impact educational
practices (HIPs) identified by Kuh, which include active learning, collaborative
learning, and experiential learning [3]. EdTech supports these practices by facilitating
interactive and participatory learning experiences. However, implementing EdTech
comes with its challenges, such as ensuring equitable access to technology, providing
adequate teacher training, addressing data privacy concerns, and ensuring ongoing
support and maintenance. Despite these challenges, successful case studies demonstrate
the positive impact of EdTech on student outcomes. Looking ahead, emerging trends
in EdTech, such as artificial intelligence, virtual reality, gamification, and adaptive
learning, have the potential to further transform education [4]. To fully harness the
transformative potential of EdTech, ongoing research, evaluation, and collaboration are
crucial. In conclusion, EdTech holds promise in improving teaching and learning
outcomes, and continued exploration and implementation are key to realizing its full
potential. The importance of interactive learning experiences is widely acknowledged
7
in educational research. Kuh [3] emphasizes the value of active learning approaches,
stating that engagement and interaction positively affect student achievement.
Furthermore, studies by Mayer [5] and Johnson et al. [4] show that interactive
educational materials, such as videos, simulations, and quizzes, enhance
comprehension, retention, and critical thinking skills. Global connectivity and
collaboration have become essential in the modern education landscape. Research by
Voogt et al. emphasizes the significance of connecting students and instructors across
geographical boundaries to foster cultural understanding and collaboration [6]. The
study underscores the potential of online platforms to facilitate global interactions,
enabling students to learn from diverse perspectives and cultures. Personalized
Learning Environments: Personalized learning environments have gained attention as
effective educational approaches. Hattie highlights the importance of providing
individualized support to students, tailoring instruction to their specific needs, interests,
and abilities [7]. Research by Pane et al. supports the notion that personalized learning
environments lead to improved academic outcomes, motivation, and student
engagement [8]. The study found that when students are provided with personalized
learning experiences tailored to their individual needs, they tend to achieve better
academic results. Personalized learning allows students to progress at their own pace,
receive targeted instruction, and explore content that aligns with their interests and
strengths. This individualized approach to learning not only enhances academic
performance but also fosters intrinsic motivation by giving students a sense of
ownership and autonomy over their educational journey. Moreover, personalized
learning environments have been shown to significantly increase student engagement.
By catering to students' unique learning preferences and styles, personalized learning
captures their interest and promotes active participation. Students are more likely to be
motivated to learn when they feel a sense of relevance and connection to the material.
The ability to explore topics that align with their passions and delve deeper into areas
of interest cultivates a love for learning and drives sustained engagement. Furthermore,
personalized learning environments provide opportunities for teachers to build stronger
relationships with their students. By understanding individual student needs and
tailoring instruction accordingly, teachers can provide targeted support, offer timely
feedback, and establish a supportive and nurturing learning environment. This
8
personalized attention and guidance contribute to students' overall satisfaction and
academic success [8].
StudyNotion aligns with these findings by offering a seamless and interactive learning
experience, global connectivity for instructors and learners, and personalized learning
paths. By leveraging technology and incorporating these research-backed approaches,
StudyNotion has the potential to positively impact student engagement, learning
outcomes, and instructor-student collaboration. Future studies can further explore the
effectiveness and implementation of StudyNotion in diverse educational contexts,
validating its impact on teaching and learning. Future studies could focus on evaluating
the impact of StudyNotion on various educational contexts and populations. This could
include examining its effectiveness in different subject areas, grade levels, and diverse
learner profiles. Additionally, investigating the integration of StudyNotion into existing
educational systems and assessing the training and support required for instructors
would provide valuable insights for successful implementation.
2.1.1 MERO.SCHOOL
2.1.2 UNACADEMY
Coursera is a leading online learning platform that offers a wide range of courses from
top universities and institutions around the world. With a vast catalog of subjects,
Coursera provides learners with the opportunity to acquire new skills, earn
certifications, and advance their careers. The platform's user-friendly interface and
flexible learning options make it accessible to a global audience. However, some
courses on Coursera require a fee for access to graded assignments and certificates.
Overall, Coursera has revolutionized online education by providing high-quality
courses and fostering a lifelong learning approach for individuals seeking to enhance
their knowledge and professional development.
2.1.4 EDX
EdX.com is an online learning platform that offers a vast array of courses from top
universities and institutions around the world. With over 30 million learners, EdX
provides opportunities for individuals to enhance their knowledge and skills in various
fields, including computer science, business, humanities, and more. Through its user-
friendly interface, learners can access high-quality educational content, engage with
interactive course materials, and collaborate with fellow students in virtual classrooms.
EdX also offers certificate programs and even degree programs from prestigious
universities. It strives to make education accessible and affordable for all, empowering
learners to advance their careers and pursue lifelong learning.
2.1.5 UPGRAD
UpGrad.com is an online education platform that aims to bridge the gap between
industry and academia. With a learner base of millions, UpGrad offers industry-relevant
programs in collaboration with renowned universities and industry experts. It provides
a wide range of courses in fields such as data science, digital marketing, product
management, and more. Through its comprehensive curriculum, personalized
mentorship, and real-world projects, UpGrad equips learners with the skills and
knowledge needed to excel in today's competitive job market. With a focus on practical
10
learning and career advancement, UpGrad empowers individuals to upskill, reskill, and
stay relevant in their professional journey.
2.1.6 UDEMY
Udemy is an online learning platform that offers a vast library of courses on a wide
range of subjects. With over 155,000 courses and 70+ languages available, Udemy
provides learners with the opportunity to acquire new skills, enhance their knowledge,
and pursue personal or professional development. The platform hosts courses taught by
expert instructors from around the world, ensuring high-quality content and practical
learning experiences. Udemy courses encompass diverse topics, including business,
technology, health and fitness, arts and crafts, and much more. Learners can access
course materials at their own pace, making it flexible and convenient for individuals
with varying schedules. With millions of students and a vibrant community, Udemy
has become a go-to platform for lifelong learners seeking accessible and affordable
education.
Mero.school, and Unacademy, like many ed-tech platforms, face certain challenges that
impact user experience. Mero.school encounters difficulties in handling significant
volumes of traffic, resulting in sluggish performance. Beside while teaching the coding
problems there is no availability of online compilers as a result the students have to
venture out onto another window or device to do the problem as tasked to students by
the instructor.
11
collaborative educational and professional activities. By implementing robust security
measures, StudyNotion ensures the protection of users' data and fosters trust among its
user base. StudyNotion merges features from various educational technology
applications, consolidating the use of this application as it also offers platform based
integrated development environment (IDE). This integration streamlines the user
experience, eliminating the need for users to switch between multiple applications
while promoting focus, collaboration, and efficiency.
12
CHAPTER 3: METHODOLOGY
The process began with an extensive requirement gathering phase where crucial
features and user expectations were thoroughly documented. This initial phase laid the
foundation for subsequent stages, focusing on content creation, consumption, user
interaction, and course management functionalities. Subsequently, an in-depth analysis
was conducted to outline the architectural design of the application, considering factors
like scalability, security, and user experience.
Following the design phase, the implementation involved integrating the developed
functionalities into the system. Rigorous testing was then conducted to verify the proper
functioning of the newly added features, ensuring they met the outlined requirements
and were free from critical issues. Post-deployment, continuous maintenance was
carried out, addressing any identified issues and incorporating refinements based on
user feedback.
13
The incremental model adopted for StudyNotion allows for systematic and timely
development. Although it may take more time compared to agile methodologies like
Scrum or Kanban to reach the final product, this approach ensures a stable and
functioning application at each stage of development. Through regular iterations, this
model enables tracking of progress and facilitates adjustments to accommodate
evolving requirements, contributing to the gradual evolution and enhancement of
StudyNotion's functionalities.
Following the design phase of each increment, implementation took place, where the
developed functionalities were integrated into the system. Testing was then conducted
14
to verify the proper functioning of the newly added features and components. Post-
deployment, maintenance was carried out to address any issues identified in the initial
release, ensuring the application's stability and reliability.
15
3.2.1 FRONTEND
StudyNotion's front end was crafted using Figma, a robust design tool, to conceptualize
the clean and minimalistic user interface. The designs were translated into functional
components using React, a part of the MERN stack. With React's component-based
structure, the UI elements were broken down into reusable components, ensuring
consistency and manageability. These components were integrated into the application,
aligning the design from Figma with the actual front-end implementation. Leveraging
React's capabilities and the MERN stack's data-handling features, functionalities like
data retrieval from the backend, user interactivity, and content management were
incorporated. Rigorous testing throughout the development process ensured the UI and
functionalities were in sync, allowing for refinements to create an engaging and
responsive front end for StudyNotion.
The front end of StudyNotion has all the necessary pages that an ed-tech platform
should have. Some of these pages are:
For Students:
• Homepage: This page will have a brief introduction to the platform, as well as
links to the course list and user details.
• Course List: This page will have a list of all the courses available on the
platform, along with their descriptions and ratings.
• Wishlist: This page will display all the courses that a student has added to their
wishlist.
• Cart Checkout: This page will allow the user to complete the course purchase.
• Course Content: This page will have the course content for a particular course,
including videos, and other related material.
• User Details: This page will have details about the student's account, including
their name, email, and other relevant information.
• User Edit Details: This page will allow the student to edit their account details.
16
For Teachers:
• Dashboard: This page will have an overview of the instructor's courses, as well
as the ratings and feedback for each course.
• Insights: This page will have detailed insights into the instructor's courses,
including the number of views, clicks, and other relevant metrics.
• Course Management Pages: These pages will allow the instructor to create,
update, and delete courses, as well as manage the course content and pricing.
• View and Edit Profile Details: These pages will allow the instructor to view and
edit their account details.
For Admin:
3.2.2 BACKEND
StudyNotion uses a monolithic architecture, with the backend built using Node.js and
Express.js, and MongoDB as the primary database. Monolithic architecture refers to a
design approach where all the modules of the application are combined into a single
large program, with a single codebase, to enable better control, security, and
performance.
Node.js is a popular JavaScript runtime that allowed us to run JavaScript code outside
of the browser. Express.js is a web application framework that simplified the process
of building web applications in Node.js. MongoDB is a popular NoSQL database that
allows for flexible data storage and retrieval, making it a suitable choice for complex
applications like StudyNotion.
17
Backend technologies:
18
3.2.3 DATA MODELS AND DATABASE SCHEMA
The back end of StudyNotion uses a range of data models and database schemas to
manage data, including:
1. Student schema: Includes fields such as name, email, password, and course
details for each student.
2. Instructor schema: Includes fields such as name, email, password, and course
details for each instructor.
3. Course schema: Includes fields such as course name, description, instructor
details, and media content.
The StudyNotion platform's API is designed following the REST architectural style.
The API is implemented using Node.js and Express.js. It uses JSON for data exchange
and follows standard HTTP request methods such as GET, POST, PUT, and DELETE.
19
o Response: The course with the specified ID
3. POST /api/courses: Create a new course
o Request: The course details in the request body
o Response: The newly created course
4. PUT /api/courses/:id: Update an existing course by ID
o Request: The updated course details in the request body
o Response: The updated course
5. DELETE /api/courses/:id: Delete a course by ID
o Response: A success message indicating that the course has been
deleted.
3.3 FLOWCHART
3.3.1 Flowchart for Student
20
This flowchart illustrates the journey of a user on StudyNotion. It starts from the home
page, where students can log in if they are registered or provide information for account
verification if they haven't registered before. If verified ("Yes"), they proceed to the
"Dashboard"; if not ("No"), there's an option for them to "Retry." From the
"Dashboard," students can explore courses, watch videos until they complete their
selected course. There's also an option from the "Dashboard" to purchase courses.
Students can add them to the cart and proceed for payment verification. Once payment
verification is done, they gain access to the course. This flowchart utilizes diamonds
for decision points (e.g., registered?), rectangles for processes or actions (e.g., login,
dashboard), and arrows to indicate the flow of information.
The teacher/instructor’s journey begins at the Home Page, where users arrive. From
here, they have two options: Log In (for registered users) or Sign Up (for new users).
If a user chooses to sign up, they undergo OTP Verification. If the verification is
21
successful, they proceed to the Dashboard; otherwise, they can retry the OTP
verification.
After completing an activity, the flow loops back to the dashboard. If the user has
finished their session, the journey ends.
22
3. Backend Dashboard: After logging in, users are directed to the backend
dashboard.
4. Works:
• Check activities.
• Control the category creation (Create, view and update categories).
5. End: The process concludes.
23
Actors
1. STUDENT
• The primary user of StudyNotion.
Key actions:
2. TEACHER
Actions:
3. ADMIN
Oversees system health and performance. Solely responsible for System Monitoring
and controlling the backend.
Interactions
24
3.5 ENTITY RELATIONSHIP DIAGRAM
2. Course:
o The Course entity represents educational courses offered within the
system.
o Its main attribute is the Course Number (course no.), which uniquely
identifies each course.
3. Instructors/Teachers:
o The Instructors/Teachers entity represents educators responsible for
teaching courses.
o It includes the following attributes:
25
• Password (inst_pwd): The password associated with the
instructor’s account.
4. Admin:
o The Admin entity represents system administrators who have control
over the entire platform.
o Admins manage students, instructors, and courses.
o Attributes:
Relationships:
1. Learn:
2. Teach:
3. Controls:
26
3.6 DATA FLOW DIAGRAM
27
3.7 TOOLS USED
3.7.1 NODE.JS
The Node.js is utilized to handle all the major back end of StudyNotion, the major tasks
that were implemented using the Node.js are as follows:
28
• Rapid Development: The simplicity and flexibility of Node.js contribute to
rapid development cycles. Its ease of use and adaptability aid developers in
building and iterating StudyNotion's features efficiently.
• Community Support and Updates: Node.js benefits from an active and robust
community, providing continuous updates, security patches, and support,
ensuring that StudyNotion stays current, secure, and reliable.
3.7.2 MONGODB
StudyNotion adopts MongoDB as its primary database management system. MongoDB
is a NoSQL database that offers flexibility and scalability, making it suitable for the
dynamic nature of StudyNotion's educational content and user data. It stores data in a
document-oriented manner, allowing for easy handling of complex structures and
relationships. MongoDB's scalability ensures that StudyNotion can handle the growing
volume of data and user interactions without compromising performance. The tasks
that were done using MongoDB are enlisted below:
29
• Scalability and Performance: MongoDB's scalability capabilities ensure that
StudyNotion can handle the increasing volume of educational content, user
interactions, and data without compromising performance. Its ability to
distribute data across multiple servers efficiently supports the platform's growth
and usage.
• Optimized for User Interactions: MongoDB's document-oriented nature allows
StudyNotion to efficiently manage user interactions, including discussions,
comments, user progress, and personalized recommendations. This optimizes
user experience by providing responsive and dynamic content delivery.
• Enhanced Querying and Indexing: MongoDB offers robust querying
capabilities and indexing features that optimize data retrieval. This allows
StudyNotion to quickly access and retrieve specific information, supporting
efficient search functionalities and content delivery to users.
3.7.3 EXPRESS.JS
StudyNotion utilizes Express.js, a popular web application framework built on top of
Node.js. Express.js provides a minimal and flexible set of tools and features for
building web applications. It simplifies the creation of RESTful APIs, routing,
middleware integration, and request handling. Express.js enhances the development
process by providing a clean and organized structure for the back-end codebase, making
it easier to manage and maintain. The tasks that we completed using Express.js can be
enlisted in following points:
31
and perform actions within the platform. The utilization of this tool is enlisted as
follows:
32
3.7.5 BCRYPT
StudyNotion enhances password security using Bcrypt, a popular cryptographic
algorithm. Bcrypt hashes passwords with a salt and multiple rounds of hashing, making
it computationally expensive for potential attackers to crack passwords through brute-
force or dictionary attacks. By utilizing Bcrypt, StudyNotion ensures that user
passwords are securely stored and protected against unauthorized access. The main
utilization of Bcrypt are as follows:
33
rendering it arduous for potential attackers to crack passwords via brute-force methods.
This approach ensures that user passwords are stored securely, safeguarding against
unauthorized access and aligning with industry best practices for robust data protection.
Moreover, Bcrypt's deliberate slowness drastically impedes password decryption
attempts, enhancing StudyNotion's overall platform security.
3.7.6 MONGOOSE
StudyNotion integrates Mongoose, an Object Data Modeling (ODM) library, to
simplify interactions with MongoDB. Mongoose provides a higher-level abstraction,
allowing StudyNotion to define data models, establish relationships between entities,
and perform database operations using JavaScript syntax. It enforces data consistency,
validation, and simplifies querying, enabling efficient and structured data management
within the application.
34
data. This simplification reduces the complexity of coding these operations,
leading to more efficient and structured data management.
• Streamlined Querying with JavaScript Syntax: Mongoose enables StudyNotion
to perform database queries using familiar JavaScript syntax. This feature
simplifies the querying process, making it more accessible for developers and
enhancing productivity.
• Enhanced Data Management: Overall, Mongoose enhances StudyNotion's data
management capabilities by providing a structured approach to modeling data,
defining relationships, enforcing validations, and simplifying interactions with
MongoDB. This results in a more organized and efficient handling of data
within the application.
3.7.7 REACTJS
React is a powerful JavaScript library that revolutionized the way user interfaces are
built. Its component-based architecture enables developers to create reusable UI
elements, enhancing code reusability and maintainability. React's virtual DOM
efficiently updates and renders components, reducing the need for manual DOM
manipulation. With its declarative syntax, developers can easily express how the UI
should look based on the application state, and React takes care of efficiently updating
the actual DOM to reflect those changes. This approach simplifies UI development and
helps create responsive and interactive user interfaces. React's popularity and extensive
ecosystem of libraries and tools make it a go-to choice for front-end development,
enabling developers to build robust and efficient web applications.
3.7.8.FIGMA
Figma is a cloud-based design and prototyping tool that has gained immense popularity
for its collaborative features and versatility. It allows designers to work on projects in
real-time, facilitating seamless collaboration among team members. With its robust set
of features, Figma supports the entire design process, from wireframing to high-fidelity
prototyping. This makes it an ideal choice for teams working on complex projects, such
as the development of Ed-Tech applications like StudyNotion.
37
3.7.9. POSTMAN
Postman API serves as a robust tool for developers to streamline the creation, testing,
and management of APIs. It offers a comprehensive suite of features accessible
programmatically, enabling seamless integration into various development workflows.
Through its RESTful interface, developers can interact with Postman's functionalities,
facilitating automation and extensibility. Key features of the Postman API include
automated testing, collection management, environment configuration, monitoring, and
documentation generation.
Verification involves a series of activities that focus on assessing whether the software
product accurately implements the defined specifications and adheres to the established
standards. It ensures that each component of StudyNotion, from its individual
functionalities to the integrated modules, aligns with the predetermined requirements
and operates as expected. This phase involves rigorous testing, reviews, and inspections
to detect and rectify any discrepancies between the actual implementation and the
intended design.
38
Both verification and validation are indispensable processes that work in conjunction
to guarantee the success and reliability of StudyNotion. The subsequent points will
highlight the specific steps and methodologies employed in the verification and
validation phases of StudyNotion, elucidating the meticulous measures taken to ensure
a robust, user-friendly, and efficient Ed-tech platform.
Verification Steps:
39
Validation Steps
40
4. EPILOGUE
Figure 4.1.3: View of the multimedia content i.e video lecture content.
Implemented multimedia support for videos, images, and interactive quizzes to enhance
engagement. Introduced customized learning features to motivate and engage users
during their learning process.
41
4.1.4 Collaborative Tools
42
Figure 4.1.4 (c): Student's progress tracking.
Integrated Razorpay which allows the easy and secured purchase of course. Contains
the students course progress tracking.
Figure 4.1.6 (a) Denied backend category creation while using Postman.
43
Figure 4.1.6 (b) The admin login success from backend API using Postman.
44
define well-defined endpoints for content creation, access, and user interaction,
enabling efficient data exchange and interaction within the platform. The integration of
APIs ensures that StudyNotion remains scalable and adaptable to future enhancements
and integrations with third-party services. The postman is utilized to create an access
for the admin where in admin is able to update course.
StudyNotion leverages MongoDB, a NoSQL database, for its data storage needs,
ensuring scalability and flexibility. Unlike traditional relational databases, MongoDB
is schema-free, allowing for dynamic data modeling and adaptation to evolving content
and user requirements. This schema-free nature enables StudyNotion to accommodate
diverse content types and user interactions without constraints, facilitating seamless
platform evolution and growth.
45
4.1.8 IDE
StudyNotion's Integrated Development Environment (IDE) seamlessly integrates with
Programmiz's website, redirecting users to the platform to utilize its compiler. This
collaboration enables students to access a comprehensive coding environment without
leaving StudyNotion. By leveraging Programmiz's compiler through this integration,
StudyNotion facilitates smooth coding experiences, empowering students to write,
compile, and test code effortlessly within the platform. This approach promotes real-
time collaboration and feedback among students and instructors, enriching the learning
experience and fostering hands-on coding practice directly within StudyNotion.
4.2 CONCLUSION
In summary of our report, StudyNotion draws inspiration from Notion's collaborative
functionalities but introduces tightly coupled data control mechanisms to maintain a
focused learning environment. Through robust authentication protocols, StudyNotion
ensures students remain engaged in classroom activities, fostering attentiveness and
participation. This emphasis on centralized control enables educators to effectively
manage student interactions and content access, enhancing overall educational quality.
The platform facilitates student collaboration through intuitive features, allowing for
group study sessions and resource sharing. Additionally, StudyNotion incorporates
compilers for coding practice, providing students with hands-on experience and skill
development opportunities. By integrating diverse educational resources, including
multimedia content and interactive exercises, StudyNotion caters to different learning
styles and preferences. StudyNotion's strength lies in its comprehensive approach,
seamlessly combining elements from various educational tools and platforms into a
unified system. This integration streamlines the learning process, simplifies
administrative tasks, and enhances the efficiency of online education. Overall,
StudyNotion represents a significant advancement in educational technology,
empowering students to learn effectively and collaboratively in the digital age.
46
4.3 FUTURE ENHANCEMENTS
The future enhancements for StudyNotion include the following features:
47
REFERENCES
[1] C. Dichev and D. Dicheva, "Gamifying education: what is known, what is believed
and what remains uncertain: a critical review," International Journal of Educational
Technology in Higher Education, vol. 14, no. 1, p. 9, 2017. [Online]. Available:
https://doi.org/10.1186/s41239-017-0042-5
[3] G. D. Kuh, "High-impact educational practices: What they are, who has access to
them, and why they matter," Association of American Colleges and Universities, 2008.
[Online]. Available: https://www.aacu.org/leap/hips
[4] R. E. Mayer, Multimedia learning (2nd ed.). Cambridge University Press, 2009.
[5] L. Johnson et al., "NMC/CoSN Horizon Report: 2014 K-12 Edition," The New
Media Consortium, 2014. [Online]. Available: https://library.educause.edu/-
/media/files/library/2014/2/hr2014.pdf
48
BIBLIOGRAPHY
G. Dawson, The EdTech Startup Handbook: Everything You Need to Know to Design,
Develop, and Deploy Your Educational Technology Startup, Stylus Publishing, 2020.
S. Hoque and H. Singh, "MERN Quick Start Guide: Build web applications with
MongoDB, Express.js, React, and Node," Packt Publishing, 2018.
V. Subramanian, "Pro MERN Stack: Full Stack Web App Development with Mongo,
Express, React, and Node," Apress, 2017.
49
SCREENSHOTS
50
51
52
53