{"id":13559251,"url":"https://github.com/tify-iiif-viewer/tify","last_synced_at":"2025-04-03T14:31:46.184Z","repository":{"id":35368143,"uuid":"85699528","full_name":"tify-iiif-viewer/tify","owner":"tify-iiif-viewer","description":"TIFY is a slim and mobile-friendly IIIF document viewer.","archived":false,"fork":false,"pushed_at":"2024-05-29T00:03:06.000Z","size":5391,"stargazers_count":103,"open_issues_count":22,"forks_count":27,"subscribers_count":9,"default_branch":"main","last_synced_at":"2024-05-29T02:11:30.780Z","etag":null,"topics":["iiif"],"latest_commit_sha":null,"homepage":"","language":"Vue","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tify-iiif-viewer.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-03-21T12:32:37.000Z","updated_at":"2024-06-10T13:30:24.877Z","dependencies_parsed_at":"2023-02-19T05:30:41.081Z","dependency_job_id":"bbff5f2c-8423-4685-b14d-2cee13a8993b","html_url":"https://github.com/tify-iiif-viewer/tify","commit_stats":{"total_commits":671,"total_committers":17,"mean_commits":"39.470588235294116","dds":0.4783904619970194,"last_synced_commit":"fc3bd4eff8e766c4ca5904a3b4d1aec9bc662411"},"previous_names":[],"tags_count":87,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tify-iiif-viewer%2Ftify","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tify-iiif-viewer%2Ftify/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tify-iiif-viewer%2Ftify/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tify-iiif-viewer%2Ftify/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tify-iiif-viewer","download_url":"https://codeload.github.com/tify-iiif-viewer/tify/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":222978410,"owners_count":17067519,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["iiif"],"created_at":"2024-08-01T12:05:27.268Z","updated_at":"2025-04-03T14:31:46.161Z","avatar_url":"https://github.com/tify-iiif-viewer.png","language":"Vue","funding_links":[],"categories":["Vue","others"],"sub_categories":[],"readme":"\u003ch1\u003e\n\t\u003ca href=\"https://github.com/tify-iiif-viewer/tify\"\u003e\n\t\t\u003cimg src=\"https://tify.rocks/img/tify-logo.svg\" alt=\"TIFY\" width=\"148\" height=\"60\"\u003e\n\t\u003c/a\u003e\n\u003c/h1\u003e\n\nTIFY is a slim and mobile-friendly [IIIF](https://iiif.io/) document viewer built with [Vue.js](https://vuejs.org/). It supports [IIIF Presentation API and Image API](https://iiif.io/api/) version 2 and 3.\n\nContinue reading to learn how to integrate TIFY into your website or application and about its options and API, [check out the website for usage examples](https://tify.rocks/), or [have a look at the documentation](doc).\n\n## Embedding TIFY\n\nTIFY is available as an [npm package](https://www.npmjs.com/package/tify):\n\n``` bash\nnpm install tify\n```\n\nEmbed TIFY into your website in three easy steps:\n\n1. Include both the JavaScript and the stylesheet.\n\n\t- Either download TIFY and copy the contents of the `dist` directory to your server:\n\n\t\t``` html\n\t\t\u003cscript src=\"tify.js?v0.32.0\"\u003e\u003c/script\u003e\n\t\t\u003clink rel=\"stylesheet\" href=\"tify.css?v0.32.0\"\u003e\n\t\t```\n\n\t\t\u003e To avoid issues with browser caching, add a query parameter with the current version, e.g. `?v0.32.0`.\n\n\t- Or use [jsDelivr](https://www.jsdelivr.com/):\n\n\t\t``` html\n\t\t\u003cscript src=\"https://cdn.jsdelivr.net/npm/tify@0.32.0/dist/tify.js\"\u003e\u003c/script\u003e\n\t\t\u003clink rel=\"stylesheet\" href=\"https://cdn.jsdelivr.net/npm/tify@0.32.0/dist/tify.css\"\u003e\n\t\t```\n\n\t- Or `import` TIFY into your web application:\n\n\t\t``` js\n\t\timport 'tify'\n\t\timport 'tify/dist/tify.css'\n\t\t```\n\n2. Add an HTML block element with an `id` and set its `height`.\n\n\t``` html\n\t\u003cdiv id=\"tify\" style=\"height: 640px\"\u003e\u003c/div\u003e\n\t```\n\n3. Create a TIFY instance.\n\n\t``` html\n\t\u003cscript\u003e\n\tnew Tify({\n\t  container: '#tify',\n\t  manifestUrl: 'https://example.org/iiif-manifest.json',\n\t})\n\t\u003c/script\u003e\n\t```\n\nMany aspects of the theme can be modified with SCSS variables or CSS custom properties, allowing you to easily adapt TIFY’s appearance to your website. [See the theme settings file](src/styles/util/settings.scss) for all available variables.\n\n## Upgrading\n\nIf you are are upgrading from any previous version, [have a look at the upgrading guidelines](UPGRADING.md).\n\n## Configuration\n\nTIFY takes an options object as its only parameter. While optional, you usually want to set `container` and `manifestUrl`.\n\nSee [config.js](src/config.js) for a documentation of all available options.\n\nAn example with most options set to non-default values:\n\n``` js\nnew Tify({\n  container: '#tify',\n  language: 'de',\n  manifestUrl: 'https://example.org/iiif-manifest.json',\n  pageLabelFormat: 'P (L)',\n  pages: [2, 3],\n  pan: { x: .45, y: .6 },\n  translationsDirUrl: '/translations/tify',\n  urlQueryKey: 'tify',\n  urlQueryParams: ['pages'],\n  view: '',\n  viewer: {\n    immediateRender: false,\n  },\n  zoom: 1.2,\n})\n```\n\n## API\n\nTIFY provides an API for controlling most of its features, see [API documentation](doc/api.md).\n\n## Build Setup\n\nYou need to have Node.js v18.0 or above, npm (usually comes with Node.js) and git installed.\n\nInstall dependencies:\n\n``` bash\nnpm install\n```\n\nRun in development mode with hot reload and automatic linting:\n\n``` bash\nnpm run dev\n```\n\nBuild for production with minification:\n\n``` bash\nnpm run build\n```\n\nThe production build will be stored in `dist`.\n\n### Running Tests\n\nRun unit tests: `npm run test:unit`\n\nRun end-to-end tests:\n- Development build: `npm run dev`\n- Production build: `npm run build \u0026\u0026 npm run test:e2e`\n\n## Translations\n\nTranslations reside in `public/translations`. Each language is represented by a JSON file, where the file name is the language’s [ISO 639 alpha-2 code](https://en.wikipedia.org/wiki/List_of_ISO_639_language_codes). Each file consists of a single object of key-value pairs; the key is the original English string, the value is the translation. The first key `$language` denotes the native name of the translation’s language. There are a few other special keys starting with `$`; while all other keys are to be translated literally, these keys serve as placeholders for longer sections of text. Search the source files for these keys to reveal their corresponding texts.\n\nTo create a new empty translation, run `node build/create-translation.js` and follow the prompts.\n\nTo check all translations for validity and completeness, use `npm run test:i18n` or `npm run test:i18n:fix`, the latter adding missing keys, removing unused keys, and sorting keys.\n\n---\n\n\u003ca href=\"https://www.sub.uni-goettingen.de/en/\"\u003e\n\t\u003cimg src=\"https://tify.rocks/img/sub-logo.svg\" width=\"329\" height=\"30\" alt=\"Göttingen State and University Library\"\u003e\n\u003c/a\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftify-iiif-viewer%2Ftify","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftify-iiif-viewer%2Ftify","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftify-iiif-viewer%2Ftify/lists"}