Coder Social home page Coder Social logo

ravi879 / noticeboard Goto Github PK

View Code? Open in Web Editor NEW
16.0 3.0 8.0 20.99 MB

This is a notice board android app for college where faculty can post notice and students can receive the notice.

JavaScript 1.28% Kotlin 98.72%
android firebase kotlin-android noticeboard cloud-functions

noticeboard's Introduction

NoticeBoard

This is a notice board android app, where college faculty from different department can post notice. Faculty member and Students can receive the notice from departments.

  • Download apk from here.

Overview

Only faculty members can post notice. The students can receive notice from their respective department only. For example, The student studding in mechanical engineering can receive notice from Mechanical department only, not from other academic department. In addition to that, students also receive notice from non academic department like, library, Office, Sports, etc.

Screenshot

  1. Login
    Screenshot 1
  2. Register
    Screenshot 1

Quick explanation of project directory :

  1. cloud function : It contains single file named index.js having two cloud function.
  2. screenshot: Sample screenshot from mobile emulator, tablet and real mobile device. It also includes firebase database screenshot.
  3. code: The android app code.

Prerequisites

  • Firebase project with Realtime database for android having package name "coms.dypatil.noticeboard".
  • google-services.json: during firebase project creation, you will get the google-services.json file, download and save this file.
  • Android SDK v28
  • Android Support Repository

Open and Run Project

For Android App:

  1. open android studio, select File -> Import -> "Existing Projects into your workspace".
  2. Go to the path where you cloned the Repo: (repoFolder)\code
  3. paste the google-services.json to "app" folder.
  4. rebuild the project and run.

For cloud function:

  1. initialize Firebase SDK for Cloud Functions as explained here,
  2. open index.js and paste the code from "(repoFolder)\cloud function\index.js".
  3. deploy the cloud function.

Built With

  • MVVM architecture
  • Android Architecture Components : Live data, View Model, Room
  • Language: kotlin for android, javascript for cloud function.
  • Firebase : Realtime database, Firebase Auth, Firebase storage, Firebase config, Functions, Remote config.
  • RXJava2

Author

Please, let me know if this project is useful to you or give suggestions at [email protected]. I would loved to hear from you guys.
Happy coding. 😊

License

License

Support

Please feel free to submit issues with any bugs or other unforeseen issues you experience.

noticeboard's People

Contributors

ravi879 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

noticeboard's Issues

error launching register page

2020-03-05 02:18:37.820 8430-8437/? E/art: Failed writing handshake bytes (-1 of 14): Broken pipe
2020-03-05 02:18:43.356 8430-8430/coms.dypatil.noticeboard E/AndroidRuntime: FATAL EXCEPTION: main
Process: coms.dypatil.noticeboard, PID: 8430
java.lang.RuntimeException: Unable to start activity ComponentInfo{coms.dypatil.noticeboard/coms.dypatil.noticeboard.ui.activity.RegisterActivity}: java.lang.StringIndexOutOfBoundsException: length=0; regionStart=0; regionLength=-1
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2646)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2707)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1460)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6077)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756)
Caused by: java.lang.StringIndexOutOfBoundsException: length=0; regionStart=0; regionLength=-1
at java.lang.String.substring(String.java:1931)
at coms.dypatil.noticeboard.util.SpnListUtil.getListFromString(SpnListUtil.kt:122)
at coms.dypatil.noticeboard.util.SpnListUtil.getTeachingDeptList(SpnListUtil.kt:17)
at coms.dypatil.noticeboard.util.ProfileBuilderUtil.(ProfileBuilderUtil.kt:25)
at coms.dypatil.noticeboard.ui.activity.RegisterActivity.onCreate(RegisterActivity.kt:53)
at android.app.Activity.performCreate(Activity.java:6662)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1118)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2599)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2707) 
at android.app.ActivityThread.-wrap12(ActivityThread.java) 
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1460) 
at android.os.Handler.dispatchMessage(Handler.java:102) 
at android.os.Looper.loop(Looper.java:154) 
at android.app.ActivityThread.main(ActivityThread.java:6077) 
at java.lang.reflect.Method.invoke(Native Method) 
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:866) 
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:756) 

doubt

whether i should create the db manually ??

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.