iOS dictionary for international movie titles & Wikipedia mining tools

Overview

MovieDict. What do they call it?

International movie title database for iPhone

Screenshot

An app for travelers and language learners who like to talk about their favorite films. Check out the homepage for a little blurb about the project.

How does it work?

The most reliable way to look up a movie’s title in a different languages is to find it on Wikipedia, then follow the links to translations of the article. This is a frustrating workflow on a smartphone, though, especially when the signal is weak. This (multi-)weekend project transforms a Wikipedia dump into a tiny SQLite file, and the MovieDict app for iOS then searches the database using Unicode-enabled full-text search.

Why not use IMDb?

IMDb does not support Chinese or Japanese characters (among others), and is not available offline.

Building the database

Take a look at the Rakefile. There is a task that will run the full process, but manually running things step-by-step while reading the Ruby scripts is the recommended workflow.

License

This is a free app with no business model, and the source code is available under the MIT license. See the LICENSE file for details.

Comments
  • Duplicate detection is too strict

    Duplicate detection is too strict

    Many movies use a proper apostrophe (’) in one language and ASCII ' in another, leading to this mess:

    img_8237

    This should be fixed by ignoring punctuation in almost_equal (in Database/Rakefile). Maybe "The" should be ignored here, too? I don't think adding or removing a "The" counts as a translation.

    bug 
    opened by jlnr 1
  • Evaluate FMDB from CocoaPods vs raw FTS5 from SQLite

    Evaluate FMDB from CocoaPods vs raw FTS5 from SQLite

    I don't like having third-party code in my repository, and I'd love to use CocoaPods to embed FMDB and SQLite.

    However, I have no idea if that will let me use the unicode61 tokeniser, or if I should be using the new FTS5 API in SQLite instead, or if I can actually have both—the latest API and delicious CocoaPods.

    enhancement help wanted 
    opened by jlnr 1
  • iPad version

    iPad version

    I actually use this app a lot on my iPad, but I am not sure if it makes sense to build this before #1 is done.

    I'm also not entirely sure what the best UI would be.

    enhancement 
    opened by jlnr 1
  • Migrate to AutoLayout, drop support for old iOS versions

    Migrate to AutoLayout, drop support for old iOS versions

    Not really an enhancement per se, but the layout code in MovieViewController is very inefficient.

    MovieDict deploys down to iOS 5.1.1 because that's the lowest target version you can use on the App Store (for now) and in Xcode 7.

    When Xcode 8 hits the App Store and only supports targeting iOS 8.0+, this app would make a nice testbed for some newer APIs.

    enhancement 
    opened by jlnr 1
  • Rewrite database importer to work in memory

    Rewrite database importer to work in memory

    Instead of downloading the full Wikipedia dump, extracting it, then running a ragel script over the XML file, can we just do it all in memory? Pseudocode: curl -s http://dumps.wikimedia.org/.../enwiki-20170220-pages-articles-multistream.xml.bz2 | bzcat | ./extract-movies enwiki?

    Rationale: Having 100 GB of free space is a rare occurence for me.

    enhancement help wanted 
    opened by jlnr 2
  • Various database bugs

    Various database bugs

    • [ ] Commedia sexy all'italiana, as charming as it sounds, is not a movie title
    • [ ] Neither is "Martial arts film". Maybe the lower-case initials are the giveaway?
    • [ ] There are lots of "Studios" in the database which aren't movies
    • [ ] And the "Proletarian Film League of Japan" (wat), and the "Japan Academy Prize for Animation of the Year"
    • [ ] Something bad happened to the Chinese names of "Bee Movie"
    • [ ] The HK/TW translations for "Jobs" are missing, even though they're on the Wikipedia page: https://zh.wikipedia.org/zh-tw/乔布斯_(电影)
    • [ ] Likewise, the Chinese translations for "Shutter Island" are broken
    • [ ] "(documentary)" should be stripped
    • [ ] "Red Eye" is in the list twice, are there really two movies from the same year? -> Check Wikipedia
    bug help wanted 
    opened by jlnr 1
  • Support for series, not just movies

    Support for series, not just movies

    Video games would be fun too, but mostly in East Asia.

    If I could somehow turn this into a dictionary for all the stuff that is not included in "normal" dictionaries, this app might actually have a target audience of more than five people...

    enhancement help wanted 
    opened by jlnr 0
  • Localisation

    Localisation

    The app is so simple that I doubt many people have trouble using it, but this would be a fun project to test a localisation service - https://www.elloco.com/pricing is still on my list.

    enhancement 
    opened by jlnr 1
Owner
Lurado
Raschke & Ludwig GbR
Lurado
Disk is a powerful and simple file management library built with Apple's iOS Data Storage Guidelines in mind

Disk is a powerful and simple file management library built with Apple's iOS Data Storage Guidelines in mind

Saoud Rizwan 3k Jan 3, 2023
GraphQLite is a toolkit to work with GraphQL servers easily. It also provides several other features to make life easier during iOS application development.

What is this? GraphQLite is a toolkit to work with GraphQL servers easily. It also provides several other features to make life easier during iOS appl

Related Code 2.8k Jan 9, 2023
Simple, Strongly Typed UserDefaults for iOS, macOS and tvOS

简体中文 DefaultsKit leverages Swift 4's powerful Codable capabilities to provide a Simple and Strongly Typed wrapper on top of UserDefaults. It uses less

Nuno Dias 1.4k Dec 26, 2022
An efficient, small mobile key-value storage framework developed by WeChat. Works on Android, iOS, macOS, Windows, and POSIX.

中文版本请参看这里 MMKV is an efficient, small, easy-to-use mobile key-value storage framework used in the WeChat application. It's currently available on Andr

Tencent 15.4k Jan 6, 2023
This is the BlurrMC social media platform for iOS hosted on Apple's CloudKit.

BlurrMC for iOS This is the BlurrMC social media platform for IOS! WOOOOOOO! On this version of the social media platform, you have the full featured

BlurrMC 0 Nov 4, 2021
A Library for iOS developers to check newer version of app from the app store

swift-app-update-checker A very simple solution check new version of your application is available on store or not. Example To run the example project

wajeehulhassan 6 May 13, 2022
Native iOS app for Habitica

Habitica for iOS Native iOS app for Habitica. Contributing For an introduction to the technologies used and how the software is organized, refer to Co

HabitRPG 440 Dec 22, 2022
A demo app to showcase pixel perfect, modern iOS development with SwiftUI and Combine on MVVM-C architecture.

Pixel_Perfect_SwiftUI A demo app to showcase pixel perfect, modern iOS development with SwiftUI and Combine on MVVM-C architecture. Tech Stack: Swift,

Burhan Aras 0 Jan 9, 2022
BucketServer - Small API with SQLite database that saves notes for an iOS appliction called Bucket list

BucketList Server-Side Small API with SQLite database that saves notes for an iO

null 0 Dec 30, 2021
CodableFiles - Save and load Codable objects from DocumentDirectory on iOS Devices.

Welcome to CodableFiles, a simple library that provides an easier way to save, load or delete Codable objects in Documents directory. It’s primarily a

Egzon Pllana 36 Dec 20, 2022
BubblePop - a number of bubbles are randomly displayed on an iOS device screen

Description The game is called BubblePop . In this game, a number of bubbles are

null 2 Mar 23, 2022
An iOS app to lift the speed limit of your Cowboy Bike

Legal Notice 1. I am not resposible to anything worse that could happen to your bike because of this app 2. Be careful that lifting the 25km/h limit c

null 74 Dec 15, 2022
The BART app for commuters, now native on iOS

Arrival iOS Built with SwiftUI, Arrival is the BART app for commuters. Available for download on the App Store: https://apps.apple.com/us/app/arrival-

Ronan 7 Aug 5, 2022
This is the public repository of the MADBike app for iOS. Public bike rental service for BiciMAD.

MADBike Requirements iOS 10.3+ Xcode 10.3+ Swift 4+ Installation Copy BiciMAD/Supporting Files/GoogleService-Info-Sample.plist to BiciMAD/Supporting F

Alex Rupérez 24 Mar 25, 2022
xFonts is an app that lets you install custom fonts on iOS and iPadOS.

xFonts xFonts is an app that lets you install custom fonts on iOS and iPadOS. Grab fonts from your iCloud Drive or Dropbox and add them to your collec

manolo 137 Dec 10, 2022
CleanArchitecture - Helping project to learn Clean Architecture using iOS (Swift)

Clean Architecture Helping project to learn Clean Architecture using iOS (Swift)

Alliston 2 Dec 5, 2022
Amplitude Analytics 0 Feb 1, 2022
Impelemented native Crisp chat sdk on android and ios

crisp_chat_sdk Impelemented native Crisp chat sdk on android and ios Preview Simulator.Screen.Recording.-.iPhone.13.mini.-.2022-02-07.at.18.24.56.mp4

mohammad mohammadi 2 Jul 17, 2022