GithubHelp home page GithubHelp logo

ahmed-k-aly / divinemanuscriptsdb Goto Github PK

View Code? Open in Web Editor NEW

This project forked from dmavani25/divinemanuscriptsdb

0.0 0.0 0.0 459 KB

This is the database for books from Religion Library

Home Page: https://divine-manuscripts-db.vercel.app

JavaScript 1.67% TypeScript 98.28% CSS 0.05%

divinemanuscriptsdb's Introduction

DivineManuscriptsDB

Screenshot 2023-12-16 at 10 20 10 PM

Logo Credits: Band Crowd Logo Maker

Overview

The Divine Manuscripts DB project, spearheaded by a team of computer science students at Amherst College, aims to revolutionize the way the Religion Department manages its extensive library of religious texts. This project replaces outdated Excel sheets with a sophisticated database management system, facilitating efficient data handling and enhancing the overall library experience for faculty and staff. Below, we will go over the main components of the project very briefly. For details, please refer to the respective code, documentation, and data folders intuitively organized on this repository.

Team Members

  • Dhyey Mavani '25: Specializing in Computer Science, Mathematics, and Statistics.
  • Ahmed Aly '24: A blend of expertise in Computer Science and Political Science.
  • Brandon Ngacho '24: Focused on Computer Science and Mathematics.
  • Muhammad Ahsan Tahir '24: Combining skills in Computer Science and Mathematics.

Acknowledgement

A special gratitude to Professor Matteo Riondato for giving us the opportunity to pursue this project during COSC-257: Databases course, and for helping us throughout the development process of the same through continuous feedback and debugging support.

Project Requirements

Client Needs

  • A database offering organized, accessible information on religious texts.
  • Features including:
    • Text-based filtering.
    • Administrative capabilities to add/delete records.
    • UI for tracking book lending and returns, focused on faculty usage.

User Restrictions

  • Users cannot check out multiple copies of the same book simultaneously.

Technical Specifications

ER-Diagram

The system's structure is defined by an ER-diagram illustrating the relationships between users, books, and their checkouts.

Database Schema

The schema, developed in SQL, consists of three main tables: User, Book, and Checkings.

Tech Stack

  • Backend: PostgreSQL database, NextJS framework on a Linux server.
  • Frontend: React.js with Nx.dev, utilizing TailwindCSS and Material-UI for UI design.
  • API Integration: Google Books API / Open Library API for book details.

Development Phases

Data Cleaning

  • Conversion of Excel sheets to a cleaned, normalized dataset.

Backend Development

  • Database setup, API creation for CRUD operations, and user authentication.

Frontend Development

  • Development of a user-friendly dashboard, integrating UI components with backend services.

Testing and Deployment

  • Comprehensive testing including CRUD operations, role-based access, and extended features.
  • Deployment on a Linux server for backend and a suitable platform for frontend.

Documentation and Training

  • Detailed documentation of the system and training for Amherst College Religion Department staff.

Project Highlights

Unique Features

  • Tailored Authentication: Role-based access for students, professors, and admins.
  • Dynamic Book Management: Admins can manage book records and oversee checkouts.
  • Intelligent Search and Retrieval: Advanced search with an ag-Grid display for easy access to book information.
  • Enhanced Professor and Admin Interface: Specialized checkout functionalities.

Future Enhancements

  • Further integration with academic databases and tools.
  • Expansion of user roles and permissions for a broader range of stakeholders.
  • Publisher API integration for book details.
  • Single Sign-On (SSO) with Amherst emails.

Example Views

dmdb_login dmdb_admin_manage_books dmdb_admin_manage_users dmdb_admin_manage_checkouts dmdb_prof_books dmdb_prof_my_checkouts


For more information or to contribute to this project, contact Dhyey Mavani, Brandon Ngacho, Ahmed Aly, Ahsan Randhawa, or Professor Matteo Riondato!

divinemanuscriptsdb's People

Contributors

ahmed-k-aly avatar ahsanrandhawa avatar dmavani25 avatar ngacho avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.