Giter VIP home page Giter VIP logo

dictionary-ios's Introduction

dictionary-ios

GitHub license Platform GitHub release Codebeat badge FOSSA Status

Open English/Czech dictionary for the iOS platform - available in the App Store.

Open English/Czech dictionary for the Mac platform - available in the Mac App Store.

Motivation

My motivation to implement this application was to learn how to develop iOS-based applications. As a side-effect, I also wanted to know what all procedures are required to submit a final app in the Apple App Store. Later, this project was also updated to be fully compatible with the Mac Catalyst.

What you can learn by analyzing this project

  1. SQLite.swift framework
    • How to use Swift Manager controlled packages
    • How to embed any framework in the app
    • Basic framework usage
  2. Dictionary data database
    • How to convert FDL English/Czech data source to the SQLite database
    • How to add custom build steps
  3. UI
    • How to design UI in XCode StoryBoard editor
    • How to interact with code
    • How to initiate a screen transition (back and forth)
    • How to use the custom controllers and delegates
    • How to use a tap gesture recognizer
    • How to use a table widget
    • How to use a search widget
    • How to use different UI settings for iPhone and iPad
    • How to detect specific iPhone version for disabling UI widgets
  4. Localization
    • How to provide a localization support
  5. VoiceOver support
    • How to detect if any voice is available for the given language
    • How to instruct iOS to say the given text
  6. Lint
    • How to include a swiftlint checks in a build process
    • How to suppress specific rules
  7. Catalyst
    • How to update the iOS aware application to support the Catalyst Intel x64 or Apple Silicon architecture

Dictionary data

Dictionary data are taken from the Free Dictionaries project, which is good enough for my testing purposes. During the conversion from the data source file to the application SQLite based database, all records which have the empty translation are removed intentionally. At the time of writing this, there were 63539 of such records.

Images

All images are taken from the openclipart.org project.

All available screens in the application

The application is fully translated into the Czech language. However, only the default - English - language is shown here.

Splash screen

dictionary-ios splash screen


English to Czech screens

dictionary-ios en2cz screen dictionary-ios en2cz search screen dictionary-ios en2cz detail screen


Czech to English screens

dictionary-ios cz2en screen dictionary-ios cz2en search screen dictionary-ios cz2en detail screen


About screens

dictionary-ios about screen dictionary-ios components screen


License

FOSSA Status

dictionary-ios's People

Contributors

fossabot avatar vookimedlo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  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.