Insights & Articles
Exploring AI, mobile technology, and software craftsmanship. Dive into articles, tutorials, and reflections from my tech journey.
How to implement Sign in with Apple using NextAuth in NextJs
A step-by-step guide to implementing Apple authentication in your NextJS app using NextAuth. Learn how to set up App IDs, Service IDs, and configure your auth flow in less than an hour.
Safe non-local returns using crossinline for inline functions in kotlin
A higher-order function is a function that either takes another function as a parameter, returns a function, or both. These functions are a key feature of Kotlin and provide much flexibility when writing functional-style code.
How to add a round filter or mask to OBS's video capture feed
So you are new to OBS and itching to record your first video demo of a project you have been working on. You've been watching other content creators record slick, professional-looking videos and share them on their big social media platforms.
Building cost-effective AI systems using RouteLLM
Most of the time, building AI systems means juggling efficiency against performance and budget. RouteLLM is a new model designed to route inputs/prompts/queries to their best destination model. By using RouteLLM, developers can design very able AI systems that will also be cost-effective and powerful.
Paginating Firebase Realtime Database in a RecyclerView within a NestedScrollView
Learn effective strategies for paginating Firebase Realtime Database data in an Android RecyclerView, especially when nested within a NestedScrollView, to improve app performance and user experience.
How to Safeguard Your API Keys in Android Projects with GitHub Secrets
Learn effective methods to protect your API keys in Android projects by using local.properties, BuildConfig, and GitHub Secrets for secure CI/CD workflows.
Strategies on how to showcase your portfolio and impress potential clients as a freelancer
As freelancers, we are often asked to present a portfolio of our previous projects and works. Prospective clients usually ask for this because they want to build trust in your work by reviewing your previous projects. This is a prime opportunity to convert a client and seal the deal.
Creating an AI Blog Post Generator with LangChain: A Step-by-Step Guide
There is an AI content creation tool called copy.ai that has a concept of workflows. A workflow is basically a series of pre-determined steps that are carried out with the aim of achieving an end goal using AI. Learn how to build your own AI blog generator using LangChain.
How to fetch medium articles/stories automatically to your django website
I have been working on building my portfolio website using Django as the backend and the front end is HTML and Bootstrap CSS. I needed to populate the recent blogs section on my portfolio because I write quite a lot on Medium and I really wanted to showcase that on my portfolio.
Overcoming Burnout: Leveraging Boredom to Boost Productivity and Learn New Skills
Last weekend pushed me to my limits. We had to meet a deadline by Friday, and by the time Saturday rolled around, I was entirely burnt out. I ended up spending the entire day doing almost nothing, falling into a state of boredom. During this idle time, I discovered how boredom can be a catalyst for learning and productivity.
How to create a document scanner using ML Kit and Jetpack Compose
Google recently released their ML Kit document scanner API that can help you easily add a powerful AI-powered document scanner to your app. In this blog post, I will go through a step-by-step guide to implementing it in your app.
A healthy gut equals to a longer, happier life — MealPlanner app
Maintaining a healthy diet can be challenging, the demands of work, school and home life often leave us with little to no time to consciously plan and prepare nutritious meals that are good for both our physical and mental health. This lack of planned eating can lead to unhealthy eating habits, resulting in problems such as weight gain and other health issues.
Fetching data from REST APIs using Ktor in Android
How to use Ktor to make HTTP requests in Android, including dependencies, client setup, making requests, and handling responses.
Authentication for Django REST APIs
Authentication aims to associate an incoming request with an existing user credential. Permission and throttling policies determine whether a request should be permitted or not. This post covers authentication schemes, settings, and token generation in Django REST Framework.
Data Layer : Android app architecture notes
This contains the application data and business logic and rules that determine how CRUD can be performed in the app. The separation of concern achieved through the DataLayer enables it to be used in multiple screens, share information between multiple parts of the app and also reproduce business logic outside of the app for testing.
UI Layer : Android app architecture notes
The UI is state is always changing basing on user events and also data from the internet. Therefore, we expect the data presented to the user to be changing, so we can expose UI states as an observable data stream. This post covers UI layer principles, state management, and best practices in Android architecture.
The Langchain Interface : Chains and Runnables
To make it easy to create custom chains, Langchain uses a Runnable protocol. It is a standard interface which makes it easy to define and invoke custom chains in a standard way. All runnables expose…
Text Recognition with Jetpack Compose and CameraX
Implementing CameraX while using Jetpack Compose can be a bit challenging because some of the views, like PreviewView, that provide the surface upon which the camera preview is displayed are not…