Need help with Lemniscate?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

419 Stars 41 Forks Apache License 2.0 85 Commits 0 Opened issues


An easy way to make your progress view nice and sleek.

Services available


Need anything else?

Contributors list

No Data

Lemniscate header

License API Android Arsenal Build Status codecov

Lemniscate is a library that will help you to make your progress view nice and sleek.

Lemniscate gif


Demo application is available on Google Play.

Get it on Google Play

The application is intentionally simple, without any libraries, to be understandable to more developers.


Add to your module's

allprojects {
    repositories {
        maven { url '' }

and to your app

dependencies {
    implementation 'com.github.VladimirWrites:Lemniscate:2.0.2'
Android Support Library (Depricated)
dependencies {
    implementation 'com.github.VladimirWrites:Lemniscate:1.4.5'


Example of usage:


Params available in all views:
  • duration (int) - duration of one animation cycle in millisecondes
  • lineColor (color) - color of the line
  • maxLineLength (float) - max length of line (in percentage; 1.0 is full length, 0.5 is half of length)
  • minLineLength (float) - min length of line (in percentage; 1.0 is full length, 0.5 is half of length)
  • sizeMultiplier (float) - default size of view will be multiplied with that number
  • strokeWidth (dimension) - width of line
  • precision (int) - number of points in curve calculated in one cycle


Additional params:
  • hasHole (boolean) - hole in a middle of Lemniscates


Additional params:
  • radiusFixed (float) - radius of fixed circle
  • radiusMoving (float) - radius of moving circle
  • distanceFromCenter (float) - distance from the center of the moving circle
  • numberOfCycles (float) - for one duration curve will be drawn on interval [0, 2 * mNumberOfCycles * π]


  • RoundScribbleProgressView
  • ScribbleProgressView



  • XProgressView


Want to contribute? You are welcome! Note that all pull request should go to




Copyright 2016 Vladimir Jovanovic

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.