This is the mobile repository for Hire Me, a application that uses flash cards to help you train for your next tech interview.
base.ts
determines base URL path for requests, creates requests obj.*.ts
configure requests to a specific data type likeUser
,Question
, etc.agent.ts
encapsulates all requests and exports them to be used in components.
- Contains pages for app. If a file is not prepended with a
_
then it is a page - Uses expo router. Expo router uses the file path to determine the 'url', which in this case the url is just used for routing in mobile app.
- Files prepended with a
_
usually indicate a layout component. - The top level
_layout.tsx
is the global layout where we can wrap providers, and other wrappers that should be available globally.
- Static assets, fonts, images, icons, etc.
- Contains components that are not specific to any feature and can be used anywhere in the app. Think buttons, dropdowns, modals, etc.
- Components specific to a feature like logging in, sessions, user dashboards, etc.
- Example components could be a
LoginForm.tsx
,QuestionItem.tsx
,QuestionList.tsx
,UserAvatar.tsx
, etc.
- Global variables that don't change throughout the app.
- Example could be color scheme or icon settings.
- Contains reacts context providers used throughout app.
- Typescript types that are needed globally across multiple components.
models
- app objects likeUser
,Question
, etc.dtos
- Data Transfer Objects, specific to a request or response data object.