# Watch Me Code #

The Project: Blitzit

- Simple WKWebView based browser written in Objective C
- Uses keyboard based "shortcodes" for fast searching of specific sites.
- Shortcodes will be synced via iCloud
- Uses auto layout for all views
- No storyboard
- No tabs, no bookmarks!

Current Task

- Adding Interface to add/update/delete shortcodes
   - UIPopOver List View
      - Set up a UITableView with a custom nib using autolayout - DONE
      - Add swipe to delete function - DONE
   - Entry View (up next)

Application Design Documentation

- Data Model Classes
   - BLShortCode
      - Short code "record"
         - IDKey
            - Unique identifier
            - Name for default short codes
            - GUID for user created short codes
         - Label
            - The plain text name of the short code
         - Description
            - A long note field, optional
         - Pattern
            - The url template used to access the site
            - [query] is replaced with what the user typed
         - Shortcut
            - The url template used when the code is used by itself
            - This allows short codes to be used like a simple bookmark
         - Conflicting
            - Boolean to flag a short code with a duplicate code
            - This alone does not disable the short code
         - DIsabled
            - Boolean to turn off a short code
            - Conflicting short codes have this set
            - The user can also disable a short code as well
         - Modified
            - Timestamp of last change
            - May help with sync conflicts
         - Code
            - What the user types to use the code
            - Must be unique among active short codes
   - BLShortCodeDB
      - Singleton
      - The data store for BLShortCodes
      - Handles caching
      - Handles sync
      - Data source for list view
- View Controller Classes
   - BLWebViewController
      - Root view controller
      - Web browser view
   - BLListView
      - Dialog view for maintaining short codes
   - BLEntryView
      - Detail view for entry a single short code's information

About Me

- Alex Shaffer
- 30 years programming/consulting experience
- Two apps in the app store
- iOS/Objective C developer since June 2012