Sign in

Canopas Software

In this article we will see basics of RxJava with some examples.This article will focus on abcs of RxJava, for those who are RxJava beginners.

Why should we use RxJava?

What is Rxjava?

Photo by Norbert Levajsics on Unsplash

There are four types of in-app purchases provided by apple, as described here. From which this article describes how to verify Auto‑Renewable Subscriptions at the server-side and implement S2S notification to stay informed of our app user’s subscription statuses using Ruby on Rails.

There are a few gems like candy_check and venice, but here we’re doing IAP manually (using apple’s IAP verification URL).

Here, I’m assuming that you’ve already set up your application on the App store. Generate app shared secret ad given in the link, which will be needed later. The whole process is divided into two parts.


Photo by Domenico Loia on Unsplash

When we’ve production-ready application builds, all we want is to implement IAP for it (not for all, but on 90% of those though).

This article will dive deep into how to verify play store IAP using it on the server-side. I had taken RoR as my backend you can implement it for other platforms by referring to it. Gems like candy_check provide inbuilt functionality for purchase token verification, but I’d like to verify it manually using Google APIs.

IAP verification contains mainly two parts :

1. Verify purchase token

There comes a time when you can’t simply write all your logs to log files or inside a docker container. Many platforms provide inbuilt CloudWatch agents inside them. But what if the logging library doesn’t provide it by default? Don’t need to worry about it, that said every problem comes with a solution 😃.

Drawbacks of writing logs to files and container:

  1. While writing our application logs to files, we’ve to maintain it consistently(no doubt one can rotate it if want, on certain time period)
  2. If one writes logs to the docker container instead of writing it to files, there…

The apps build with electron can support all three platforms like Windows, macOS, and Linux.

Very popular apps like Skype, Slack, Atom, and many more are built using electron.

As electron has this much popularity, there is an obvious requirement to provide social logins and authenticate your apps using user’s Facebook or Twitter accounts for simplicity and flexible user experience of the app.

Let’s see how to implement Facebook and Twitter logins in the electron app.

Electron login flow for Twitter and Facebook login is same.

We use IPC (Inter Process Communication), where the renderer process sends an event to…

In previous article we learned how to draw our first triangle. We learned minimal code to draw shape using vertex buffer and simple shaders. We started from GLSurfaceView and went through the very basic steps required to draw mess on screen. I recommend having a look at previous story.

Now, it’s time to learn shaders in depth. In this article we are going to look at VertexShader and FragmentShader in detail. OpenGL allows us to use many other optional shaders too.

Before we start we need to understand OpenGl graphics pipeline. It consists of following steps:

  1. We pass our vertex…

In this article we are going to use UICollectionViewCompositionalLayout. Compositional layout is announced in WWDC 2019, it supports iOS 13.0+, tvOS 13.0+ and Mac Catalyst 13.0+. Currently, it is the most powerful system layout. Using this layout we can build almost any complex design.

So let’s get it started

First thing you need to do is, just divide your layout in horizontal and vertical groups and embed your item in appropriate groups like below image, which contain two horizontal layout and one vertical layout.

To create above layout, first create horizontal group and set width equal to it’s parent(vGroup) width…

This blog is about creating a scrolling effect just like catapult, that means it will scroll upward as much as you pull it down.

Let’s take a look at demo below…

  • Let’s Get Started:
  1. In your xcode project create a scroll view outlet in your ViewController.swift file
@IBOutlet weak var scrollView: UIScrollView!

2. Confirm a ScrollView delegate to your ViewController class

class StretchableScrollViewController: UIViewController {@IBOutlet weak var scrollView: UIScrollView!

override func viewDidLoad() {
scrollView.delegate = self

3. Now we will write core logic behind the effect into scrollViewWillBeginDragging(scrollView:) method of UIScrollViewDelegate

extension StretchableScrollViewController: UIScrollViewDelegate {

RSS Feeds in Golang
RSS Feeds in Golang

In the era of digitalization, we have to keep our users up to date with frequently changing things in our applications.

One of the finest solutions is to use RSS(Really Simple Syndication) feeds.

What are RSS Feeds?

Users have to subscribe to RSS Feeds for regular updates.

RSS Feeds are available in XML-formatted plain text.

Here is a sample XML format of the RSS feed.

<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<title>RSS Feed's Title</title>
<description>Description of an RSS feed</description>

Photo by Cookie the Pom on Unsplash

Let’s learn how to generate distributable of an electron app for macOS.

Here, I’m assuming that you are done with the electron app set up in a local environment. We will use the electron-forge package to generate distributable.

Firstly, install the electron-forge package using the following command.

npx @electron-forge/cli import

The above command will install electron-forge for you. You can see in the package.json file there’s a new section added with electron-forge as shown below. you can see the scripts section auto modifies it’s key’s value to electron-forge.

Canopas Software

Bringing technology to life

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