due at midnight on +150
Prerequisite: Follow the software setup instructions. (All of the following should be done within a folder of your git working directory, so you can push it to gitlab by the deadline.)
For this milestone, your goal is to get a basic React Native app working, with its source uploaded to gitlab. Here are the specific requirements.
The app should include a basic View
container with some Text
elements in it. It should also include an Image
element.
You should use at least one custom element, such as Greeting
or BlinkText
in my demo, but it could be something different.
Your app should include a TextInput
and a Button
element. It should react in some way to the button being pressed. For example, it could increment a counter, or toggle the background color.
In addition to working in an Expo environment, the tests should pass when you run either npm test
(for interactive testing), or node node_modules/jest/bin/jest.js
(for batch testing).
You should make sure there is a .gitignore
file in the top-level of your working directory, and/or in the project subdirectory. (The create-react-native-app
probably created a suitable one for you.) In particular, the node_modules
directory should absolutely not be part of your commit.
You should include a .gitlab-ci.yml
in the top-level of your working directory, and make sure that the gitlab continuous integration system can build and test your app. Here is the gitlab-ci configuration from my demo app. The only changes you should make are to replace the demo
directory name with your own subdirectory (in the test/script
section, and in the cache/paths
). You can see the results of the continuous integration in your commits list. Click the green checkmark (or red X
) and then the test
entry to see a full transcript.