NoteTakingApp is a React Native mobile application note manager built with local SQLite storage. It is designed for Android and focuses on fast note capture, organization, and retrieval through favorites, tags, search, and a recycle bin.
- Create, edit, and delete notes locally on the device.
- Mark notes as favorites for quick access.
- Organize notes with tags and tag colors.
- Search across saved notes.
- Restore or permanently remove notes from the recycle bin.
- View note detail and editor screens through a nested navigation flow.
- React Native 0.80
- TypeScript
- React Navigation
- SQLite via
react-native-sqlite-storage - Jest for tests
App.tsx- app entry point and navigation container.navigation/- drawer, tab, and stack navigation setup.screens/- main app screens.components/- reusable UI pieces.database/- SQLite schema and note data access.
This repository does not include
node_modules. Install dependencies locally after cloning.
- Node.js 18 or newer
- Android Studio with an Android emulator or a connected Android device
- Java and the Android SDK configured for React Native development
npm installnpm startnpm run androidIf Metro is already running, you can also launch the app from Android Studio after the native build completes.
npm start- start the Metro bundler.npm run android- build and run the Android app.npm run lint- run ESLint.npm test- run the Jest test suite.
- The app uses a local SQLite database, so notes stay on the device unless the database is cleared.
- The repository is intended for GitHub storage without committing generated folders such as
node_modules. - If you are opening the project for the first time, run
npm installbefore any build or test command.
npm testThis repository is made for UTAR assignment, so any other contributions are not allowed.