How diogoslsceno/tesi-react-native works
Rotina Acadêmica is a React Native/Expo app for organizing a student’s academic routine. The visible workflow enters through the app shell, opens dashboard or activity views, and uses activity context and a SQLite repository to load and update activities; activity lists and detail screens present those records. Other documented-in-code areas include discipline search, profile-photo management, and dashboard summaries and course cards. Evidence is partial, so unsampled routes and database initialization are included without guessed connections.
Main entry points: colors.ts Visual tokens · index.tsx Dashboard · _layout.tsx App shell · ActivitiesContext.tsx Activities state
Components 34
App navigation
- App shell
src/app/_layout.tsx - Tab navigation
src/app/(tabs)/_layout.tsx - Activity details route
src/app/activity-details.tsx - New activity route
src/app/new-activity.tsx
Academic views
- Dashboard
src/app/(tabs)/index.tsx - Activity route
src/app/(tabs)/activity.tsx - Discipline view
src/app/(tabs)/discipline.tsx - Activity list
src/components/activityList/index.tsx - Activity editor
src/components/activityCard/index.tsx - Activity details
src/components/activityDetails/index.tsx - Course card
src/components/CourseCard/index.tsx - Summary card
src/components/SummaryCard/index.tsx - Task card
src/components/TaskCard/index.tsx - Discipline card
src/components/DisciplineCard/index.tsx - Discipline search
src/components/SearchBar/index.tsx - Discipline tile
src/components/CardDiscipline/index.tsx
State and persistence
- Activities state
src/contexts/ActivitiesContext.tsx - Activity repository
src/database/activitiesRepository.ts - SQLite database
src/database/initializeDatabase.ts
Profile and presentation
- Profile state
src/contexts/ProfileContext.tsx - Profile card
src/components/profileCard/index.tsx - Visual tokens
src/styles/colors.ts - Dashboard styles
src/screens/index-style.ts - Course card styles
src/components/CourseCard/style.ts - Discipline card styles
src/components/DisciplineCard/style.ts - Search styles
src/components/SearchBar/style.ts - Summary styles
src/components/SummaryCard/styles.ts - Task styles
src/components/TaskCard/style.ts - Activity card styles
src/components/activityCard/style.ts - Details styles
src/components/activityDetails/style.ts - List styles
src/components/activityList/style.ts - Profile styles
src/components/profileCard/style.ts - Font tokens
src/styles/fontFamily.ts
Other components
- Student
Connections 44
- Student → App shell: opens
- App shell → Tab navigation: hosts
src/app/_layout.tsx - App shell → Activities state: provides
src/app/_layout.tsx - App shell → Profile state: provides
src/app/_layout.tsx - App shell → SQLite database: initializes
src/app/_layout.tsx - Tab navigation → Dashboard: routes
src/app/(tabs)/_layout.tsx - Student → Dashboard: views
- Dashboard → Summary card: renders
src/app/(tabs)/index.tsx - Dashboard → Task card: renders
src/app/(tabs)/index.tsx - Dashboard → Course card: renders
src/app/(tabs)/index.tsx - Dashboard → Profile state: reads photo
src/app/(tabs)/index.tsx - Dashboard → Dashboard styles: uses styles
src/app/(tabs)/index.tsx - Activity route → Activity list: renders
src/app/(tabs)/activity.tsx - Activity details route → Activity details: renders
src/app/activity-details.tsx - Activity list → Activities state: reads activities
src/components/activityList/index.tsx - Activity details → Activities state: updates activities
src/components/activityDetails/index.tsx - Activity editor → Activities state: saves edits
src/components/activityCard/index.tsx - Activities state → Activity repository: calls
src/contexts/ActivitiesContext.tsx - Activity repository → SQLite database: queries and writes
src/database/activitiesRepository.ts - Discipline view → Discipline search: renders
src/app/(tabs)/discipline.tsx - Discipline view → Discipline card: renders
src/app/(tabs)/discipline.tsx - Discipline view → Profile state: reads profile
src/app/(tabs)/discipline.tsx - Profile card → Profile state: reads and updates
src/components/profileCard/index.tsx - Activity list → Profile state: reads photo
src/components/activityList/index.tsx - Course card → Course card styles: uses styles
src/components/CourseCard/index.tsx - Discipline card → Discipline card styles: uses styles
src/components/DisciplineCard/index.tsx - Discipline search → Search styles: uses styles
src/components/SearchBar/index.tsx - Summary card → Summary styles: uses styles
src/components/SummaryCard/index.tsx - Task card → Task styles: uses styles
src/components/TaskCard/index.tsx - Activity list → List styles: uses styles
src/components/activityList/index.tsx - Activity details → Details styles: uses styles
src/components/activityDetails/index.tsx - Activity editor → Activity card styles: uses styles
src/components/activityCard/index.tsx - Profile card → Profile styles: uses styles
src/components/profileCard/index.tsx - Course card styles → Visual tokens: uses colors
src/components/CourseCard/style.ts - Discipline card styles → Visual tokens: uses colors
src/components/DisciplineCard/style.ts - Search styles → Visual tokens: uses colors
src/components/SearchBar/style.ts - Summary styles → Visual tokens: uses colors
src/components/SummaryCard/styles.ts - Task styles → Visual tokens: uses colors
src/components/TaskCard/style.ts - Activity card styles → Visual tokens: uses colors
src/components/activityCard/style.ts - Details styles → Visual tokens: uses colors
src/components/activityDetails/style.ts - List styles → Visual tokens: uses colors
src/components/activityList/style.ts - Profile styles → Visual tokens: uses colors
src/components/profileCard/style.ts - Dashboard styles → Visual tokens: uses colors
src/screens/index-style.ts - Visual tokens → Font tokens: shares design system