888888ba dP .d888888 dP dP
88 `8b 88 d8' 88 88 88
a88aaaa8P' .d8888b. 88d8b.d8b. .d8888b. 88d8b.d8b. 88d888b. .d8888b. 88d888b. 88aaaaa88a 88 88
88 `8b. 88ooood8 88'`88'`88 88ooood8 88'`88'`88 88' `88 88ooood8 88' `88 88 88 88 88
88 88 88. ... 88 88 88 88. ... 88 88 88 88. .88 88. ... 88 88 88 88 88
dP dP `88888P' dP dP dP `88888P' dP dP dP 88Y8888' `88888P' dP 88 88 dP dP
ooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooo
an app to help you remember people you meet
About | Instructions | Technologies used | Approach | Contributors |
A very cool React Native app that helps you remember folks when you can't even.
Clone this repository to your machine:
$ git clone git@github.com:jjadeseravla/RememberAll.git
Naviagte to the repo:
$ cd RememberAll
Install all the packages:
$ npm install
Run the unit tests:
$ npm test
When you're ready to run the application
react-native run-ios
or
react-native run-android
- React Native
- Jest & Chai for unit tests
- Cavy for integration tests
- Realm DB
- XCode, Android Studio for Iphone / Android Emulation
- Waffle.io
- Jade Alvares @jjadeseravla
- Simon Ashbery @siashbery
- Kye Bracey @kynosaur
- Dom McDonnell @dmcd84
- Lubos Michalic @lubosmichalic
- Jenny Wem @wemmm
We have stand-ups at 9:42 every day.
We will endeavour to have a laugh.
We commit in the present tense.
We use sensible, informative commit messages.
We review any issues as they arise.
We definitely have retros at 6PM, or 5PM in the event that someone is leaving early.
We actively rotate the leaders of retros and stand-ups.
We will have lunch/drinks together at some point (and we will not talk about code)
We respect that we all have lives outside of coding.
Well-being of team members comes first.
To help us visualise a product, we worked on some initial sketches of what our 'dream app' might look like. Although our layout was ultimately a little different, you can see the colour choices and narrative elements persisted into the final app.
- We had to consider an ethical angle, as one of our intial ideas was scraping info from social networks. Our conclusion? If you have to "get weird" to get some information about someone... it's probably not okay.
- Due to ethical concerns we chose to move away from info scraping and towards a 'friendly' contacts app that allowed users to store any info they found relevent about a contact, search by any tag or field, and see a sort, readable narrative interpolated from that info. So we proceeded to write user stories for this set of features.
- We defined our MVP as a form with a single text field that persists a name to a database.
- To achieve this, we had to learn how to use React Native and Realm.
- But even more challenging than learning this new tech- testing new tech!
- So we learned how to unit test with Jest, and how to do integration tests with Cavy.
- We mob programmed our way to MVP- hallelujah!!
- Then we iterated on our MVP by adding one feature at a time- additional fields, a tagging system, search functionality, narrative generation, profile editing and a bit of styling.
As a user,
So I can remember more about people I meet,
I would like an app to help me with this.
As a user,
So I can remember a person,
I would like to add a contact.
As a user,
So I can add information about a person,
I would like to add tags to a contact.
As a user,
So I can look up people whose names I've forgotten,
I would like to search my contacts by any details I know about them.
As a user,
So I can look up the details of a person I know,
I would like to be able to search contacts by name.
As a user,
So I can see all the information and details I know about a specific contact,
I would like to see a contact's profile.
As a user,
So I can see and browse all existing contacts,
I would like to see a full list of contacts upon opening the app.
As a user,
So I can keep my information up to date,
I would like to be able to update details of an existing contact.
As a user,
So I can better remember things about a person,
I would like to see a narrative of things I know about them on their profile.