Ijraset Journal For Research in Applied Science and Engineering Technology
Authors: Dr. N. Lakshmi Prasanna, Varshith Puligadda, Varshitha Tallapaneni, Naren Ventrapragada, Mohammad Ashraf Shaik
DOI Link: https://doi.org/10.22214/ijraset.2024.59295
Certificate: View Certificate
CollaboSphere is a cutting-edge cloud-based platform for collaboration that was created mainly with students in mind. It addresses the difficulties associated with information sharing and teamwork in both academic and professional settings. CollaboSphere combines the capabilities of a project directory and collaboration centre to provide features including task/issue tracking, real-time messaging, document sharing. CollaboSphere is powered by the powerful MERN stack, DevOps methodologies, and AWS cloud infrastructure, which guarantees performance, scalability, and reliability. Students may easily interact, share thoughts, and access collective expertise in this environment thanks to its novel features, which include a public project directory and an accessible interface. CollaboSphere is a new era of teamwork and knowledge sharing that embodies development and innovation in student collaboration through careful deployment, management, and scaling strategies.
I. INTRODUCTION
Every student participates in college projects, whether they are major projects or personal projects, which help them improve their academic knowledge and expertise. However, this knowledge is often not shared with others. What if these projects could be shared as a resource with other students, either to expand their knowledge or to continue the effort and improve them? Additionally, working on these projects with their teams can be a hectic endeavour. And when projects become more complex, it becomes more difficult to track the project's tasks or issues, as well as which individual should be in charge of whichever duty. To address these challenges and streamline the process, a collaborative platform with task management or issue tracking capabilities is required.
We propose Collabosphere as a solution to these problems. CollaboSphere provides students with an extensive feature set aimed at improving teamwork and simplifying project administration. Students can assign tasks effectively and track the status of their projects in real time using its task/issue tracking features. Team members may communicate easily and share ideas and feedback instantly thanks to the platform's real-time messaging feature. Furthermore, CollaboSphere's document sharing tool makes working together on files easier and makes sure that all team members have easy access to project-related materials. In addition, the open project directory is an invaluable tool that lets students find and work on a variety of projects, which promotes cooperation and knowledge exchange among students. CollaboSphere provides students with a dependable platform by utilizing state-of-the-art technologies. The platform, which is based on the MERN stack, makes use of JavaScript's capabilities to provide a fluid and dynamic user experience. With AWS cloud infrastructure, CollaboSphere ensures high performance, scalability, and security for its users. Additionally, the platform uses DevOps techniques, deploying and testing automatically using CI/CD pipelines and containerization with Docker. This method not only speeds up the development process but also guarantees quick iteration and delivery of features, allowing CollaboSphere to remain agile and responsive to its users' changing needs.
II. LITERATURE REVIEW
The use of modern technologies such as the MERN stack, AWS, Docker, and DevOps methodologies has transformed the application landscape. The efficacy of these technologies in promoting smooth communication, project management, and information exchange among students has received significant attention in recent research. The MERN stack is well-known for its scalability and flexibility, and its capacity to produce reliable web applications and optimize the development process has led to its broad appeal. Similar to this, AWS has become a major player in cloud computing by providing a number of services that enable developers to easily create and launch apps. The delivery of high-quality solutions has been further enhanced by the use of Docker for containerization and DevOps techniques for continuous integration and deployment.
In addition, the achievements of companies using Trello and other task management software have shown the value of efficient project management solutions in encouraging cooperation and productivity. Trello has been used by businesses like Airbnb, Google, and Kickstarter to improve team communication, expedite project workflows, and successfully complete project milestones. This pattern demonstrates the increasing understanding of the value of task management software in maximizing productivity and promoting smooth teamwork.
A. Alalawi, A. Mohsin and A. Jassim in [1] present a comprehensive survey of AWS cloud development tools and services, shedding light on the diverse array of offerings available for cloud-based development and insight into the various tools and services provided by Amazon Web Services, exploring their functionalities and use cases.
Similarly, S. Neela, Y. Neyyala, V. Pendem, K. Peryala and V. V. Kumar in [3] present a case study on cloud computing-based learning web applications developed using Amazon Web Services.
In [4], M. Soni discusses the implementation of end-to-end automation on the cloud with building pipelines, emphasizing the role of DevOps practices in the insurance industry. The paper explores the integration of continuous integration, continuous testing, and continuous delivery methodologies to streamline software development and deployment processes.
N. Kozma and D. Krsti? in [7] present a detailed examination of web application development techniques using the MERN stack, encompassing methodologies, tools, and processes. The paper outlines a systematic approach to developing web applications, with a focus on requirements analysis, design, implementation, testing, and presentation.
III. PROPOSED METHODOLOGY
A. Architecture of MERN Stack
Collabosphere uses MongoDB as its database, which provides an adaptable and scalable way to store project data, user data, and other pertinent stuff. The server-side parts of Collabosphere are easier to construct with Express.js, a Node.js framework for minimalist web applications that manages HTTP requests, routing, and middleware integration. React.js is used on the client side to build dynamic, interactive user interfaces that provide real-time changes, smooth navigation, and effective data rendering. The server-side runtime environment is powered by Node.js, which enables JavaScript code to run outside of the browser and makes server-side tasks like data processing, authentication, and API interactions easier.
B. CI/CD Pipeline using AWS
Using GitHub as the source code repository, AWS CodePipeline manages the CI/CD pipeline for the Collabosphere application. CodePipeline causes AWS CodeBuild to create two Docker images, one for the frontend and one for the backend, from the source code whenever there is a commit. These images are then pushed to Amazon Elastic Container Registry (ECR). These Docker images are then used by AWS CodeDeploy for deploying the application on Amazon ECS (Elastic Container Service) clusters. Rapid iteration and delivery of updates for the Collabosphere collaboration platform are made possible by this automated method, which optimizes the deployment workflow and guarantees that changes are effectively developed, tested, and deployed to production settings.
IV. IMPLEMENTATION
A. Database Design
The Collabosphere platform's database design takes into account a number of important entities and their relationships in an effort to make user collaboration and project management more effective. The main entities are "user," "project," "task," "resource," and "message," each of which has a distinct purpose in the operation of the system. Individuals utilizing the platform are represented by the "user" entity, which has attributes like email, name, password, mobile number, image_url, and id (unique identifier). Because they start and engage in a variety of projects inside Collabosphere, users are essential to the platform. Users are fundamental to the platform, as they initiate and participate in various projects within Collabosphere.
The "project" object on Collabosphere represents projects, which are fundamental to its collaborative environment. A project's id, name, description, admin, participants, visibility (which establishes the project's accessibility), messages, resources, and tasks are among its attributes. In Collabosphere, tasks and resources are essential to project management and content sharing. Attributes like id, summary, description, addedBy, assignee, project, and status are all part of the "task" entity. Comparably, information about resources linked to a project, including name, id, uploadedBy, and project, is stored in the "resource" entity. Project participants can communicate with one other through messages, which facilitate updates and discussions among project members. Project, content, sender, id, and other attributes are all part of the "message" entity.
B. Tech Stack
React.js became the preferred choice for the frontend because of its declarative syntax, virtual DOM rendering, and component-based design, which made it possible to create dynamic and interactive user interfaces. By enabling developers to create modular and reusable user interface components, React.js improved both user experience and development efficiency. On the server side, Express.js, a minimalist web application framework for Node.js, facilitated the development of RESTful APIs and middleware integration, enabling seamless communication between the client and server components. The NoSQL database MongoDB Atlas was chosen because of its scalability and versatility, which enable effective storing and retrieval of user data, project data, and other pertinent content.
AWS and Docker are also used in the Collabosphere implementation in addition to the powerful frontend and backend technologies previously stated. Collabosphere harnesses the scalability, dependability, and efficiency of cloud computing and containerization technologies by integrating AWS and Docker into its implementation. This guarantees Collabosphere will continue to operate at a high level of performance and availability while successfully satisfying user needs.
C. JSON Web Tokens (JWT)
When the user is logs in to the application, credentials are validated at the database and a JWT token is generated and sent back to the client. Following that, the token is attached to the request headers and delivered to the backend for every subsequent request. Upon receiving a request, the server will first verify that the JWT is valid. Only when it is valid and the user is authorized to access the requested data, the request will be handled and the client will receive the data. If not, a 401 (Unauthorized) response is returned.
To summarize, Collabosphere presents a revolutionary approach to addressing the difficulties associated with teamwork and project administration in educational environments. Through the utilization of cutting-edge technologies like the MERN stack, AWS infrastructure, and real-time communication tools like Socket.IO, Collabosphere provides students with an easy-to-use and seamless environment for innovation, collaboration, and academic success. Collabosphere facilitates efficient communication, increases productivity among project teams, and optimizes project workflows using tools including task management using Kanban boards and file sharing.
[1] A. Alalawi, A. Mohsin and A. Jassim, \"A survey for AWS cloud development tools and services,\" 3rd Smart Cities Symposium (SCS 2020), Online Conference, 2020, pp. 17-23, doi: 10.1049/icp.2021.0898. [2] B. Lee, J. Oh, W. Shon and J. Moon, \"A Literature Review on AWS-Based Cloud Computing: A Case in South Korea,\" 2023 IEEE International Conference on Big Data and Smart Computing (BigComp), Jeju, Korea, Republic of, 2023, pp. 403-406, doi: 10.1109/BigComp57234.2023.00099. [3] S. Neela, Y. Neyyala, V. Pendem, K. Peryala and V. V. Kumar, \"Cloud Computing Based Learning Web Application Through Amazon Web Services,\" 2021 7th International Conference on Advanced Computing and Communication Systems (ICACCS), Coimbatore, India, 2021, pp. 472-475, doi: 10.1109/ICACCS51430.2021.9441974. [4] M. Soni, \"End to End Automation on Cloud with Build Pipeline: The Case for DevOps in Insurance Industry, Continuous Integration, Continuous Testing, and Continuous Delivery,\" 2015 IEEE International Conference on Cloud Computing in Emerging Markets (CCEM), Bangalore, India, 2015, pp. 85-89, doi: 10.1109/CCEM.2015.29. [5] A. Agarwal, S. Gupta and T. Choudhury, \"Continuous and Integrated Software Development using DevOps,\" 2018 International Conference on Advances in Computing and Communication Engineering (ICACCE), Paris, France, 2018, pp. 290-293, doi: 10.1109/ICACCE.2018.8458052. [6] A. M. Mowad, H. Fawareh and M. A. Hassan, \"Effect of Using Continuous Integration (CI) and Continuous Delivery (CD) Deployment in DevOps to reduce the Gap between Developer and Operation,\" 2022 International Arab Conference on Information Technology (ACIT), Abu Dhabi, United Arab Emirates, 2022, pp. 1-8, doi: 10.1109/ACIT57182.2022.9994139. [7] N. Kozma and D. Krsti?, \"Design of Information System for Bookstore support Student paper,\" 2022 21st International Symposium INFOTEH-JAHORINA (INFOTEH), East Sarajevo, Bosnia and Herzegovina, 2022, pp. 1-6, doi: 10.1109/INFOTEH53737.2022.9751271. [8] S. Singh and N. Singh, \"Containers & Docker: Emerging roles & future of Cloud technology,\" 2016 2nd International Conference on Applied and Theoretical Computing and Communication Technology (iCATccT), Bangalore, India, 2016, pp. 804-807, doi: 10.1109/ICATCCT.2016.7912109. [9] W. Wang, \"Research on Using Docker Container Technology to Realize Rapid Deployment Environment on Virtual Machine,\" 2022 8th Annual International Conference on Network and Information Systems for Computers (ICNISC), Hangzhou, China, 2022, pp. 541-544, doi: 10.1109/ICNISC57059.2022.00112. [10] N. Sahasrabuddhe, R. Jain, S. Khandelwal, S. Kalekar, N. Purohit and A. K. Sharma, \"Print – OnTheGo Remote Printing Application using MERN Stack,\" 2023 4th International Conference for Emerging Technology (INCET), Belgaum, India, 2023.
Copyright © 2024 Dr. N. Lakshmi Prasanna, Varshith Puligadda, Varshitha Tallapaneni, Naren Ventrapragada, Mohammad Ashraf Shaik. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.
Paper Id : IJRASET59295
Publish Date : 2024-03-21
ISSN : 2321-9653
Publisher Name : IJRASET
DOI Link : Click Here