top of page

All that yazz

Design

DESIGN

form

Form determines design and content. Form communication is the fundamental basis of the dialogue between the subject and the user. Before contemplating a concept, it is necessary to realize the whole foundation.

Aesthetics is the formation of style depending on the requirements. The ugly can be aesthetic, never judge by outfit, judge by message.

aesthetics

- typo

T

Don't blame Comis Sans
cause the font itself is not bad. The font has a purpose.

What is the design? This is a message. It can be purely visual, it can be textual, it can be functional,
but it exists.

content

+

= 20

art

&

20px

structure

Design is art, but design is rules. It is always important to find
a balance between freedom and limits.

COMPLEX

Branding

BRANDING

corporate-identity-mockup.jpg
Comp 1_1gif.gif

DESIGN
CASES

Every piece is an individual solution with analytical approach and clients' needs. This is NOT templating. This is a unique answer for everyone. 

UX/UI

UX|UI

ex_UI_4.png

Approach in details to solving tasks and building a convenient application architecture with an attractive design create an understanding of the concept of development and the total modeling of the application.

Vision_A.jpg
Vision_B.jpg

LOOKING FOR NEW WAYS OF USAGE

VRR.jpg
FLORISTOK - Iphone X mockup.jpg

FLORI

FLORISTOK - Iphone X mockup3covers+new.j

STOCK

ASCENT.jpg
Posters

POSTERS

{Generative}

GENERATIVE

Processing is a flexible software sketchbook and a language for learning how to code within the context of the visual arts. Since 2001, Processing has promoted software literacy within the visual arts and visual literacy within technology. There are tens of thousands of students, artists, designers, researchers, and hobbyists who use Processing for learning and prototyping.

Generative

Generative

Generative
Search video...
Josef Müller-Brockmann Generative #9

Josef Müller-Brockmann Generative #9

00:10
Play Video
Josef Müller-Brockmann Generative #7

Josef Müller-Brockmann Generative #7

00:12
Play Video
Josef Müller-Brockmann Generative #2

Josef Müller-Brockmann Generative #2

00:10
Play Video
Josef Müller-Brockmann Generative #5

Josef Müller-Brockmann Generative #5

00:10
Play Video
Josef Müller-Brockmann Generative #6

Josef Müller-Brockmann Generative #6

00:12
Play Video
Josef Müller-Brockmann Generative #8

Josef Müller-Brockmann Generative #8

00:06
Play Video

MRect r1, r2, r3, r4;

 

void setup()

{

  size(640, 360);

  fill(255, 204);

  noStroke();

  r1 = new MRect(1, 134.0, 0.532, 

    0.1*height, 10.0, 60.0);

  r2 = new MRect(2, 44.0, 0.166,

    0.3*height, 5.0, 50.0);

  r3 = new MRect(2, 58.0, 0.332,

    0.4*height, 10.0, 35.0);

  r4 = new MRect(1, 120.0, 0.0498,

    0.9*height, 15.0, 60.0);

}

 

void draw()

{

  background(0);

  r1.display();

  r2.display();

  r3.display();

  r4.display();

  r1.move(mouseX-(width/2),

    mouseY+(height*0.1), 30);

  r2.move((mouseX(width*0.05))%width,

    mouseY+(height*0.025), 20);   

  r3.move(mouseX/4, mouseY-

    (height*0.025), 40);

  r4.move(mouseX-(width/2),

    (height-mouseY), 50);

}

class MRect 
{
  int w; // single bar width
  float xpos; // rect xposition
  float h; // rect height
  float ypos ; // rect yposition
  float d; // single bar distance
  float t; // number of bars

MRect(int iw, float ixp, float ih, float iyp, float id, float it) {
    w = iw;
    xpos = ixp;
    h = ih;
    ypos = iyp;
    d = id;
    t = it;
  }

void move (float posX, float posY, float damping) {
    float dif = ypos - posY;
    if (abs(dif) > 1) {
      ypos -= dif/damping;
    }
    dif = xpos - posX;
    if (abs(dif) > 1) {
      xpos -= dif/damping;
    }
  }
 
  void display() {
    for (int i=0; i<t; i++) {
      rect(xpos+(i*(d+w)), ypos, w, height*h);
    }
  }
}

@Contact

@TEXTME!

Thanks!

bottom of page