0% found this document useful (0 votes)
5 views18 pages

FinalProjectPresentation G2

The document outlines a project to develop an online digital library using Python, aimed at providing students with easy access to academic resources. It addresses limitations of traditional school libraries, such as limited access and outdated materials, by offering features like user authentication, book interaction, and a modular architecture for scalability. Future enhancements include mobile app development, subscription plans, and multilingual support to improve user experience.

Uploaded by

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

FinalProjectPresentation G2

The document outlines a project to develop an online digital library using Python, aimed at providing students with easy access to academic resources. It addresses limitations of traditional school libraries, such as limited access and outdated materials, by offering features like user authentication, book interaction, and a modular architecture for scalability. Future enhancements include mobile app development, subscription plans, and multilingual support to improve user experience.

Uploaded by

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

PROJECT : ONLINE DIGITAL

LIBRARY WITH BOOK Groupe 2:


RECOMMENDATION 1. Marvin Ndiva NGALLE
2. Sangbong Awah
INSTRUCTION : D E S IGN I N G A N D IM P L E M E N T IN G 3.
4.
Wira Hans DZelamonyuy
Salem Bihata
A C OM P L E X PY T H ON A P P L IC AT ION , IN C OR P ORAT IN G 5. Njike Nchopah Briscamela
A DVA N C E D FE AT U R E S S U C H AS OB JE C T- OR I E N T E D 6. Nkwain Gaius
P R OGRAM M IN G, DATA S T R U C T U R E S , AL GOR IT H M S , 7. Youmbi Fabrice
A N D I N T E GRAT ION W I T H E XT E R N AL L I B RAR I E S OR
PROJECT OVERVIEW
Nowadays, students everywhere are in need of data.
Access to the data is primordial, as it is needed for their
studies, to perform assignments, to make their end-of-
year reports, or even in their professional careers.
With the coming to scene Artificial Intelligence, many
things have been simplified. But students still need
some specific tailor-made books like end-of-year reports,
past examination questions and answers for specific
courses that are usually obtained only in school libraries
or from other students.
PROJECT OVERVIEW
We noticed some limitations such as:
 Limited Access to Resources: School libraries have limited copies of books
that can be
checked out, making it difficult for every student to access the required material.
 Time Constraints: Students often have busy schedules and may not have the
time to visit
a physical school library during its operating hours or have the telephone contact
of a classmate or schoolmate having the required documents.
 Geographical Barriers: Students in remote or rural areas may not have access
to the school library in Yaoundé for example, limiting their ability to obtain
necessary reading materials.
 Outdated Materials: School libraries may have outdated editions of textbooks
or end of year reports, which do not contain the latest information or research.
PROJECT SCOPE
Project scope
Development and innovative, practical, an online Digital Library with book
recommendation using python as programming language
Specific Ojective
 python base web framework will be used to speed up Development;
 This our online bookstore project will provide a platform wherein students can
access, interact with, and download books in a user friendly environment.
Targeted person
student
KEY FEATURES AND FUNCTIONALITY OF THE APPLICATION

1. User Authentication: Students can create accounts


and log in their accounts.
2. Book Viewing: The platform allows users to browse and
search for books
3. Book Interaction: Users can comment on books,
sharing their opinions and engaging in discussions with
other users.
4. Download Permissions: Users with appropriate
permissions will download books, ensuring access control
for premium content.
Design and
Architecture
ARCHITECTURE
This application follows a modular architecture,
ensuring scalability and maintainability. The
primary components include:
1. Frontend Module: Responsible for the user
interface and user experience.
2. Backend Module: Handles business logic, data
processing, and API endpoints.
3. Database Layer: Stores user information, book
details, and user comments.
DATABASE DESIGN
The database is designed using a relational model,
with the following key tables:
• Users: Stores user credentials, profile details, and
permissions.
• Books: Contains book metadata, file paths, and
access levels.
• Tags: Contains how each book can be subdivided
• Comments: Logs user comments associated with
specific books.
OOP DESIGN
The application employs Object-Oriented Programming (OOP) principles to enhance
reusability
and readability.
The following OOP design principles will be used:
• Encapsulation: It bundles data and methods operating on that data, restricting
direct access
to some components for better control and security.
• Inheritance: It enables a class to inherit properties and behaviors from another,
promoting
code reuse and hierarchy.
• Polymorphism: It allows objects to be treated as instances of their parent class,
enabling a
single interface for multiple implementations.
IMPLEMENTATION DETAILS
A fully functional Python application was implemented using Django, a renowned Python web framework.
The database used was: SQLite as it is very portable and easy to use.
Two main panels where created: An admin panel and a student panel.

Panel roles:
1. In the admin panel, the administrator has to possibility to add, edit, view and delete books.; to add,
edit, view and delete users of the system including students.
This application solves the problems outlined in the problematic section in the following ways:
• Documents can now be uploaded into the platform by the administrator. These documents can be
downloaded by any student as long as he has the required privilege rights
• The platform is accessible 24/7. So everyone can have access to a specific document no matter the time
• Students have access to resources no matter their geographic location
• In the comments section, if an administrator notices that a book is outdated, he can easily update it.
2. In the user panel, the user can browsing the books in the system
Key Sections of
Code
USER AUTHENTICATION
The code below shows how a user is authenticated/logs into the system. Then
he is redirected to the dashboard panel to perform administrative tasks.
BOOK SEARCH FUNCTIONALITY
The code below shows the different criteria used to search for a book. It could be using the
title, the author, or even the published date
COMMENTING SYSTEM
The code below shows how the commenting system was designed. The model definition. Here we realized that a specific user
can comment on a particular book. The content of the comment needs to be specified
LIBRARIES USED

• Django: For building the backend API.


• Django ORM: For Object Relation Mapping and
database management.
• Jinja2: For rendering dynamic HTML pages.
• Bootstrap: For styling the different web pages.
• Unittest: Used for testing the different parts of our
application
CHALLENGES AND LESSONS LEARNED
Challenges
Handling Concurrent Access

• Multiple users could comment on and download books simultaneously without conflicts. This was
addressed by implementing robust database transaction mechanisms and leveraging Django’s
thread-safe features.
Secure File Downloads
• Securing the book download feature to prevent unauthorized access. This was managed by
making the download button available only if the user is connected and has the needed privilege
level.
User Engagement
• Encouraging user interaction through comments required careful UI/UX design. Iterative testing
and user feedback helped refine the commenting interface.
Delay
• The limited time doesn’t permit us to experiment other tools/services in our platform
PERSPECTIVES
1. Mobile App Development: Expanding the platform to include dedicated mobile
applications for iOS and Android.
2. Subscription Plans: Introducing subscription tiers to monetize the platform while
offering
varied levels of access.
3. Multilingual Support: Adding support for multiple languages to cater to a global
audience.
4. Advanced Search Filters: Enabling users to filter books by additional attributes
like price
range, rating, or publication date.
By continuously evolving our platform we are convinced that we will provide an
engaging and
accessible platform and user experience for all users.
END

You might also like