{"id":13929509,"url":"https://github.com/techmatters/terraso-library-prototype","last_synced_at":"2025-07-19T11:32:12.753Z","repository":{"id":49593817,"uuid":"309532253","full_name":"techmatters/terraso-library-prototype","owner":"techmatters","description":"cloud content viewer prototype","archived":true,"fork":false,"pushed_at":"2021-06-12T21:37:12.000Z","size":7986,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-08-08T18:23:32.849Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","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/techmatters.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}},"created_at":"2020-11-03T00:46:26.000Z","updated_at":"2023-03-14T20:29:16.000Z","dependencies_parsed_at":"2022-09-21T21:02:20.168Z","dependency_job_id":null,"html_url":"https://github.com/techmatters/terraso-library-prototype","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techmatters%2Fterraso-library-prototype","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techmatters%2Fterraso-library-prototype/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techmatters%2Fterraso-library-prototype/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/techmatters%2Fterraso-library-prototype/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/techmatters","download_url":"https://codeload.github.com/techmatters/terraso-library-prototype/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":226597724,"owners_count":17657202,"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":[],"created_at":"2024-08-07T18:02:23.269Z","updated_at":"2024-11-26T18:30:49.944Z","avatar_url":"https://github.com/techmatters.png","language":"JavaScript","readme":"![Logo](docs/images/terraso-logo.png)\n# Terraso Library\n\nThe Terraso Library is a Progressive Web App that allows the user to view documents (images, PDFs, text files, etc.) and store them for offline reading. This was created as part of the [1000 Landscapes Project](https://techmatters.org/project/1000-landscapes/) primarily to research the functionality and limitations of Progressive Web Apps. This relies on Amazon Web Services: AppSync, DynamoDB, and Amazon S3.\n\n## Using the Terraso Library\nThe homepage contains an overview viewer:\n\u003cbr\u003e\u003cimg src=\"docs/images/home.png\" width=\"800\"\u003e\n\nYou can change languages using a dropdown menu. English, French and Spanish are available.\n\u003cbr\u003e\u003cimg src=\"docs/images/languages.png\" width=\"800\"\u003e\n\nThe Documents page contains a list of Documents (fetched from a GraphQL API)\n\u003cbr\u003e\u003cimg src=\"docs/images/list-documents.png\" width=\"800\"\u003e\n\nYou can click (or tap, if on mobile) on buttons to open a Document.\n\u003cbr\u003e\u003cimg src=\"docs/images/read-pdf.png\" width=\"800\"\u003e\n\nClicking (or tapping) the heart button next to each Document will favorite that document, adding it to the Cache and making that document available offline.\n\u003cbr\u003e\u003cimg src=\"docs/images/favorite.png\" width=\"800\"\u003e\n\nThe Terraso Library is a Progressive Web App (PWA) and can be installed to the homescreen of a mobile device. [How to install a Progressive Web App onto the homescreen of a mobile device.](https://mobilesyrup.com/2020/05/24/how-install-progressive-web-app-pwa-android-ios-pc-mac/#:~:text=Installing%20a%20PWA%20on%20iOS\u0026text=Navigate%20to%20the%20website%20you,like%20a%20native%20iOS%20app)\n\n## For developers\n\n### Prerequisites\nBefore using the Terraso Library, install git, node and npm. You will also need an Amazon Web Services (AWS) account to configure it like we have. It should work without AWS, but we don't have instructions for that.\n\n### Installation\n```\ngit clone https://github.com/techmatters/terraso-library-prototype\ncd terraso-library-prototype\nnpm install\nnpm run start\ncp .sample.env .env\n```\n\n### Setting up an AWS Resources\n* [Set up an S3 bucket to host documents](docs/S3-CONFIG.md)\n\n* [Setting up an AppSync GraphQL server](docs/GRAPHQL.md)\n\n* [Hosting on Amplify](docs/AMPLIFY.md)\n\n### Project Summary\n* [Summary of the Goal/Purpose of the Terraso Library](docs/project-summary.pdf) outlines some of the design choices and and difficulties encountered during the project as well as features that could be implemented in the future.\n","funding_links":[],"categories":["others"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftechmatters%2Fterraso-library-prototype","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftechmatters%2Fterraso-library-prototype","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftechmatters%2Fterraso-library-prototype/lists"}