Giter Club home page Giter Club logo

thoughtboard-ducs's Introduction

Android-Study-Jams

Thought Board DUCS

Problem Statement:

In Department of Computer Science, University of Delhi, students from MCA and MSC Computer Science, work together on multiple occasions and collaboration on these events need a large number of students to be brought at one place for sharing their thoughts. This process leads to the creation of numerous Whatsapp groups every year. These groups in-turn remains as a part of students chat history and can't be accessed by the students of the next academic year (if they want to access ideas/resources). Also, there is a limit of 256 members on the number of participants in a whatsapp group hindering a proper communication between seniors & juniors, and not every students agrees to make an account on some other services like Signal, Telegram, etc. This overall scenario creates a feeling of detachment among the students.

Proposed Solution :

This project proposes an Open-Chat Android Application for intradepartmental communications for Department of Computer Science, University of Delhi. In this application,

  • the users can only login with DUCS domain email id (ending with @cs.du.ac.in), discarding the need of account creations, since every student gets a departmentally issued email id on admission
  • the user can even audit the application, without ducs email (all features except sending message)
  • the sign in flow uses google's one tap for better authentication experience
  • the messages are displayed date wise and messages of ex-students will also be available for new students of further academic sessions
  • there is no limit on the number of users (active at a time), since only the currently working students will have access to the application.
  • the messages are grouped by dates for a better access to specific event related messages/resources.
  • the user can reply on any message(post) though the email reply button on the message screen
  • the author of the message can delete his/her messages while he/she is an active students of the department (or they can contact the admin for message deletion)

sample_images

Functionality & Concepts used :

The App has a very simple and interactive interface which allows the students to send and read messages (with a title) authenticated by their Departmental Domain Emails. Following are few android concepts used to achieve the functionalities in app :

  • Constraint and Linear Layout : Most of the fragments in the app uses a flexible constraint layout, which names is easy to handle scaling for different screen sizes. Some fragment(s) also use a linear layout for better presentation.
  • Simple & Easy Views Design : Use of Interactive buttons, eye pleasing Color scheme and simpler UI, made it easier for students to sign in and send messages without providing any detailed instructions pages. The also uses basic android App Navigation library & supportActionBars to switch between different screens (fragments).
  • RecyclerView : To present the list of messages, we have used the efficient RecyclerView handled by GridLayoutManager. Each item of the recycler view is clickable (for viewing the message content.
  • Room Database : The user signup details, including username and email are saved using Room Database. Also we are planning to save favourite messages locally in Room Database, in the future releases.
  • Firebase Realtime DB : For serving data to the application and provide a better performance and offline caching. We are using the Spark Plan of firebase with 1Gb storage and 10Gb data transfer that is planned to be upgraded in future depending on the usage & audience's response on the applications.
  • LiveData & ViewModel : We are also using LiveData to update & observe any changes in the Date Picker and Messages(Posts) Array from firebase realtime database and the Messages(posts) are displayed from the MessageViewModel.

Application Link & Future Scope :

The app is currently in the Alpha testing phase with 2021-22 batch students of Department of Computer Science, University of Delhi, You can access the app here : ThoughtBoard DUCS.

Once the app is fully tested during the Sankalan'21 event (the annual departmental fest event), we plan to make it the primary mode of communication and resource sharing with the addition of features like:

  • support for sharing docs and links
  • grouping messages by themes/hashtags/events
  • feature for saving favourite messages locally or on cloud
  • external sharing of messages on social media and other chatting applications

Note

  • Hidden Keys : The API keys and Client IDs are hidden from the repo code using BuildConfigs. For compiling the project with the secrets.properties file please contact the repository maintainer.

thoughtboard-ducs's People

Contributors

joshidipesh12 avatar kinshuk-h avatar mukuzz avatar sjain1720 avatar rishisingh00 avatar ishika-saini avatar trickstereagle avatar divyansh-22 avatar shivpujan12 avatar javedsir301 avatar poojasahucsdu avatar

Stargazers

 avatar Shubham Jitiya avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  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.