{"id":13433291,"url":"https://github.com/blefebvre/react-native-sqlite-demo","last_synced_at":"2026-01-25T10:06:57.923Z","repository":{"id":38421308,"uuid":"151000549","full_name":"blefebvre/react-native-sqlite-demo","owner":"blefebvre","description":"An offline-first list app built with React Native, SQLite, TypeScript, and Cocoapods. Runs on iOS and macOS.","archived":false,"fork":false,"pushed_at":"2023-01-06T01:36:31.000Z","size":3550,"stargazers_count":113,"open_issues_count":30,"forks_count":37,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-10-28T16:11:57.754Z","etag":null,"topics":["react-native","react-native-macos","sqlite","typescript"],"latest_commit_sha":null,"homepage":"https://brucelefebvre.com/blog/2020/05/03/react-native-offline-first-db-with-sqlite-hooks/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/blefebvre.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":"2018-09-30T19:45:08.000Z","updated_at":"2024-09-06T23:37:23.000Z","dependencies_parsed_at":"2023-02-05T01:46:00.728Z","dependency_job_id":null,"html_url":"https://github.com/blefebvre/react-native-sqlite-demo","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/blefebvre%2Freact-native-sqlite-demo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blefebvre%2Freact-native-sqlite-demo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blefebvre%2Freact-native-sqlite-demo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/blefebvre%2Freact-native-sqlite-demo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/blefebvre","download_url":"https://codeload.github.com/blefebvre/react-native-sqlite-demo/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244033779,"owners_count":20386995,"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":["react-native","react-native-macos","sqlite","typescript"],"created_at":"2024-07-31T02:01:23.699Z","updated_at":"2026-01-25T10:06:57.887Z","avatar_url":"https://github.com/blefebvre.png","language":"TypeScript","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"readme":"# React Native SQLite + Dropbox sync demo\n\nThis project is a basic List application that demonstrates building an offline first app with SQLite and React Native (featuring TypeScript and CocoaPods under the hood). Once authorized, the database can be synced between multiple iOS devices using Dropbox. \n\nThese instructions cover iOS and macOS usage at this time.\n\n\n## Install JS dependencies\n\n    npm install\n\n\n## Install iOS dependencies (requires [Cocoapods](https://cocoapods.org/))\n\n    pushd ios/\n    pod install\n    popd\n\n\n## Install macOS dependencies\n\n    pushd macos/\n    pod install\n    popd\n\n\n## Start the React Native Metro Bundler\n\n    npm run start:macos\n\n\n## Run (and debug) on the iOS simulator\n\nWith the \"React Native Tools\" VSCode extension installed, open the Debug tab and press the \"Play\" button with \"Debug iOS\" selected in the dropdown.\n\nWhen the simulator opens, press Command-D to open the developer menu. Tap \"Debug JS Remotely\" to connect VSCode to the app and enable debugging.\n\nAlternatively: \n\n    open ios/RNSQLiteDemo.xcworkspace\n\nSelect a simulator of your choice. Press the \"run\" button.\n\n## Run on the macOS simulator\n\nOpen the macOS Xcode project:\n\n    open macos/RNSQLiteDemo.xcworkspace/\n\nSelect `My Mac` as the \"active scheme\". Press the \"Build and then run\" (Play) button.\n\n\n## Types and testing\n\n### Compile TypeScript source in watch mode\n\n    npm run tsc -- -w\n\n\n### Run the Jest unit tests\n\n    npm test\n\n\n### E2E Testing with Detox on iOS\n\nEnd-to-end testing happens from within the `e2e/` directory:\n\n    cd e2e/\n    npm install\n\n\n#### Build E2E tests\n\n    npm run test:e2e:build\n\n\n#### Run E2E tests\n\n    npm run test:e2e\n\n\n#### Run tests without reinstalling onto the Simulator\n\nDetails on this workflow can be [found here](https://github.com/wix/Detox/blob/master/docs/Guide.DevelopingWhileWritingTests.md):\n\n    npm run test:e2e:reuse\n\n\n## Troubleshooting\n\n#### Run Metro Bundler and clear it's cache\n\n    npm start -- --reset-cache\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblefebvre%2Freact-native-sqlite-demo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fblefebvre%2Freact-native-sqlite-demo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fblefebvre%2Freact-native-sqlite-demo/lists"}