Team Project 23 present GeoBook

Discover, Share, Read: The Geocaching App for Book Lovers!

Introducing a new mobile app for book lovers and adventure seekers alike! Our app combines the excitement of geocaching with the joy of sharing and discovering new books. Using your smartphone's GPS, you can search for hidden "book caches" in your area, each containing a carefully selected book. Once you find a cache, you can take the book and leave one in its place for the next person to discover. You can also log your find and share your experience with other users in the app's community. But the fun doesn't stop there! You can also create your own book caches and share them with others. Choose a unique location, add a hint, and hide a book for someone else to find. Or, if you're feeling generous, leave a book at a popular landmark or community center for someone to stumble upon. Whether you're an avid reader or just looking for a new outdoor adventure, our app is the perfect way to discover and share new books while exploring your community. So join our community of book-loving adventurers and start your geoBook journey today!

GeoBook Demo Video | Northcoders Project Presentations

GeoBook Demo Video | Northcoders Project Presentations

Team Project 23

Becky PughPreview: Becky Pugh

Becky Pugh

Dean WordenPreview: Dean Worden

Dean Worden

Erin DunnPreview: Erin Dunn

Erin Dunn

Daniel 'Gibbs' GilbertPreview: Daniel 'Gibbs' Gilbert

Daniel 'Gibbs' Gilbert

Tech Stack

We used: MongoDB, Mongoose, Express, React-Native, React-Native-Styling, Node, Jest, Supertest, Expo, Expo-Location, React-Native-Maps, Axios, Firebase Authentication, Google Books API, JavaScript, FigJam, Trello.

MongoDB: Geospatial Indexing was a feature we want to implement to allow for GeoJSON integration. It was also a NoSQL DB we had not used before. Mongoose: Required to design schemas (data collections) for use with MongoDB Firebase: User Authentication to act as an intermediary tech between front and back end. Axios, Node and Express, Jest and Supertest: Due to the amount of new tech already employed, we felt it essential to have some familiar footing to speed up development to meet MVP and allow for test driven development. React-Native & Expo: Initially, we spiked Leaflet.js and React.js and quickly transitioned to React Native and React Native Maps. This allowed us to create a mobile application for users to use everywhere which was essential in a map based application. This was also new, but familiar, tech with small syntax changes! This also allowed us through Expo a framework to develop and test the app on our own mobile devices preventing need for android emulation and allowing screenshare through charging cable connection. We also explored React Native Styling, and Maps as new tech which allowed integration to both Google and Apple Maps on android or iOS devices. Figjam and Trello: Essential for remote working and organisation. JavaScript: Due to time constraints and current job market, we kept to a familiar language and refined our skills rather than exploring other languages like TypeScript or Python.

We faced challenges in one member requiring time off for extracurricular necessity. Unmuting on Zoom Sharing Screen on Zoom New Tech required a lot of time investment to develop efficiently.

Fantastic Project and Team!

Tech StackPreview: Tech Stack