Skip to content

Latest commit

 

History

History
21 lines (16 loc) · 1.85 KB

DEVELOPERS.md

File metadata and controls

21 lines (16 loc) · 1.85 KB

Information for Developers

Images Folder

In the Images folder, you'll find PDFs of all the graphical assets as well as the .afdesign files from the program we created them with, Affinity Designer. We use Font Awesome to ensure a consistent design language across the website and app.

Issue Manager Folder

The Issue Manager folder contains the Xcode project and all its associated files.

  • Dependencies are managed using Git submodules (contained within the Carthage folder because they were initially checked out with Carthage), some of which require Git LFS.
  • The Libraries folder contains tiny libraries that are so small we decided to just copy them over and manage them ourselves, as well as adjusting some of the code.
  • The Back End folder contains the (platform-agnostic) back-end code which the front end is built around.
    • Objects contains all the objects used for local storage and/or defined in the API, encoded/decoded in communicating with the server.
    • Storage contains the repository object, which manages the local data store.
    • Concrete Requests contains the concrete representations of the API endpoints, as well as exposing mechanisms to use them.
    • Extensions contains extensions of existing types to simplify code using them elsewhere.
  • The Issue Manager folder contains the (iOS-specific) front-end code, along with the assets and storyboards. The code is grouped by scene, so e.g. you'll find all code for the construction site list scene in the Construction Site List folder.
    • Common contains views and other objects that are used throughout multiple scenes.
    • Generated contains code generated by swiftgen to improve localization code and make it checkable at compile time.
    • Extensions contains almost exclusively extensions of existing types to simplify code using them elsewhere.