Giter Club home page Giter Club logo

souvenirs_ios's Introduction

Hi there ๐Ÿ‘‹

Nicolas' github stats

Iโ€™m a software engineer, focusing on iOS and IoT product development.

I started my iOS development career at Elun, a Chilean mobile app factory, working on various contextual-location-aware projects using GPS and iBeacon technologies. Three years later, I led the iOS teams at TheBesty, an Chilean-American app for travelers with tour booking and real-time chat with hotel concierges, to later join Velco, building French IoT products for smart mobility and vehicle tracking systems.

Then, at Netatmo, I contributed to the development and maintenance of several smart home products, where the highlights were working with HomeKit and low-level networking APIs (Bonjour, WAC, CoreBluetooth) as well as the usage of technologies as WebRTC for video call features.

Today, I work as the lead mobile software engineer in Speach, where we are currently building the company's second mobile app: Weet.

As a conference speaker, I presented a talk about UI testing and push notifications at CocoaHeads Nantes and iOS Love Chile meetups. Also, I gave a talk about overseas remote work and multicultural teams in 9punto5 conference.

souvenirs_ios's People

Contributors

clairerimel avatar nicoonswift avatar

Watchers

 avatar  avatar

Forkers

clairerimel

souvenirs_ios's Issues

Setup Bitrise CI

  • We should be able to profit from a free account as the repository is public.
  • We could create a secondary GitHub account providing all Bitrise access, that would act as a bot for CI feedback on Pull Requests

User should be reminded of a message on its specific set time via notification

System permission

  • After storing a first message, the user should be asked to enable push notifications via a system permission.
  • If the user denies the permission at that moment or later via iOS Settings, the app should display an error screen asking the user to turn them on. This screen should provide a button that redirects the user to iOS Settings to change the notification's permission.
  • If the user authorizes the permission no further action is required.

Notification reception

  • After successfully storing a message, a notification object should be created using UserNotification framework, where its text should be the message and its fireDate the message's deliver date.

Resources:

User should be able to enter a message in text format

  • User enters a message in a text view using the keyboard
  • User sets a specific date for the message to be delivered using a DatePicker
  • When user presses "Save message" button, a record of the message is stored in CoreData.

Here's a prototype for the message's CoreData model:

MessageEntity
* message: String
* deliverDate: Date (or Int to cast to TimeInterval)
  • Once the message is successfully stored, the user should be redirected to the main screen.
  • If there's an issue while storing the message, the user should receive feedback in an error message (AlertController) being able to retry the action once the alert is closed.

User should be able to see a history of messages once delivered

  • The messages should be displayed on a list (ex: UITableView), where each cell represents a message. The delivery date should be displayed in a readable format (ex: dd-mm-YYYY).
  • The messages are fetched from CoreData.
  • If there are no records on CoreData, then an empty screen should be displayed with a message "Create your first souvenir !" inviting the user to do so.
  • No further actions are possible with the messages for this release.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.