This is my version of the Mememe project from Udacity's iOS Developer nanodegree program.
This meme-generating app is simple, fun, and easy to use. Here's the first meme I made with my own app. Yup that's me, during COVID.
Memes generated by this app consist of a photo and two text fields. Memes can be shared and saved. However, the app always launches with a clean slate. Future versions will include the ability to save memes permanently.
The Saved Memes view can display a list of memes as a table or collection. Select a meme to view it full-sized. From the detail view you may edit, delete, or share the meme. Caution: tapping the trash can will immediately and permanently delete the visible meme!
You may slect a photo from your photo album or take a new photo with your device. A new photo may be selected or taken at any time and will replace the current photo. After selecting a photo you may crop it as needed using the crop button in the tool bar. The first time you crop a photo, it will be presented with a cropping frame that fills the screen. You can change the aspect ratio by dragging the frame or selecting common ratios from a menu.
The app allows you to make two versions of your meme; one for portrait and one for landscape orientation. Once you crop your image in a particular orientation, that crop will be saved, and will appear whenever your device is held in that same orientation.
You may enter text into either or both of the provided text fields. To remove a text field from view, replace the default text with a space (spacebar).
From the Saved Memes view, tap the meme you wish to share to view it full-sized. If the meme is complete, the share button will be active. If not, you may tap the edit button to complete the meme. The share button will open a standard list of options for sharing your meme.
When you first open the app a new meme is created for you to edit. After saving your first meme, tap the plus button in the Saved Memes view to open a new meme in the editor.
- Save memes permanently so they will still be there next time you open the app!
- Update the cropping behavior so memes of smaller sizes will not have "invisible wings" when shared.
Hat tip to Lara Martín for sharing this approach to licensing.
This project was submitted by Monty Harper as part of the Nanodegree At Udacity.
As part of Udacity Honor code, your submissions must be your own work, hence submitting this project as yours will cause you to break the Udacity Honor Code and may result in the suspension of your account.
I, the author of the project, allow you to check the code as a reference, but if you submit it, it's your own responsibility if you get expelled.
Copyright (c) 2023 Monty Harper
Besides the above notice, the following license applies and this license notice must be included in all works derived from this project.
MIT License
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.