1.6 KiB
1.6 KiB
CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
Commands
- Start Metro bundler:
npm start
- Run on Android:
npm run android
- Run on iOS:
npm run ios
- Before running on iOS for the first time, or after updating native dependencies, you need to install CocoaPods dependencies:
bundle install
bundle exec pod install
- Before running on iOS for the first time, or after updating native dependencies, you need to install CocoaPods dependencies:
- Run tests:
npm test
- Lint files:
npm run lint
Architecture
This is a React Native application for task management.
- Navigation: The app uses
react-navigation
. The main navigator is a bottom tab navigator (AppNavigator.tsx
) with four tabs: "主页" (Home), "运行" (Run), "编辑" (Edit), and "设置" (Settings). The "主页" tab contains a stack navigator for the task list and task editing screens. - State Management: Task data is managed globally using React Context (
src/context/TasksContext.tsx
). TheTasksProvider
provides tasks and functions to interact with them (getTaskById
,updateTask
,runTask
). - Data: Mock task data is used for development, located in
src/data/mockData.ts
. - Components: Reusable components are located in
src/components
. - Screens: Each screen of the application is a separate component in the
src/screens
directory. - Types: TypeScript types, like the
Task
type, are defined in thesrc/types
directory.
The root component of the application is App.tsx
, which sets up the ThemeProvider
, TasksProvider
, and NavigationContainer
.