Skip to content

Mobile App that synchronizes expiration dates of foodstuffs

License

Notifications You must be signed in to change notification settings

lentschi/expiry_sync_client

Repository files navigation

ExpirySync - Client

Project

This is just the client; There's a wrapper project including the API docs, an easy-to-setup docker-compose config, as well as submodules of both server and client at https://github.com/lentschi/expiry_sync.

The client is written in ionic, which is designed to be an OS independent app development framework (currently supports Android, iOS and Windows Universal App). However: For now only exporting the Android version has been tested.

The client is licensed under the GPLv3.

Preparing for the build

(Note: The following instruction don't enforce specifc versions of nodjs, npm, cordova and ionic. Future build could fail due to upgrades of those packages. See docker-compose config of the app container in the wrapper project to get a working version for sure.)

At first - if you haven't done this yet - install npm.

Then in the repository folder run the following:

npm install -g ionic cordova
npm install

ionic cordova platform add android
# this will cause unwanted changes to config.xml ->
git checkout config.xml

Building Android version & run it

First make sure an android device or emulator is connected and configured for USB debugging, then run:

ionic cordova run android --prod

Running the development web server

ionic serve

Then open http://localhost:8100.

Note: This will currently only work with Google Chrome!

Other build options

There are zounds - s. the ionic docs ;-)

Testing

Unfortunately there currently aren't any tests for the client, but see the E2E tests in the wrapper project.