Bright Inventions

Bright Inventions is a team of excellent developers dedicated to delivering first-rate mobile platforms. Since our founding in 2011 we've worked with clients from a range of industries with diverse requirements always delivering high quality mobile solutions that they can depend on.

Email Twitter Facebook Instagram Github


3D Touch - Peak&Pop feature.

iOS, swift, 3d touch

In my previous post I wrote about adopting UIApplicationShortcutItems in your app. Now it’s time to implement Peak&Pop - a feature provided by 3d Touch.

PureLayout vs SnapKit - Great confrontation


At first, let me clear something out. I’m heavy PureLayout user. I’ve been creating my UIs in code for some time now and it’s not looking like I’m going back...

ReactiveSwift - Manage your memory!


Memory management is a pretty important issue when talking about any kind of system. You can’t pretend that your resources are unlimited, and give them out n...

ReactiveCocoa UI bindings with Rex


Today, we will take a closer look at Rex - ReactiveCocoa extensions. I find Rex pretty helpful when working with ReactiveCocoa, especially creating UI bindin...

ReactiveCocoa 4 - CocoaActions


CocoaAction is a wrapper around Action type that is available in ReactiveCocoa. (Here you can read more about Action). We use CocoaAction to bind our Action...

ReactiveCocoa 4 - Events


Understanding signal events in ReactiveCocoa is a must. We can’t effectively use signals and signal producers if we don’t know what will happen after certain...

Open source by default


Using open source code in projects is a common thing. I do it. Most of us do. But what is “open source” by default? Well, I’ve heard about this for the first...

Creating an UIImage using ImageIdentifiers

iOS, swift

Hi! In my first post I want to share with you some cool tip which I watched in ‘Swift in Practice - Apple WWDC 2015’ Alex Migicovsky presentation about using...

A fast way to connect to the web proxy


Configuring Android device to connect to the web proxy running on development build machine is tedious. You have to make the same steps over and over again o...

Fetching contacts with CNContactStore


Since iOS 9.0 we have a new nice method of fetching and saving contacts - CNContactStore! Today I will show you how to create a simple UITextField that will ...

Heartbeat button


Hi! Today I will show you how to create a simple heart button that will simulate a heartbeat upon each tap. You can find an example project on my Github.

ReactiveCocoa 4 - MutableProperty


MutableProperty which comes with ReactiveCocoa allows us to track variable’s changes. Let’s take a quick look on how it actually works.

My thoughts on - StatefulViewController


I had a chance to play a little bit with a nice pod that is called StatefulViewController, created by Alexander Schuch. StatefulViewController works with bot...

Custom XCode key bindings


When I started writing Swift code, I found out that my beloved IDE(AppCode) for Objective-C, was not doing as well as I thought it would. Moreover, I’ve noti...

My thoughts on - Whisper


Lately I’ve come across a nice pod which makes in-app messaging easier and decided to give it a quick look. I’ve created a test project in order to see how t...

Swift files generator


For some time, I have been creating iOS apps without using storyboards at all. Because of this fact ,creating screens in the application is connected to some...


Logging with Retrofit 2


Retrofit has been updated to 2.0 version. It’s a major change in the one of the most popular library for Android platform.</br> A lot of things have be...

3 tips for iOS Calabash beginners


Have you ever felt that your app needs UI tests? Are you tired of checking behaviours of your application again and again? Consider using Calabash!



Lately I’ve spent some time wrtiting an app for myself. It is supposed to let you create tasks, mark them as done/undone and then track your progress. I’ve c...

[CocoaHeads Tricity] Automate your iOS deployment a bit

iOS, CocoaHeads, GYP, generate-ios, automation, TeamCity

Here come the slides from a talk I gave at the last Cocoaheads Tricity meeting. It’s titled “Automate your iOS deployment a bit” and shows how we approach bu...

iOS layouts for web developers


Recently I had an opportunity to dive into an iOS development and while I enjoy it, I miss a lot of things from the web development world. I was looking for ...

Anchor child element click

html, javascript

I had to solve a seemingly trivial bug in an angularjs based application that turned out to be more interesting than usual.


Reactive Cocoa presented on CocoaHeads Tricity

iOS, ReactiveCocoa, CocoaHeads

On Thursday 18th December 2014 I gave a small presentation about ReactiveCocoa to the local Cocoaheads Tricity group. Cocoaheads is a group of passionate iOS...

Integrate slf4j with Crashlytics


As I mentioned in my previous post having meaningful log entries comes handy during development. When an app reaches beta testers as well as goes live it’s e...

Playing with Material Design, Toolbar and Palette

android, materialdesign, android-support-library

People around the world are waiting for Google to push Lollipop to theirs smartphones. Material Design completely changed the appearance of Android, and did ...

InjectionForXcode meets command line

ios, appcode, xcode, injectionforxcode, gem

Meet Injection Helper, a small utility for making InjectionForXcode more friendly to use. Get rid of superfluous messages and a flood of XCode windows opened...

Attaching ShareJS to select HTML element

sharejs, javascript

One thing that I found missing in ShareJS library was the possibility to attach live concurrent editing to HTML <select> element. Out of the box it wor...

ShareJS 0.7.3 working example

sharejs, nodejs, javascript

I’m experimenting with ShareJS library, which is intended to allow live concurrent editing like in Google Docs. The demo on their website seems incredibly ea...