Code Quality Rank: L4
Programming language: Swift
License: MIT License
Tags: UI    
Latest version: v1.1.0

NightView alternatives and similar libraries

Based on the "UI" category.
Alternatively, view NightView alternatives based on common mentions on social networks and blogs.

Do you think we are missing an alternative of NightView or a related project?

Add another 'UI' Library



Build Status Version License Platform

NightView is an open source library that generates beautiful, random, starry skies on iOS.

Table of Contents

## Project Details Learn more about the NightView project, licensing, support etc.


  • Requires iOS 7 or later. The sample project is optimized for iOS 9.
  • Requires Automatic Reference Counting (ARC).
  • Optimized for ARM64 Architecture.


See the License. You are free to make changes and use this in either personal or commercial projects. Attribution is not required, but highly appreciated. A little "Thanks!" (or something to that affect) is always welcome. If you use NightView in your app, please let us know!



Join us on gitter if you have any question!

Sample App

The iOS Sample App included with this project demonstrates one way to correctly setup and use NightView. It also offers the possibility to customize the view within the app.

Getting Started

It only takes a few simple steps to install and setup NightView to your project.


The easiest way to install NightView is to use CocoaPods. To do so, simply add the following line to your Podfile: pod 'NightView'

The other way to install NightView, is to drag and drop the NightView folder into your Xcode project. When you do so, make sure to check the "Copy items into destination group's folder" box.


NightView is a simple UIView subclass. It can be initialized with Interface Builder, or programatically.

Interface Builder Initialization
1 - Drag a UIView to your UIViewController.
2 - Change the class of the new UIView to NightView.
3 - Select the NightView and open the Attributes Inspector. Most of the customizable properties can easily be set from the Attributes Inspector. The Sample App demonstrates this capability.

Programmatical Initialization
Here is an example illustrating how to initialize a NightView instance programmatically:

 let nightView = NightView(frame: CGRectMake(0.0, 0.0, 200.0, 200.0))


All of the methods and properties available for NightView are documented below.


The number of points for each star. For example, setting this property to 1, means that there will be 1 star for every point in the view. A greater number means less stars within the view. Defaults to 10000.0.


The size of the stars in points. Note that setting starSizeMinRandomizer and starSizeMaxRandomizer will also influence the size of stars. Defaults to 5.0.


The color of the stars. Defaults to white.


The size of the stars is randomized within the starSize value. This property sets the minimum percent by which the stars' size could be changed. For example, a value of 50.0 means that the minimum size of a star will be 50% of the starSize property. Defaults to 50.0.


The size of the stars is randomized within the starSize value. This property sets the maximum percent by which the stars' size could be changed. For example, a value of 150.0 means that the maximum size of a star will be 150% of the starSize property. Defaults to 150.0.


The stars are drawn with a smaller opacity at the bottom of the view than at the top. This property sets the minimum opacity for the lower stars. Note that the stars at the top of the view will always have an opacity of 1.0. Defaults to 0.5.


The intensity of the glowing of the stars, from 0 to 1. If set to 0, the stars will not glow. Defaults to 0.5.


The duration in seconds at which the stars glow. Defaults to 2.0.


The type of stars to be drawn. Defaults to .Round.


Reloads the NightView instance, redrawing all of the stars.

*Note that all licence references and agreements mentioned in the NightView README section above are relevant to that project's source code only.