Giter Club home page Giter Club logo

r2-testapp-swift's Introduction

Readium Mobile Test App (Swift/iOS)

A test app for the Swift implementation of Readium-2. Stable builds are published on TestFlight.

Follow the project on ZenHub.

BSD-3

All migration steps necessary in reading apps to upgrade to major versions of the Readium toolkit will be documented in the Migration Guide.

Features

  • EPUB 2.x and 3.x support
  • Readium LCP support
  • CBZ support
  • Custom styles
  • Night & sepia modes
  • Pagination and scrolling
  • Table of contents
  • OPDS 1.x and 2.0 support
  • FXL support
  • RTL support

Demo

Dependencies

  • Shared Models (Model, shared for both streamer and navigator)
  • Streamer (The parser/server)
  • Navigator (The bare ViewControllers for displaying parsed resources)
  • Readium CSS (Handles styles, layout and user settings)

Install and run the testapp

  1. If you're building the develop branch, change the Cartfile to use develop for all Readium-related dependencies :
github "readium/r2-shared-swift" "develop"
github "readium/r2-streamer-swift" "develop"
github "readium/r2-navigator-swift" "develop"
github "readium/readium-opds-swift" "develop"
  1. Fetch the dependencies using Carthage :

$> carthage update --platform ios

Warning: Carthage can't build the dependencies with Xcode 12 at the moment. See this issue for a workaround.

  1. Generate Carthage input/output filelist using Carting :

$> carting update

  1. Open the Xcode project :

$> open r2-testapp-swift.xcodeproj

  1. Build the project target named r2-testapp-swift (carthage).

More build and dependency information can be found in r2-workspace-swift

[@Contributors] Efficient workflow for testing changes on Readium-2

The release target r2-testapp-swift uses the libraries and frameworks built by Carthage, while the debug r2-testapp-swift-DEBUG can be modified to use local versions of ย r2-shared-swift, r2-streamer-swift and r2-navigator-swift depending of which you want to modify. Doing so will allow you to see the changes directly in the testapp, without the need for a Carthage cycle.

If you want to contribute to the development, I recommend creating a Workspace which contain the 4 projects (shared, streamer, navigator and testapp), and to use local Products as dependencies of the others to shorten development time. e.g: in your local clone of r2-navigator-swift, create a debug target which uses the Product of your local clone of r2-shared-swift. That way, when you modify and compile r2-shared-swift, the modifications are directly taken in your next r2-navigator-swift build.

r2-testapp-swift's People

Contributors

acamill avatar aferditamuriqi avatar alexc4m avatar ettore avatar iaomw avatar iosdevedrlab avatar llemeurfr avatar mickael-menu avatar mickael-menu-mantano avatar nikitaevidentpoint avatar tooolbox 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.