{"id":22612285,"url":"https://github.com/utsavdotpro/poc-ionic-pouchdb-couchdb","last_synced_at":"2025-03-28T23:44:45.429Z","repository":{"id":246571033,"uuid":"821509670","full_name":"utsavdotpro/poc-ionic-pouchdb-couchdb","owner":"utsavdotpro","description":"PoC for building a offline-first app using PouchDB \u0026 CouchDB in Ionic + Capacitor","archived":false,"fork":false,"pushed_at":"2024-06-28T18:28:50.000Z","size":513,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-03T10:12:02.770Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/utsavdotpro.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2024-06-28T17:49:04.000Z","updated_at":"2024-06-28T18:28:53.000Z","dependencies_parsed_at":"2024-06-28T19:23:58.176Z","dependency_job_id":"cc87f6d0-83eb-472d-9fc3-2298f409f917","html_url":"https://github.com/utsavdotpro/poc-ionic-pouchdb-couchdb","commit_stats":null,"previous_names":["utsavdotpro/poc-ionic-pouchdb-couchdb"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/utsavdotpro%2Fpoc-ionic-pouchdb-couchdb","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/utsavdotpro%2Fpoc-ionic-pouchdb-couchdb/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/utsavdotpro%2Fpoc-ionic-pouchdb-couchdb/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/utsavdotpro%2Fpoc-ionic-pouchdb-couchdb/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/utsavdotpro","download_url":"https://codeload.github.com/utsavdotpro/poc-ionic-pouchdb-couchdb/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246117690,"owners_count":20726068,"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-12-08T17:12:02.017Z","updated_at":"2025-03-28T23:44:45.411Z","avatar_url":"https://github.com/utsavdotpro.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"[\u003cimg src=\"https://ik.imagekit.io/iutsav/fork_l0RKONb5l.svg\" height=\"30\" /\u003e](https://githubbox.com/utsavdotpro/starter-ionic-capacitor-tailwind-ts)\n\n# PoC: Offline-first Ionic + Capacitor app with PouchDB \u0026 CouchDB\n\nPoC for building a offline-first app using PouchDB \u0026 CouchDB in Ionic + Capacitor\n\nStarter with a template for Ionic + Capacitor with Tailwind in TypeScript with an opinionated [modular project structure](#project-structure).\n\n### Technologies\n\n[![](https://img.shields.io/badge/Ionic-v7-176bff?style=for-the-badge\u0026logo=ionic)](https://ionicframework.com/)\n[![](https://img.shields.io/badge/Capacitor-v6-119eff?style=for-the-badge\u0026logo=capacitor)](https://capacitorjs.com/)\n[![](https://img.shields.io/badge/PouchDB-v9-6CCB99?style=for-the-badge\u0026logo=)](https://vitejs.dev/)\n[![](https://img.shields.io/badge/CouchDB-v3-E42528?style=for-the-badge\u0026logo=apachecouchdb)](https://vitejs.dev/)\n[![](https://img.shields.io/badge/React-v18-149eca?style=for-the-badge\u0026logo=react)](https://react.dev/)\n[![](https://img.shields.io/badge/Tailwind-v3-38bdf8?style=for-the-badge\u0026logo=tailwindcss)](https://tailwindcss.com)\n[![](https://img.shields.io/badge/TypeScript-v5-3178c6?style=for-the-badge\u0026logo=typescript)](https://typescriptlang.org)\n[![](https://img.shields.io/badge/Vite-v5-646cff?style=for-the-badge\u0026logo=vite)](https://vitejs.dev/)\n\n---\n\n## Sample\n\n\u003cimg src=\"sample/screenshot1.jpeg\" width=\"400\" alt=\"Sample Screenshot\" /\u003e\n\n## Getting started\n\nPrepare development environment\n\n```bash\npnpm install # install node dependencies \u0026 sync the assets with native projects\n```\n\n### Setting up the Databases\n\n- [Download](https://couchdb.apache.org/#download), install \u0026 run a CouchDB instance\n- Update the `src/lib/db/pouchDB.ts` with your `REMOTE_DB_URL`\n\n### Working with Web\n\n```bash\npnpm start # start the development server\npnpm build # generate the production build\n```\n\n### Working with iOS\n\n```bash\npnpm ios # start the project in simulator\npnpm build:ios # generate the production build \u0026 open in Xcode\n```\n\n### Working with Android\n\n```bash\npnpm android # start the project in emulator\npnpm build:android # generate the production build \u0026 open in Android Studio\n```\n\n## Project Structure\n\n```\n|-- android                   ℹ️ generated android project\n|-- ios                       ℹ️ generated ios project\n|-- public                    ℹ️ keep your static resource files\n|-- src\n|   |-- common\n|   |   |-- components\n|   |   |   |-- elements      ℹ️ keep your state-less components\n|   |   |   |                 ℹ️ keep your state-full components\n|   |   |-- hoc\n|   |   |-- hooks\n|   |   |-- layouts\n|   |   |-- sections          ℹ️ keep your common sections\n|   |-- core\n|   |   |-- config            ℹ️ keep your configuration files\n|   |   |-- constants\n|   |   |-- types\n|   |   |-- utils\n|   |-- lib\n|   |-- pages                 ℹ️ pages \u0026 their components\n|   |-- theme\n```\n\n## How to's\n\n### Update App Logo\n\n\u003e https://github.com/ionic-team/capacitor-assets#usage\n\n- Create following three variants of the logo in the `resources/`\n  - icon-foreground.png\n  - icon-background.png\n  - icon-only.png - actual logo with background\n- Run the following command:\n  ```bash\n  npx @capacitor/assets generate\n  ```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Futsavdotpro%2Fpoc-ionic-pouchdb-couchdb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Futsavdotpro%2Fpoc-ionic-pouchdb-couchdb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Futsavdotpro%2Fpoc-ionic-pouchdb-couchdb/lists"}