Frontend Technical Overview - bluecolab/BlueColab_MobileDataViz GitHub Wiki
The tech stack is list of all the languages, frameworks, UI components etc. we use. Hover the β to learn more. The specific versions of each software (if needed) are listed in the package.json.
- Languages
- Library β
- React β
- Framework + UI Components β - React Native β - Expo β
- Visualizations β - Victory Native β
- Styling β - Tailwind + Nativewind β
- Routing β
- Expo Router β
- API Requests
- Axios β
- Date Handler β
- Luxon β
- Local Previewing
- Expo CLI β
- Bundler β
- Metro β
- Compiler β - Babel β
- Build β
- Expo EAS β
- Linting β
We use file-based navigation provided via the Expo Router for navigation.
Please follow this structure when creating new files:
aquawatch_mobile_app - Parent folder, for all sob-directories and config files
ββββapp - For all app pages and navigation related files
β ββββ(tabs) - Our main navigation pattern, all pages should be under this directory
ββββassets - For all images, icons, and fonts
ββββcomponents - For all of the custom components (building blocks of pages)
ββββcontexts - For all of the custom contexts (a way to share data between all pages and components)
ββββhooks - For all of the custom hooks (reusable logic for state, data fetching, etc.)
ββββpatches - For patches needed to fix broken npm packages
ββββtypes - For all custom TypeScript type definitions
Each of the above directories may be organized even further, grouped by similar functionality.