Technologies used:
- Expo: Framework for React-Native development - Expo Documentation
- Formik: React form-builder that adds state, validation, and submit handlers out of the box
- Yup: Object-schema validation with TypeScript support
- React-native-testing-library: It's like Enzyme, but for React Native. Documentation
Requirements:
- Install Node Version Manager (nvm): https://github.com/nvm-sh/nvm. This will install NodeJS.
- Download command line tool:
npm install expo-cli --global
cd expo-app/
# Install dependencies
yarn
# Start up the expo app
yarn start
# Follow instructions to scan the app QR code using the Expo Android app to run it on your device
Requirements:
python v3.8
or higher - usepyenv
to manage your python versions.- Install
pipenv
to manage your dependencies & virtual environment: https://github.com/pypa/pipenv
cd flask-service/
# Spawn a shell with virtualenv activated
pipenv shell
# Install dependencies
pipenv install
# Run the Flask app
export FLASK_APP=app
export FLASK_ENV=development
flask run
# When you're done, you can exit
exit
- Try deleting
app.db
if any schema/model changes are made.
Ben Jackson wrote a great article on why we SHOULDN'T do snapshot testing.
Instead, we write test cases for the following:
it renders
it displays the right text
it conditionally renders some markup
it applies some CSS rules