I recently built a project that required integrating with Paypal to collect payments from users. After spending hours trying to implement Paypal payments using the Paypal JavaScript SDK, I realized that this was going to be an uphill task. Thankfully, I found an NPM package that already abstracted the SDK into React components for us to use. In this article, I’ll show you exactly how to collect payments using Paypal in your React application.

Getting started — setup your Paypal account

First steps first. Head over to PayPal to create an account. Once done, head to the PayPal developer screen.

Getting your credentials

Next step is to grab your credentials…

If you missed Part 2 of this story, you can read it here and You’re welcome to also read the First Part!

Day 2

After an eventful First day where we almost ended up sleeping on the streets because our hosts were asleep by the time we got back, Sunday was another opportunity to explore IB! On our list for the day were Cocoa House, Mapo Hall and Agodi Gardens.

I was up around 6:00am, came down at around 7:30am. I met Victoria already awake and chilling in the Sitting room. I sat with her and we talked about random things; Life…

If you missed Part 1, you can find it here.

The trip from Moniya station into Bodija took around 25mins. Thankfully, Seyi has a family house in Ìbàdàn and had offered to lodge us for the weekend.

When we got to the Estate, the security men wouldn’t let us in. Seyi tried to explain that it was his house and that he was the son of the owner but the security weren’t having it. They insisted we called the person inside to call them. Eventually, the security called one of Seyi’s uncles. Here’s how that went;

Security: Good afternoon sir…

Everything you need to know about taking the train from Lagos to Ìbàdàn.

I have to start this from the very beginning. I was scrolling through Instagram a couple of weeks ago and saw @bolanle’s post on taking the train to Ìbàdàn. I sent DMs to my friends - Seyi, Benie and Victoria and they were all down to go!

It all started with a DM

This is probably the easiest trip I’ve ever tried to plan. Everyone was down from day one and no one bailed.

Here’s timeline of our Ìbàdàn trip and how it all went down.


We all met up at the Railway station in Yaba. Seyi, Benie and I arrived at 7:50am because Victoria had…

How to build a mailing list with Ruby on Rails and Mailchimp

Ever needed to collect simple form data from users on a landing page and have a nice UI to show that list on? MailChimp is for you! And here’s how to setup a MailChimp mailing list with Ruby on Rails!

What you’ll need

  1. Rails 6 installed
  2. Ruby installed. You can follow my article on how to get Rails setup on your machine.
  3. A MailChimp account

Initial Setup — Ruby on Rails

  1. Create a new rails API using rails new mailing-list-app --api --database=postgresql . Once your rails application is setup, run rails db:create db:migrate to setup your postgres database.
  2. In your terminal, run rails s and navigate to http://localhost:3000 to…

Using react-cookie in Nextjs

With LocalStorage

There are a number of ways to persist users in a React or Single Page Application. A lot of times, devs generally use localStorage to store user data and load the data from there when required. While this approach works, it’s not the most effective way as it leaves users vulnerable to attacks. Using cookies is a little safer although it’s still not the safest option. Personally, I prefer a mixture of using cookies and JWT’s(JSON Web tokens) with expiry to persist user session and to force a user to re-login when their session expires. …

loading bar on github route change

Setting Up

I spent days trying to find the right thing to google on how to setup the blue loading bar that shows at the top of your screen when navigating between routes in NextJS. It’s important to have this loading indicator to signify that a route change is occuring to avoid users assuming that the application has frozen.

This article assumes that you already have NextJS setup. To get started, we need to install the `nprogress` library.


npm install nprogress

In \_app.js

Inside pages/_app.js, add the following piece of code.

import NProgress from "nprogress"
import Head from "next/head"
import Router from "next/router"

I recently moved into a new apartment and ran into so many issues getting the new EDMI prepaid meter box from Ikeja electric to work. There were no instructions on any of the items provided and I wondered how non-technical people were able to overcome the technical hurdle required in setting things up. After days of researching and Googling, I finally figured it all out.

The activation guide on the Ikeja electric website were also of no help and their customer service numbers kept telling me I had to wait 152 seconds to speak to a rep every single time…


Disclaimer — This post isn’t sponsored by Kuda bank or any of their affiliates.

I recently made the switch to Kudabank — the bank of the free (I really love that tagline) for my daily transactions and I dare say, they haven’t let me down. Yet.

After frustrating experiences with Diamond/Access bank where sometimes the app isn’t working or my card isn’t paying or transfers fail, I decided to try out the new kid on the block and so far it has been an experience wey dey sweet bodi — not when I’m doing transfers sha only when I get…

Adebola Adeniran

Full-stack Engineer. Rails/Node.js/React. I love plantain chips! Reach me at Adebola.dev.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store