Skip to content

diia-open-source/ios-commonservices

Repository files navigation

DiiaCommonServices

CoreCommonServices is a foundational utilities and modules providing essential support for Diia on iOS.

Description

Helping modules

  • GeneralError: Provides generalized error handling mechanisms for advanced error management.
  • BaseSearch: Provides a standardized basis for easy integration of search functionalities.
  • ContactsInput: Provides a generalized foundation for handling user inputs in tasks related to contacts.
  • TemplateAlert: Provides alert templates for a consistent visual messaging style across the app.

Utility

  • ReachabilityHelper

Useful Links

Topic Link Description
Ministry of Digital Transformation of Ukraine https://thedigital.gov.ua/ The Official homepage of the Ministry of Digital Transformation of Ukraine
Diia App https://diia.gov.ua/ The Official website for the Diia application

Getting Started

Installing

To install DiiaCommonServices using Swift Package Manager you can follow the tutorial published by Apple using the URL for this repo with the current version:

  1. In Xcode, select “File” → “Add Packages...”
  2. Enter https://github.com/diia-open-source/ios-commonservices.git.git

or you can add the following dependency to your Package.swift:

.package(url: "https://github.com/diia-open-source/ios-commonservices.git", from: "1.0.0")

Code Verification

Testing

In order to run tests and check coverage please follow next steps We use xcov in order to run This guidline provides step-by-step instructions on running xcove locally through a shell script. Discover the process and locate the results conveniently in .html format.

  1. Install xcov
  2. go to folder ./Scripts then run sh xcove_runner.sh
  3. In order to check coverage report find the file index.html in the folder ../../xcove_output.

We use Scripts/.xcovignore xcov configuration file in order to exclude files that are not going to be covered by unit tests (views, models and so on) from coverage result.

Swiftlint

It is used SwiftLint to enforce Swift style and conventions. The app should build and work without it, but if you plan to write code, you are encouraged to install SwiftLint.

You can run SwiftLint manully by running

swiftlint Sources --quiet --reporter html > Scripts/swiftlint_report.html.

You can also set up a Git pre-commit hook to run SwiftLint automatically by copy Scripts/githooks into .git/hooks

How to contribute

The Diia project welcomes contributions into this solution; please refer to the CONTRIBUTING.md file for details

Licensing

Copyright (C) Diia and all other contributors.

Licensed under the EUPL (the "License"); you may not use this file except in compliance with the License. Re-use is permitted, although not encouraged, under the EUPL, with the exception of source files that contain a different license.

You may obtain a copy of the License at https://joinup.ec.europa.eu/collection/eupl/eupl-text-eupl-12.

Questions regarding the Diia project, the License and any re-use should be directed to [email protected].

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published