Building the aiMessages iOS App - pt. 7 (Conclusion)
If you’ve made it this far - thanks for reading! I had a blast building aiMessages with Jake, and it was fun to recap the journey here, along with things I learned along the way.
As John Crickett often states, building software is the best way to learn and grow as a software engineer, and I couldn’t agree more. To wrap up, here’s a list of all the programming concepts, technologies, and softwares I learned while building this app:
- Buffer (Blog series Part 2)
- FormData (Blog series Part 2)
- Exponential Backoff Algorithm (Blog series Part 2)
- dotenv (Blog series Part 2)
- enums (Blog series Part 2)
- interfaces (Blog series Part 2)
- custom error classes (Blog series Part 2)
- server side logging (Blog series Part 2)
- optional chaining operators (Blog series Part 2)
- nullish coalescing (Blog series Part 2)
- async/await (Blog series Part 2)
- Axios (Blog series Part 2)
- LoopMessage iMessage API (Blog series Part 3)
- OpenAI API (Blog series Part 4)
- Stability AI API (Blog series Part 5)
- Clipdrop API (Blog series Part 5)
- Firebase (Blog series Part 6)
- Firebase: Realtime Database (Blog series Part 6)
- Firebase: Cloud Firestore Database (Blog series Part 6)
- Firebase: Storage (Blog series Part 6)
- Firebase: Functions (Blog series Part 6)
- Firebase: Authentication (Blog series Part 6)
- Firebase: Analytics (Blog series Part 6)
- Firebase: Secret Manager (Blog series Part 6)
And if you started here, and want to check out my other posts about this project, see the links below:
Using TypeScript (Blog series Part 2)
LoopMessage API (Blog series Part 3)
OpenAI API (Blog series Part 4)
Stability AI and Clipdrop APIs (Blog series Part 5)
Feel free to leave comments or issues, and thanks for reading!