Or Arbel, Author at Anima Blog Tue, 09 Jan 2024 08:01:57 +0000 en-US hourly 1 https://wordpress.org/?v=6.6.1 Enhancing ReactJS Code Generation with LLMs https://www.animaapp.com/blog/product-updates/enhancing-reactjs-code-generation-with-llms/ https://www.animaapp.com/blog/product-updates/enhancing-reactjs-code-generation-with-llms/#respond Mon, 08 Jan 2024 09:58:31 +0000 https://www.animaapp.com/blog/?p=9394 Reading Time: 3 minutes Explore the evolution of code generation at Anima, where six years of experience meets the latest in LLMs and generative AI. Dive into the complexities of front-end development, from HTML and CSS to responsive behavior, interactivity, and beyond.

The post Enhancing ReactJS Code Generation with LLMs appeared first on Anima Blog.

]]>
Reading Time: 3 minutes

At Anima, we generate code. It’s what we’ve been doing for the last 6 years. As time passes by, we make the code we generate better and better. But that is so much we plan to do to have the code we generate incorporate more of what we do as front-end developers.

Front-end code has many layers. The first layer is the static code described in HTML and CSS. On top of that, there is responsive behavior. Then there is interactivity, accessibility, and networking. Not to mention localization, SEO, event tracking, and external libraries like FullStory, Sentry, etc.

There are so many things front-end code is responsible for. It would be impossible to have our code generation platform accommodate all of these.

With the introduction of LLMs and generative AI, we can now easily add any type of layer to our pre-generated code.

The challenge with LLMs is that asking them for too many things at once degrades their results exponentially.

In addition, we need to start with something somewhat close to the expected result. For example, although there are some demos of GPT transforming a snapshot of a webpage to HTML and CSS, the actual result is far from the expected one. LLMs are super effective when we ask them to perform tasks with massive amounts of examples of that same task.

Asking an LLM to add a little bit of code to existing code is pretty much straightforward. However, asking it to take a snapshot of a webpage and transform it into a full-blown web app with localization, accessibility, and the whole shebang will likely result in frustration on our side.

How it works

We start with a Figma file and use Anima to export React code. The React code that Anima generates is optimized for high fidelity. That means that running it in the browser should result in a UI that looks identical to the original Figma file.

Now that we have React code, we use an LLM to enhance it by using simple prompts.

 

Localization

Consider localization as an example. Localization is done by having the copy of web components dynamically presented rather than hard-coded.

Without localization, a React component might look like this:

 

React login without localization

With localization:

React button with localization

en.json English
en.json
es.json Spanish
es.json

 

This addition of functionality was as simple as using the prompt “add localization to the button”. It’s a simple task for an LLM because there are a lot of examples, tutorials, and documentation out there that the model has been trained on.

Accessibility

The same button can be enhanced by an LLM for accessibility features:

For a prompt such as “add accessibility features” the result would be:

Accessibility - Aria

 

Tracking

Let’s say we want to track usage of our website or app.

In this example, using the prompt “add event tracking with Google Tag Manager” will result in the following enhancement:

add GTM tracking

Conclusion

In the examples above, once a Figma design is converted into React code that renders a visually identical web page, it’s easy to leverage the new and exciting technology of Large Language Models (LLMs).

By providing a few prompts, we can make our components rich and elaborate.

Join Anima's Discord

The post Enhancing ReactJS Code Generation with LLMs appeared first on Anima Blog.

]]>
https://www.animaapp.com/blog/product-updates/enhancing-reactjs-code-generation-with-llms/feed/ 0
Will frontend development be automated? https://www.animaapp.com/blog/industry/the-6-levels-of-front-end-development-automation/ https://www.animaapp.com/blog/industry/the-6-levels-of-front-end-development-automation/#respond Sun, 23 Oct 2022 08:05:50 +0000 https://www.animaapp.com/blog/?p=6230 Reading Time: 5 minutes A number of tools automatically generate some or all of the code for your UI, but not all automation is the same. Here are the 6 levels of frontend automation, and what each means for designers, developers, and organizations.

The post Will frontend development be automated? appeared first on Anima Blog.

]]>
Reading Time: 5 minutes

Updated October 23, 2022

As co-founder and CTO of a design-to-code (and code-to-design) platform, I’ve been knee-deep in frontend automation for years.  And I can say with certainty that if you’re a designer, developer, or decision-maker, frontend automation will affect your workflow, tech stack, and bottom line in the years to come. But what does code automation really mean? What does it look like in practice? And will frontend development be automated completely? 

The chart below—which details the auto industry’s 6 levels of driving automation—perfectly describes the range of current and upcoming frontend automation trends.  In this article, we’ll discuss each level of automation in detail, and help you understand what it means for you now and in the near future.

A chart with the SAE's 6 levels of automation for vehicles, from zero automation to full, human-level automation.

The 6 levels of automation: source

 

The 6 levels of frontend development automation

These 6 levels of automation describe the current development landscape, as well as how the technology will evolve over the next several years. Knowing what to expect will help you prepare for and take advantage of upcoming innovations.

Level 0: no automation

Assistance level: None 

Generated code output: none 

  • Engineers receive static mockups from designers without any additional data. No red lines, no generated CSS properties, just a flat image representing the end result.
  • Developers attempt to re-create everything they see in the mockup using code, but since static images can’t convey interactions, functionality, responsive behavior, fonts, and other essential data, developers need to guess.
  • Building frontend like this requires many iterations to match the product to the designer’s intent, and even then it’s not an exact science. 

Level 1: basic automation 

Assistance level: Minimal 

Generated code output: Styling 

  • The engineer gets a webpage including red lines and styling code snippets (such as CSS, SASS, or LESS).
  • There are plenty of tools out there that provide this level of automation, including Zeplin, Avocode, InVision Inspect, and Sketch Measure to name a few.
  • The generated CSS is readable both by humans and machines. It can be copy-pasted or used as a reference.

This level of automation saves typing errors and a bit of time, but not much as it only automates basic styling (which is part one out of four).

Level 2: partial automation 

Assistance level: Medium (produces) 

Generates code for: stylingresponsive layout (DOM)

  • The code can be any frontend language, including HTML, React, Swift, Java (for Android), React Native, and Flutter.
  • When it’s run on a device (such as a browser) the code will display a pixel-perfect interface that is identical to the original mockup.
  • The code doesn’t include interactions, animations, transitions, or rich media.

Level 3: conditional automation 

Assistance level: Moderate

Generates code for: styling + responsive layout (DOM) + interactions

  • Running the code gives you a live, responsive interface with micro-interactions, animations, states, and transitions.
  • Generates most of the frontend code, but not naming.
  • Anima does this today.

See how we built this React app using Anima’s automated frontend code, and check out the video tutorial to try it yourself!

Level 4: high automation 

Assistance level: High 

Generates code for: styling + responsive layout (DOM) + interactions + semantic naming

  • Automatically generates a complete frontend code package that’s clear and maintainable (workable) by a human engineer.
  • Components can be used as-is or as a reference for the engineer, with code that both humans and devices can read.
  • Semantic naming means that elements are named based on what they are, rather than based on accompanying data

Level 5: full automation 

Assistance level: Complete

Generates code for: styling + responsive layout (DOM) + interactions + semantic naming (indistinguishable from code generated by a human)

  • An automated system that can generate code for all design specs exactly as a human developer would.
  • The level of automated code should pass the “Turing Test,” which means that the reviewer can’t tell if it was automatically generated or produced by a human engineer.
  • Total frontend automation that allows devs to focus squarely on logic and backend architecture.

 

What we mean by “human-level code”

In the following wireframe, try to guess the name of the element the red arrow is pointing at. When you’re finished, scroll down.

A wireframe for a profile page demonstrating familiar design patterns.

Can you come up with a good name for this element?

A human engineer would likely come to the conclusion that the element is a profile picture, even though it doesn’t say “profile picture” anywhere. That’s because human developers have seen so many profile pages, they recognize the patterns. Machines can learn to do this kind of pattern matching as well, and they’re getting better each day

 

What does automation mean to us at Anima?

To understand (and benefit from) front-end development automation, you first need to understand the scope of automation. When we say “automation” at Anima, we’re describing the automatic generation of code that is readable and maintainable, and in many cases deployable by human engineers. This is what we mean by developer-friendly.

In Anima’s model, the focus is on automating the user interface.

What’s included in frontend automation?

1. Styling

This is part of the code in charge of the style of the elements. Color, size, position, typeface (for textual elements), and so on. In web development, this is usually written in CSS code.

2. Layout

This is the part of the code responsible for structure, hierarchy, and responsiveness. Usually described by a tree structure.
In web development described with DOM using markup such as HTML or React JSX.

3. Interactivity

Interactivity allows users to engage with an interface. They can click buttons, drag elements, pinch to resize, use the keyboard, and more. In web development, interactivity is usually dictated by Javascript code.

One of the requirements for readable and maintainable frontend code is good naming.

We deliberately focus on a very specific area of code. Leaving the business logic and network requests to the engineers. Focusing on a smaller problem means that we can improve the automation process.

 

Why does it matter?

One of Anima‘s core missions is to eliminate frontend grunt work for engineers by automating it. And by allowing teams to generate developer-friendly React, Vue, and HTML for an entire UI— directly from their design tools—Anima is doing just that.

In defining these levels of automation, we set expectations for ourselves and our usersrs. Frontend automation can mean different things to different engineers, and for most “generated code” means simple CSS generation. Here at Anima, however, code generation means much more.

By breaking down different levels of code automation (specifically code generation), we can clearly communicate every stage on our path to complete front-end automation. Join our journey to Level 5 and be a part of the revolution. 🚀

Build frontend 10x faster with Anima’s generated code.

The post Will frontend development be automated? appeared first on Anima Blog.

]]>
https://www.animaapp.com/blog/industry/the-6-levels-of-front-end-development-automation/feed/ 0
What is the single source of truth: Storybook or Figma? https://www.animaapp.com/blog/industry/what-is-the-single-source-of-truth-storybook-or-figma/ https://www.animaapp.com/blog/industry/what-is-the-single-source-of-truth-storybook-or-figma/#respond Mon, 03 Oct 2022 12:53:40 +0000 https://www.animaapp.com/blog/?p=7854 Reading Time: 3 minutes This is a controversial question, and the answer is changing the way teams build products. Here's why we think Storybook is the single source of truth.

The post What is the single source of truth: Storybook or Figma? appeared first on Anima Blog.

]]>
Reading Time: 3 minutes

We’ve seen it before. As a company grows and more people contribute to a product’s design and development, the need for a single source of truth grows as well.

Web-based product development starts small, with one person designing screens and another one coding them. Sometimes one person does both. It’s not until the product becomes more extensive and feature-rich that we start extracting the reusable parts into components. 

While we don’t feel the need to organize and categorize components when only one person uses them, it becomes more urgent as teams get bigger and products grow more complex.

At this point, a component library is needed—with parallel versions in Storybook and Figma—that’s easy to access with all components neatly organized. In other words, code components and design components need to match for teams to benefit from the efficiency, consistency, and scalability that component libraries provide.

But which is the single source of truth? Is it code or design? Storybook or Figma?

Spoiler alert: we think that code, and therefore Storybook, is the single source of truth. Here’s why.

How a product is born

It starts in Figma

It is most common for product development to begin with a design. A Figma file, for example. The process of extracting and placing reusable components in a library takes place in Figma. A component library can be created with any modern design tool—but to build the actual product, these components need to be written in code.

Figma components become code components

Once components are designed in Figma,  the same process repeats on the development side. Developers build each designed component, extracting reusable parts, and placing them neatly into a library. Today there are several solutions for creating UI component libraries, but Storybook is the most popular.

Figma component support

Figma recently added support for properties, which makes creating components in Figma more like creating them in code. It sounds great, except some designers argue that making designers think like developers limits their creativity.

The gap between Figma and production

Components created in Figma can be mapped almost identically to their counterparts in Storybook. We say almost because there’s still a significant gap, and bridging it is not easy. There is no simple automated bit-by-bit conversion between Figma components and Storybook components. As of today, developers are paid very well to perform this process manually.

Why it’s hard to scale products and teams

Siloed teams

Imagine a company with separate design and development teams. Each has its own isolated component library, and they are not connected to each other in any way.

Design system drift

As time passes, these two libraries—one in Figma and one in Storybook—drift apart. That’s because aligning them is an expensive, never-ending effort that uses a lot of human capital. To keep Figma and Storybook in sync, teams need to manually identify the differences between components, agree on which version is the source of truth, and override the other.

This is a frustrating process that a lot of us avoid. Often, component library efforts are neglected altogether in favor of shipping features faster.

The problem: two sources of truth

Having two competing sources of truth is a classic problem that costs teams and organizations a lot of time and money.

The solution: a single source of truth

It’s every R&D leader’s dream. A single source of truth that seamlessly syncs design and development. But in reality, manually maintaining a single source of truth is so time-consuming and labor-intensive that it only works in a few companies that have the resources—and willingness—to invest.

So what is the single source of truth?

Is the source of truth what designers intend, or is it the code that emerges from production? Is it Figma or Storybook?

At Anima, we believe the code (i.e. Storybook) is the single source of truth—and here’s why:

Even though products begin with the components in the design, the end-users of those products will actually experience the components from the code. The single source of truth, then, is what users will actually see in the end.

In reality, the future of product development will be led by code. That’s because although the genesis of a product might be in Figma, the product itself—the one users will perceive and interact with—is, was, and will be built with code. The sooner teams recognize this fundamental truth, the sooner they’ll reap the competitive benefits of synced component libraries and robust design systems.

 

Create a single source of truth between Storybook and Figma. Automatically. Signup here

 

The post What is the single source of truth: Storybook or Figma? appeared first on Anima Blog.

]]>
https://www.animaapp.com/blog/industry/what-is-the-single-source-of-truth-storybook-or-figma/feed/ 0
Anima syncs Storybook and Figma for a single source of truth https://www.animaapp.com/blog/product-updates/single-source-of-truth-between-storybook-and-figma/ https://www.animaapp.com/blog/product-updates/single-source-of-truth-between-storybook-and-figma/#respond Thu, 16 Jun 2022 10:22:09 +0000 https://www.animaapp.com/blog/?p=7559 Reading Time: 4 minutes Anima turns your Storybook into a Figma library in a single click, seamlessly syncing design and code across your entire organization. Join the beta test today for early access, and start maintaining your design system automatically.

The post Anima syncs Storybook and Figma for a single source of truth appeared first on Anima Blog.

]]>
Reading Time: 4 minutes

From Storybook to native Figma library in a single click!  👉Sign up here👈

If you have a large, dynamic product and a design system in Storybook, you know how hard it is to keep your Figma design library in sync with your codebase.

That’s because until now, designers and developers have had different sources of truth, one in Figma and one in code. But not anymore.

We’re excited to announce that Anima now turns your Storybook into a native Figma library—automatically—in a single click. 🚀

Turn your Storybook into a native Figma library with all variants and responsive properties, in a single click.

Just export from Storybook and watch Anima build your production components in Figma.

The problem: designers and developers have different sources of truth

Designers use Figma libraries to design products, and developers use code libraries to build them.

In an ideal world, these libraries are kept in sync. But if you’re a growing or established software company with a complex product and segmented teams, you know it’s a massive, neverending task.

So how do you keep your design library up-to-date with your code components? Or identify which components have been developed and which ones only exist in Figma? What about preventing new developers from using the wrong components—or rebuilding existing ones—because they don’t know the codebase yet?

The solution: a single source of truth between design and development

What is the single source of truth?

Is it your Figma library or your code library? This is a controversial question, and we don’t claim to have the answer. But in our humble opinion, code is the single source of truth.

Why? Because despite the fact that we create components in Figma before developing them, code determines what users will actually see.

With that in mind, we’ve enabled designers and developers to build products together with the exact same code components.

Introducing Anima’s Storybook integration for Figma

Anima’s Storybook integration for Figma 

Storybook to Figma 

Now you can turn your Storybook into a native Figma library in a click to create a single source of truth between design and development.

  • Generate a Figma library from your code components in Storybook—automatically—including all variants and naming conventions
  • Publish and share the library with your team, or with distributed teams across your organization (using Figma)
  • Build flows with the exact components your users are seeing—using Figma’s native capabilities

Who is this for?

For designers

  • Generate a Figma library based on your existing code components. You’ll get:
    • a real-time visual inventory of all of your production components—including variants—laid out on your Figma canvasGet an inventory of all of your production components from Storybook right in your Figma canvas.
    • all properties defined in the code automatically mapped into Figma variants, and all responsive CSS converted into Auto Layout definitionsAnima turns Storybook components into Figma components, converting props to variants and css to Figma Auto Layout definitions.
  • Design as usual, knowing developers will use the exact same components to build the product
  • Use Figma’s native control panel to switch between variants so there’s no need to change how you workUse Storybook components in Figma, and use Figma's native control panel to switch between variants defined in the code.
  • Know you’re designing what users will actually see, and get notified when a component’s code has changed so you can update it in Figma

Ready to design with the same production components your users will actually see? Sign up here to try for free.

For developers

  • Help designers reuse existing components instead of reinventing the wheel
  • Get designs containing the exact components you have in the code, including:
    • the same names and properties
    • a link to each component in StorybookDesign with production components in Figma, then give developers a link to the component in Storybook.
  • Know if the design you’re handed is reusing existing components, or contains new components you’ll need to build
  • Prevent new or junior developers that aren’t familiar with the codebase from using the wrong components or building new ones unnecessarily
  • Keep your codebase free of redundant components, or new components that might confuse users or clash with your existing design system

Ready to get designs containing your existing production components? Sign up here

We’re almost there!

Got new ideas or requests? Contact us!

We’re working hard to perfect our Anima + Storybook integration for Figma, and we’d love to hear your thoughts. Let us know what you like, what you don’t, and what features or changes would make this the perfect integration for you. Don’t hold back—we’re all ears!

Feel free to reach out to us using our Discord community to ask questions, provide feedback, report bugs, and request features 🙂

Get access and start automating your design system 🚀 

The post Anima syncs Storybook and Figma for a single source of truth appeared first on Anima Blog.

]]>
https://www.animaapp.com/blog/product-updates/single-source-of-truth-between-storybook-and-figma/feed/ 0
New feature announcement: Styleguide’s Find Usages https://www.animaapp.com/blog/product-updates/new-feature-announcement-styleguides-find-usages/ https://www.animaapp.com/blog/product-updates/new-feature-announcement-styleguides-find-usages/#respond Tue, 29 Jun 2021 11:26:37 +0000 https://www.animaapp.com/blog/?p=6076 Reading Time: 2 minutes Navigating Styleguides just got a lot easier: discover where the Styleguide code is used with one click

The post New feature announcement: Styleguide’s Find Usages appeared first on Anima Blog.

]]>
Reading Time: 2 minutes

Earlier this year, we shared Anima’s Styleguide feature where you can get automatically generated Styleguide written in CSS. Now, you can not only easily recognize the building blocks of designs, but also understand where in a design the Styleguide code is actually used. Navigating Styleguides just got a lot better.

What is a Styleguide?

Great designs are consistent works of art. Preventing inconsistencies is done by using a Design System, deciding on the color pallets, fonts, border styles, text styles, and so on. This Design System is used to make sure that every component looks and feels consistent.

A Styleguide describes these decisions, listing colors, spacing, text styles, border styles (and often more), and is usually coded manually by developers. Anima’s Smart Styleguide creates this automatically for you, detecting repeating patterns and generating CSS classes for them. This is great, but it just got better.

It just got better

As a developer inspecting the Styleguide, understanding where the CSS classes I’m looking at are actually used in the design, can be difficult. In other words, which components are using these CSS classes for styling. This is why we developed the “Find Usages” feature, which enables me to easily view which components use a specific CSS class.

Not only that but it enables you to click and jump to the screen where the component exists and the component is highlighted.

How to use the Styleguide Find Usages feature?

Step 1: select a design, go to code mode, select Styleguide, and then hover over a CSS class in the Styleguide.

Step 2: select the magnifying glass icon

Step 3: a list of locations where that Styleguide is used will appear, select one of the locations and you will be taken to the component that this Styleguide code represents. You will see the components highlighted in yellow.

Want to learn more about Smart Styleguide? Read more about it here. In the meantime watch this space, there are more features Smart Styleguide features on the way. We love getting your feedback and hearing what you think, so feel free to reach out to us.

Be part of the design-to-code revolution

Get started now:

Stay creative!

❤ Anima team

The post New feature announcement: Styleguide’s Find Usages appeared first on Anima Blog.

]]>
https://www.animaapp.com/blog/product-updates/new-feature-announcement-styleguides-find-usages/feed/ 0
Announcing Automatic Component Detection https://www.animaapp.com/blog/product-updates/announcing-automatic-component-detection-in-anima/ https://www.animaapp.com/blog/product-updates/announcing-automatic-component-detection-in-anima/#respond Tue, 01 Jun 2021 17:16:33 +0000 https://www.animaapp.com/blog/?p=5950 Reading Time: 3 minutes Following the DRY Principle in automatic code generation

The post Announcing Automatic Component Detection appeared first on Anima Blog.

]]>
Reading Time: 3 minutes

“Don’t repeat yourself (DRY, or sometimes do not repeat yourself) is a principle of
software development aimed at reducing repetition of software patterns, replacing it with abstractions or using data normalization to avoid redundancy”- (Wikipedia)

Overview

Components were born to save writing code, and instead of repeating code over and over, you write it once as a component.
As a front-end developer, at that moment when you first glance at a design mockup, your mind is busy detecting repeating UI patterns. You know what I’m talking about ;). When the time comes to actually code the design into a real product, this is when these repeating patterns translate into what are known as components.

Anima’s Automatic Component Detection

Recognizing repeating UI patterns is something that a developer does easily. However, for a computer, this is a different story.
Here at Anima, it was clear to us that this was a challenge worth investing our time into. So our team worked around the clock developing algorithms that can automatically detect repeating UI patterns and translate them into reusable components. Today, I am excited to announce Anima’s Automatic Component Detection.

Anima’s Automatic Component Detection

Can you spot all the repeating patterns?

Why is it useful?

The bottom line is this, anything that can be automated and be usable will save you a lot of time, improve productivity, and maximize your workflow. By having components automatically detected for you, all you need to do is apply the necessary changes, who could ask for anything more?

How to use Components in Anima

  1. First, sync your design to Anima
  2. Open Anima and switch to Code mode
  3. On the left, you’ll see the Components Panel
  • The Components Panel will present all the automatically detected components.
  • You can decide to remove a component from the list by converting the component to an element. This will also mean that in the code it will no longer be a component. Instead, it will be a simple HTML element.
  • Components can have nested components. They are marked with a layered icon. Selecting such a component will present all its nested components.
The Component Panel in Anima | Automatic component detection

The Component Panel is located on the left

Anima detects the component instances

Anima will automatically detect the component instances

Get started with Anima:

Join the Anima family and start saving time today.

Stay creative!
❤ Anima team

The post Announcing Automatic Component Detection appeared first on Anima Blog.

]]>
https://www.animaapp.com/blog/product-updates/announcing-automatic-component-detection-in-anima/feed/ 0
Announcing Smart Styleguide https://www.animaapp.com/blog/product-updates/announcing-smart-styleguide/ https://www.animaapp.com/blog/product-updates/announcing-smart-styleguide/#respond Tue, 04 May 2021 05:57:35 +0000 https://www.animaapp.com/blog/?p=5773 Reading Time: 3 minutes Helping developers easily recognize the building blocks of designs, automatically generating them to CSS

The post Announcing Smart Styleguide appeared first on Anima Blog.

]]>
Reading Time: 3 minutes

We’re excited to share that a great new feature is now live! An automatically generated Styleguide written in CSS. The Smart Styleguide will help developers easily recognize the building blocks that make your designs tick.

Background

Great designs are built in a consistent way. The best teams use a Design System to prevent inconsistencies. The team decides on the color pallets, the various fonts, text styles, border styles, etc. These are then used across the various components within the Design System, making every component look and feel consistent.

Styleguide are used to describe these decisions. They are a list of colors, text styles, border styles, spacing, (and sometimes more).
This Styleguide are compiled and coded by a developer. With Anima’s Smart Styleguide your Style Guide is created automatically.

How it works

When you sync your design to Anima, the system scans it and detects all the colors and text styles that appear multiple times.

🎨 Colors

Each color will be assigned a name automatically, but you can easily change that assigned name. Once you change a color name, the new name will propagate throughout the code that Anima generates.


 

Colors

🔤 Fonts

Fonts will be detected and added to the Styleguide. A CSS import declaration will be added to a globals.css file, so you can run the code instantly without scrambling to find the font file in Google.


 

Font names

👕 Font sizes

Developers like to name font sizes like t-shirt sizes, for example, xs,s,m,l,xl.

Anima detects all the font sizes within your design and creates font scaling using this t-shirt size concept, just like a human developer would do.

Font sizes Anima Smart Styleguide

Font sizes

Text Styles

Repeating text styles are compiled into CSS classes that use the tokens from above. Each class is given a name and the names are editable.
Changing the name would propagate the change throughout the code that Anima generates.

Text styles: Anima Smart Styleguide

Text styles

Smart Styleguide

And here is how a complete Smart Styleguide looks like. The Styleguide is a fully functional CSS style sheet and can be placed in any project.

Color, fonts, font sizes, and text styles: Anima Smart Styleguide

Color, fonts, font sizes, and text styles

There are many more features coming for Smart Styleguide. We welcome you to try it out and please let us know what you think!

Ready to be a part of the Anima community?

Get started now:

Stay creative!
❤ Anima team

The post Announcing Smart Styleguide appeared first on Anima Blog.

]]>
https://www.animaapp.com/blog/product-updates/announcing-smart-styleguide/feed/ 0
5 reasons why you should use Anima with Figma https://www.animaapp.com/blog/product-updates/5-reasons-why-you-should-use-anima-with-figma/ https://www.animaapp.com/blog/product-updates/5-reasons-why-you-should-use-anima-with-figma/#respond Sun, 03 Jan 2021 07:43:41 +0000 https://www.animaapp.com/blog/?p=5281 Reading Time: 4 minutes Breaking down how Anima gives the extra oomph to blow your colleagues' minds

The post 5 reasons why you should use Anima with Figma appeared first on Anima Blog.

]]>
Reading Time: 4 minutes

Figma is one of the best design tools today. If you are a designer reading this, chances are you’re using Figma.

It’s also likely you’ve heard of Anima since you’ve stumbled into this article. Common question designers ask is — “If I’m already using Figma, why would I even need to use Anima?”

This article clarifies which use-cases Anima supports and how you can make your prototypes so good, that your boss and developers will be super impressed. 🤯

1. Responsive Prototypes 🖥📱

Create responsive prototypes in Figma with Anima Figma design with a frame for Desktop, and a frame for Mobile.

As a designer, one of the things you do is to send prototypes to stakeholders. To your manager, your company CEO, a beta testing user, different people.

Each one has their own device. One opens your prototype from her Desktop, one from his iPhone X. Another from an Android tablet.

What if you could send a single prototype link, that would magically show the correct version of your design, adapted to the visitor screen size.

For that, you would need Anima.

With Anima, you can connect multiple frames as “Breakpoints”. That means that when using an Anima prototype, the correct “Breakpoint” will display, according to the visitor screen size.
Learn more about Breakpoints.

2. Live forms in Prototypes ✍

Figma design with a live form, by using Anima

Figma design with a live form, by using Anima

Have you ever done a user testing session where you had to say: “Imagine that when you click here you can type your email”.
Or on Mobile, “Imagine that when you tap here, the keyboard pops up”.

Well, if you’d use Anima you no longer have to say that.

With Anima’s live forms feature, you can define any text layer as a live input, and your testers will be able to type things with their keyboard.

You can even use form validation out of the box.

 

Learn more about Forms.

3. Hover Effects in Prototypes 👆

Figma design with Hover effect by using Anima

Figma design with Hover effect by using Anima

Let’s face it, you want to impress your stakeholders. You want to add some dazzle to your design. Something a plain Figma prototype just can’t do.
A small hover effect can go a long way. It makes your design come alive. It’s no longer a static image.

With Anima, you can add Hover effects to your prototypes.

Hover effects in an Anima prototype made with Figma and Anima

Hover effects in an Anima prototype made with Figma and Anima

Learn more about Hover effects.

4. Live Videos in Prototypes 📺

Figma file with live video, by using Anima

Figma file with live video, by using Anima

A live video playing in Anima prototype made with Figma and Anima

A live video playing in Anima prototype made with Figma and Anima

Adding a video to your prototypes is one of the most popular features Anima has.

You can add a video for product demonstrations, moving backgrounds, and all sorts of use-cases.

You can use YouTube, Vimeo, MP4, GIFs, and even Lottie.

Learn more about Videos.

5. Share HTML/CSS/React for your Prototype ⚛

Prototypes are usually just one step in the process of product development.

At some point when the design and UX are agreed upon, developers need to code the design into a real product.

The good news is that with Anima developers don’t have to start from scratch.

Anima provides a convenient way for developers to get the code for your design.

Get code from your designs with AnimaWith Anima, you can share code with developers to speed up your team workflow.

So there you have it. Anima provides you the additional oomph you need to blow your colleagues’ minds.

Try it, you won’t regret it!

As always, we’re excited to hear your feedback!

Join the discussion or show off your designs on FacebookTwitterSlackInstagram. Vote for new features at UserVoice.

Stay creative!
❤ Anima team

The post 5 reasons why you should use Anima with Figma appeared first on Anima Blog.

]]>
https://www.animaapp.com/blog/product-updates/5-reasons-why-you-should-use-anima-with-figma/feed/ 0
Solving the ‘production-ready’ code dilemma https://www.animaapp.com/blog/industry/solving-the-production-ready-code-dilemma/ https://www.animaapp.com/blog/industry/solving-the-production-ready-code-dilemma/#respond Tue, 03 Nov 2020 11:28:47 +0000 https://www.animaapp.com/blog/?p=4946 Reading Time: 4 minutes Why production-ready code is outdated and how developer-friendly code is the future

The post Solving the ‘production-ready’ code dilemma appeared first on Anima Blog.

]]>
Reading Time: 4 minutes

Design-to-development is where developers’ souls get crushed in unrewarding grunt work, and designers’ souls get crushed as their design succumbs to time-induced compromises.

As a CTO and a developer, experiencing these setbacks has always been a source of frustration for me. If there’s one thing I’ve experienced first hand, it’s that this friction results in a slower release to market, disappointed designers, and unhappy developers.

At Anima, we’ve focused on solving this challenge since 2017. To date, our product has enabled designers to build responsive high-fidelity prototypes, allowing them to go from design to realistic prototypes faster with full web functionality and interactive animations.

But our end-game has always been to create a fully integrated solution that solved both design and developer needs.

. . .

The challenges of translating design to code

Until now, developers had two options: they’ve either coded from scratch (because leading design tools offer only CSS and design specs) or endured the frustration of tools that generate production-ready code and ultimately opted to code from scratch anyway.

Neither is ideal, and both contribute to developers inevitably becoming the company’s bottleneck to production.

We know from interviewing hundreds of developers that they must grapple with:

  • The pressure to deliver on time
  • Compromising on design improvement in order to complete more time-critical tasks
  • Spending too much time refactoring bloated, non-compliant production-ready code.

. . .

Introducing Developer-Friendly Code

Our users’ feedback has made one thing clear: current options for developers are riddled with grunt work, pixel-pushing, and repetitive tasks.

Our objective was to upgrade generated code to something useful that developers actually want to use. A solution that gives them full control over their code and saves time.

Here’s how Anima 4.0 ticks those boxes:

Integrates into your existing tech stack

No switching costs. Anima 4.0 doesn’t require you to change your design software or force an IDE change.

  • Import designs from Figma, Adobe XD, and Sketch.
  • Get developer-friendly code components tailored to your development environment.
  • Easily export HTML, CSS, and JavaScript/React (with VueJS and Angular coming soon).
GIF showing how Anima integrates into your existing tech stack

No-bloat, reusable code components

Anima 4.0 utilizes semantic vs. syntactic logic to generate high-quality code components that are compliant, clean, and responsive. Generated code adopts the DRY principle (Don’t Repeat Yourself), so Anima automatically recognizes components that repeat, resulting in a concise code that minimizes code duplication and increases overall code readability and maintainability.

Minimal code refactoring

Because Anima cleans the code, serves it as components, and applies the relevant conventions based on the requirements you input, refactoring and debugging are drastically reduced. This means you spend less time fixing code and more time getting code that looks exactly how it would look if you coded it yourself.

Code overrides

Code overrides give Anima’s developers full control by allowing them to fine-tune individual components in-app and granularly specify settings so that your work perfectly adheres to your codebase guidelines. Code overrides are rendered in real-time, allowing you to instantly see how your tweaks affect the overall design.GIF showing how you can use code overrides with Anima

Compare mode

For the first time, a web app gives you an instant visual comparison of rendered code vs. original design.
Anima 4.0 overlays the rendered code over the original layouts, ensuring you can stay true to the designer’s creative vision while minimizing the back-and-forth.

Zero dependencies

Dependencies are hard to follow and can get convoluted fairly quickly. To simplify and make our generated code easy to follow, Anima 4.0 does not have any external dependencies. There is no Anima SDK embedded in the code. On the flip side, being completely customizable means that if you want to opt for a specific library, Anima makes embedding it possible.

Either way, there’s minimal legwork to get there, and you control the final outcome.

Easy code extraction

Up till now, production-ready code tools have delivered finished code to you in a zip file crammed full with multiple source files and thousands of lines of code. This is great in absolutely no situation– developers need absolute transparency into the code produced without resorting to ‘needle-in-the-haystack’ searches to find that one component they need to work on.

Anima 4.0 gives you full visibility and control into your code: developers can inspect every line of code on a component/element basis, without being overwhelmed by thousands of lines of code.

For the first time, developers can cherry-pick elements and get runnable React code in seconds.

. . .

We’re excited that front-end developers now have the tool to take their game to their next level. By no longer being limited to “production-ready” code or having to code UI from scratch, they can power through labor-intensive tasks and turn their attention to more creative work.

Take Anima 4.0 for a spin and let us know what you think–we’re excited to hear your feedback!

The post Solving the ‘production-ready’ code dilemma appeared first on Anima Blog.

]]>
https://www.animaapp.com/blog/industry/solving-the-production-ready-code-dilemma/feed/ 0
Announcing Anima for Adobe XD https://www.animaapp.com/blog/product-updates/announcing-anima-for-adobe-xd/ https://www.animaapp.com/blog/product-updates/announcing-anima-for-adobe-xd/#respond Mon, 20 Apr 2020 00:00:00 +0000 https://www.animaapp.com/blog/design/announcing-anima-for-adobe-xd-6db773468f4f/ Reading Time: < 1 minute Export Adobe XD to HTML in a single click

The post Announcing Anima for Adobe XD appeared first on Anima Blog.

]]>
Reading Time: < 1 minute

Hi XD Designers 👋

We are Anima.

Anima’s mission is to convert design to code, automatically.

We believe that great UX makes everything better.
We want to bring a better experience to those creating it.

Why?

Taking design to production is hard.

Automated design-to-code will change the way we build software.

The Future of Product Design

With Anima, designers have the power to create real, working UI.

Need to share a live website with a client, your manager, or an investor?
Want to release a POC of a new design to promote your agenda?
Anima will translate your design to code in a single click.

Meet Anima for Adobe XD

Anima for Adobe XD

XD users have been asking for Anima integration for over a year now, and we’ve been listening.

Today, we’re introducing Anima for Adobe XD.

What’s in the first version?

  • Export XD designs to working HTML and CSS Code.
  • Create prototypes that feel real.
  • Collaborate with your team.

How do I use Anima + Adobe XD

What’s next?

  • Animations & Interactions
  • More responsive tools
  • Performance improvement

As always, we’re excited to hear your feedback!

Join the discussion or show off your designs on FacebookTwitterSlackInstagramand vote for new features at UserVoice.

Stay creative!
❤ Anima team

The post Announcing Anima for Adobe XD appeared first on Anima Blog.

]]>
https://www.animaapp.com/blog/product-updates/announcing-anima-for-adobe-xd/feed/ 0