Welcome to our Business Management App! This Android application, developed in Kotlin, provides a comprehensive solution for managing your business efficiently. With features ranging from employee management to financial tracking, our app aims to streamline your business operations.
Ali Role: Developer & Project Manager
Responsibilities: Led XML layout design, implemented frontend logic (XML/Kotlin), resolved design issues, and managed project progress.
Impact: Played a key role in designing user-friendly layouts, ensuring seamless frontend, and overseeing timely delivery.
Hison Role: Developer
Responsibilities: Develop and maintain the UI and functionality for various activities ensuring integration with Firebase for data management and user authentication.
Impact: Enhance user experience and streamline business operations by providing intuitive interfaces and functionalities for managing user accounts, financial transactions, work logs, and payroll activities while leveraging Firebase for efficient data storage and retrieval.
Jake Role: Developer
Responsibilities: Designed and developed the user interface and user experience components, particularly in the topbar, landing page and schedule views.
Impact: Primary development on the business schedule, add shift activity, and employee schedule flow including employee availability.
Adam Role: Developer
Responsibilities: Executed backend functionalities with seamless database integration, crafted messaging systems, and orchestrated Payment Server flow.
Impact: Made substantial contributions by deploying crucial backend functionalities and server flows, adeptly bridging the frontend and backend through logical connections.
The app is built using the following technologies:
We welcome contributions from developers to improve our app! Here's how you can contribute:
https://github.com/masamoe/Optimate/assets/121978255/81f7aaeb-e5f2-4260-9d60-164053726142
(Manager)
CREATE COLLECTION accountPayment (
docRef DOCUMENT (
BID STRING,
Date TIMESTAMP,
Payment FLOAT,
stripeId STRING
)
);
CREATE COLLECTION availability (
docRef DOCUMENT (
BID STRING,
UID STRING,
availability ARRAY<MAP<STRING, VALUE>>,
name STRING
)
);
CREATE COLLECTION expenseRequest (
docRef DOCUMENT (
amount FLOAT,
bid STRING,
dateOfRequest TIMESTAMP,
expenseRequest STRING,
name STRING,
reason STRING,
receiptPhoto STRING,
status STRING,
uid STRING
)
);
CREATE COLLECTION finances (
docRef DOCUMENT (
BID STRING,
Expenses ARRAY<STRUCT<
Amount FLOAT,
Approval BOOLEAN,
Description STRING,
Name STRING,
UID STRING,
Uploaded_Date TIMESTAMP
>>
)
);
CREATE COLLECTION schedule (
docRef DOCUMENT (
BID STRING,
day STRING,
employees ARRAY<STRING>,
endTime TIMESTAMP,
startTime TIMESTAMP
)
);
CREATE COLLECTION timeOfRequest (
docRef DOCUMENT (
bid STRING,
dateOfRequest TIMESTAMP,
endDate TIMESTAMP,
endTime TIMESTAMP,
name STRING,
startTime TIMESTAMP,
status STRING,
uid STRING
)
);
CREATE COLLECTION titles (
docRef DOCUMENT (
access ARRAY<STRING>,
bid STRING,
role STRING,
title STRING
)
);
CREATE COLLECTION totalHours (
docRef DOCUMENT (
UID ARRAY<STRUCT<
time FLOAT,
approval BOOLEAN,
wage FLOAT
>>,
bid STRING
)
);
CREATE COLLECTION users (
docRef DOCUMENT (
UID STRING,
BID STRING,
accountStatus ARRAY<STRUCT<
date TIMESTAMP,
status STRING
>>,
deviceToken STRING,
email STRING,
initial_password STRING,
modules ARRAY<STRING>,
name STRING,
role STRING,
title STRING,
wage FLOAT,
phone STRING,
profilePic STRING,
address STRING
)
);
CREATE COLLECTION workLogs (
docRef DOCUMENT (
date ARRAY<STRUCT<
clockIn TIMESTAMP,
breakStart TIMESTAMP,
breakEnd TIMESTAMP,
clockOut TIMESTAMP
>>,
UID STRING,
BID STRING
)
);
images/
profileImages/{UID}
To run the app locally, follow these steps:
Clone the repository:
git clone https://github.com/masamoe/Optimate.git
Open the project in Android Studio.
Add in your google-services.json from Firebase when it configured for Android.
Configure Firebase for authentication, database, and storage. Refer to Firebase documentation for detailed instructions.
Clone the node.js server which the code is located at https://github.com/Rangathan/OptimateServer
Replace the server url with your server url
Build and run the app on an Android device or emulator.
Thank you for using our Business Management App! We appreciate your support and contributions. If you encounter any issues or have suggestions for improvement, please don't hesitate to reach out to us.