Skip to content

jcabreram/volta

Repository files navigation

Volta GitHub license

Volta is an iOS app for timesheet management. With it, employees can submit their work times for the week and managers can approve or deny their timesheets. Also, admin users can have an eagle-eye view of the organization and see the status of the timesheets of the employees.

All of this in real time as it leverages Firebase's realtime database.

You can easily implement it in your company (and for free!) by changing the Firebase instance it's pointing to.

Getting Started

Prerequisites

To have your own Volta, you will need:

  • A Firebase account (free)
  • Carthage (for building EPSignature)
  • Cocoapods (for the rest of the frameworks)

Setup

  1. Create your Firebase account and set up your app in the Firebase console.
  2. Replace the GoogleService-Info.plist and GoogleService-Info-dev.plist files for the one provided for your app by Google. (They can be different if you want a different Firebase instance for dev).
  3. Create your first admin user from the Firebase console.
  4. Copy the generated User UID.
  5. Replace the first user in the users node in Firebase_initial_DB.json with your first admin user data, including the generated User UID.
  6. Import your modified Firebase_initial_DB.json into the Database section of the Firebase console.
  7. Run the app and login with your admin user to start creating managers and employees.

Features

Employees

  • Enter their timesheets, specify projects worked on the day and send to submission.
  • Upload a picture of a paper or screen timesheet if required by attaching to the timesheet week.

Managers

  • Approve or don't approve the week timesheet entered by employees.

Admins

  • Manage managers and employees in the company.
  • Manage projects and assign them to employees.
  • Export timesheet week report to PDF.

Everyone

  • See an overview of the approval status of the timesheets.
  • Receive notifications for timesheet submission (Manager), submission reminders (Employee) and project overtime (Admin). (Requires Apple Push Notification Service certificates)

Screenshots

Built with

Known issues

  • Incorrect appearance of the navigation bar in iPhone X.
  • For admin users, progress indicator is not disappearing if there are no employees on the database. Create at least one employee to avoid this.
  • At startup, the selected week is the week before the current one and not the current one.

Author

License

This project is licensed under the Apache License - see the LICENSE file for details