LMS is a online native android application. It has 3 level of user.Permenent or SACT , Department Head , Principal or Headclark. Permenet or SACT teacher can apply for leave and view leave status and department head can also apply for leave and view his or her leave status also can approve or reject premenent or sact teacehr leave request also can download previous leave history or that department. As for Principal he or she can approve or reject all facaltys leave and update any facalty mem leave balance and add or remove facalty members. Also download a detailed leave report.
- Lavel based email (easy and fast) Authentication
- Fast as easy apply of leave
- Easily accessable leave status
- View Leave balance with one click
- Downloadable Leave Report as pdf with one click
- One click Updatetion of leave balance also auto update on every year
- Easily Add or remove employee
- Assign New Department Head or change existing with one click
- Detailed Profile View
- Update personal details
- Mail notification on every step
Client
- Kotlin Programing Language
- Jetpack Compose - Ui Library
- OkHttp - Http Client to make api Request
- Paging3 - A Jetpack compose library to load data as needed
- Download Manager - Efficiantly Download Report as pdf format
- Room - SqlLight Database for android
- Dagger Hilt - Dependency Management Tool for Android
Server
- Ktor - evented I/O for the Server
- Exposed - Server side Sql Database
- koin - Dependency management tool for server
- gradle.kt - the streaming build system
- Clone the repo:
git clone https://github.com/POULASTAAdAS/Leave-Management-System.git
-
Setup enveroinment variables for the server project:
BASE_URL= email= password= sessionEncryptionKey= sessionSecretKey=
-
Run the docker-compose.yml file on path this will create databsae lms and nessery tables for more deatils view the sql file 3.1 Change the emails on the sql file before runing docker compose 3.2 See application.conf file for setting up the urls and port
docker compose up -d
By default the server port is exposed on 8080 and database port on 3311
- Setup the same base url on local.properties file
BASE_URL=
And you are good to go
Designed and developed by 2023 Poulastaa Das
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.