Giter Site home page Giter Site logo

anfeichtinger / tribeka-app Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 100.81 MB

Git repository for the first bachelor's thesis by Andreas Feichtinger

Dart 97.09% Java 0.18% Kotlin 0.06% Shell 0.27% Ruby 1.08% Objective-C 0.39% Swift 0.20% HTML 0.74%

tribeka-app's Introduction

Tribeka-App

Content of this Repository

This is the Git repository for the Bachlor's Thesis of Andreas Feichtinger, SWD17.

The content of this project is a mobile application based on the framework Flutter, which allows users to record the working hours in the company Tribeka. Since there is no API available, the app communicates with the web server and the response of the server is analyzed by means of web scraping. The relevant data is extracted and converted into Dart objects for further processing.

The goal of this project is to make the recording of working hours as easy and fast as possible. For this reason, it is possible to save templates within the app itself, allowing the user to record his working hours within a few seconds.

Apart from Flutter and Dart, the following dependencies (pubspec.yaml) are used:

  • html: for parsing the HTML response and thus for web scraping.
  • dio: as HTTP client which can handle both cookies and errors.
  • flutter_secure_storage: to store sensitive data securely. e.g. password
  • shared_preferences: to store normal data. e.g. Completed months
  • intl: for the translation of the names of the months.
  • flutter_picker: for selecting the calendar day, since the CupertinoPicker library does not support this yet.
  • material_design_icons_flutter: to be able to use the Material Icons. (Provides wider scope than stock Material Icons included in Flutter)
  • flutter_offline: to detect when the app is connected to the internet.
  • url_launcher: to open the dialer, email or SMS app.
  • package_info: to access information about the app itself (e.g. version).

Furthermore, the following dependencies are not found in pubspec.yaml, but in the "lib/widgets" directory, because they had to be modified.

Screenshots

More screenshots can be found in the "Screenshots" directory.

Login Overview Templates
Login Screen Month Screen Add Shift Screen

How do I update my local copy?

  • If there are own changes, save or remove them. Remove with git stash clear.
  • Download the updated repository with git pull.
  • Open the project and run flutter packages get && flutter packages upgrade. (possibly also flutter upgrade to install the latest version of Flutter).
  • It may be necessary to uninstall the old app on iOS or Android. After that, you should be able to install and run the latest version.

How can I open and edit the project?

Both Android Studio with two Plugins (Dart and Flutter) are required, as well as the Framework Flutter. All parts work on Windows, Linux and Mac OSX. More information about the individual steps as well as steps to solve problems can be found on the respective download pages, which are also linked. Here is a step by step guide:

  • Download and install the latest version of Android Studio. This can be downloaded here: https://developer.android.com/studio

  • Download the latest version of Flutter and unzip it to any location. Flutter can be downloaded here: https://flutter.dev/docs/get-started/install

  • Flutter should now be added to the PATH variable to use the framework without problems. Using Windows 10 this works as follows:

    • Press the key combination Win + R.
    • Write in the field: "sysdm.cpl" (without quotes) and press the Enter key.
    • Select the "Advanced" tab and press "Environment variables" at the bottom.
    • Here under user variables select "PATH" and press edit.
    • Right click on the "New" button and paste the path to Flutter: In my case "C:\Users<username>\Documents\Android\flutter\bin".
    • Confirm all windows by pressing "OK" and now Flutter should be available in "PATH".
  • Now open a new Powershell or CMD window and execute the following command: flutter doctor -android-licenses.

  • Here all licenses for the use of Android and Flutter must be confirmed, this is done by pressing the "Y" key.

  • Then open Android Studio and, if necessary, perform the First-Time Setup. It is important that a current Android SDK is installed.

  • Android Studio should now be open as a window. Here, click Configure at the bottom and select Plugins.

  • Here you can search for the plugin Flutter, when you install it, you will be asked if you want to install the plugin Dart as well. Allow this.

  • Afterwards, Android Studio should be restarted. After the restart, you can open the cloned Git repository. Then go to the command line under Android Studio.

  • Enter the command flutter packages get to download the used dependencies. After that the project should work fully.

  • It is recommended to run the command flutter doctor in the command line before compiling under Android Studio to check if everything works as intended.

Notice:

This project is developed in cooperation with the coffee house chain Tribeka from Graz and the FH JOANNEUM GmbH.

tribeka-app's People

Watchers

 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.