# Auto Layout

Published articles for Auto Layout.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## WWDC 2026 Viewing Guide

DevFeed: [WWDC 2026 Viewing Guide](<https://devfeed.tech/articles/wwdc-2026-viewing-guide-21089.md>)

Original publisher: [Read original article](<https://useyourloaf.com/blog/wwdc-2026-viewing-guide/>)

Author: Keith Harrison

Published: 2026-06-15T09:16:45Z

Content type: tutorial

Language: en

Sources: [K. Harrison](<https://devfeed.tech/sources/k-harrison.md>)

Topics: [Swift](<https://devfeed.tech/topics/swift.md>), [SwiftUI](<https://devfeed.tech/topics/swiftui.md>), [Xcode](<https://devfeed.tech/topics/xcode.md>), [WebAssembly](<https://devfeed.tech/topics/web-assembly.md>), [gRPC](<https://devfeed.tech/topics/grpc.md>), [MLX](<https://devfeed.tech/topics/mlx.md>), [NumPy](<https://devfeed.tech/topics/numpy.md>), [Testing](<https://devfeed.tech/topics/testing.md>)

Tags: [2026](<https://devfeed.tech/tags/2026.md>), [apple](<https://devfeed.tech/tags/apple.md>), [auto-layout](<https://devfeed.tech/tags/auto-layout.md>), [comparison](<https://devfeed.tech/tags/comparison.md>), [ios](<https://devfeed.tech/tags/ios.md>), [ios27](<https://devfeed.tech/tags/ios27.md>), [macos27](<https://devfeed.tech/tags/macos27.md>), [objective-c](<https://devfeed.tech/tags/objective-c.md>), [swift](<https://devfeed.tech/tags/swift.md>), [swiftui](<https://devfeed.tech/tags/swiftui.md>), [webassembly](<https://devfeed.tech/tags/webassembly.md>), [wwdc](<https://devfeed.tech/tags/wwdc.md>), [xcode](<https://devfeed.tech/tags/xcode.md>)

### AI overview

A guide to planning and watching WWDC 2026 sessions, highlighting platform themes and selected updates in Swift, SwiftUI, Xcode, WebAssembly, gRPC, and MLX.

### Source excerpt

My WWDC 2026 viewing guide to help you plan the sessions you want to watch. Where Do I Start? The two big themes for the year are again Liquid Glass and Apple Intelligence. Start by watching the Platforms State of the Union (SOTU) for a summary of what's new this year. If you only have five minutes try the SOTU recap. You don't have to learn everything new today! There are over 100 sessions and a lot of new stuff to learn. You may feel like you're getting left behind. Don't let it overwhelm you. You've got time. Don't burn yourself out trying to keep up. Watching The Sessions I watch the videos using the Apple Developer app. It's available on macOS and iOS. The video player supports from 0.5x to 2x playback, most videos have transcripts and summaries, and allow copying of the onscreen sample code. You can also watch on YouTube. There are a lot of sessions, but many are short (15-20 minutes). There's no padding and Apple's engineers get to the point quickly. Swift Swift 6.4 is here with some quality of life improvements: What's new in Swift Condense long @available attributes with anyAppleOS, @diagnose to control compiler deprecation warnings. Double-colon module selector. Standard Library task cancellation shield, dictionary mapKeyedValues, new FilePath type. XCTest interop with Swift Testing. Subprocess 1.0. New ProgressManager. @C attribute for Swift-C interop. Compile to WebAssembly. New @inline(always) and @specialized attributes. Iterable protocol for noncopyable elements. Build real-time apps and services with gRPC and Swift gRPC Swift package to generate and deploy network code for remote procedure call services. Explore numerical computing in Swift with MLX NumPy-like API. Examples of computing the Mandlebrot set, heat distribution, and curve fitting. SwiftUI Liquid Glass changes and some welcome improvements: What's new in SwiftUI Liquid Glass is now mandatory. Minimal menu icons by default. Resize live previews in Xcode. Prominent tab role. Toolbar visibil

## Everything we shipped at Sketch in 2025

DevFeed: [Everything we shipped at Sketch in 2025](<https://devfeed.tech/articles/everything-we-shipped-at-sketch-in-2025-9117.md>)

Original publisher: [Read original article](<https://www.sketch.com/blog/sketch-in-2025/>)

Author: Freddie Harrison

Published: 2025-12-16T08:00:00Z

Content type: article

Language: en

Sources: [Sketch Blog](<https://devfeed.tech/sources/sketch-blog.md>)

Topics: [Sketch](<https://devfeed.tech/topics/sketch.md>), [releases](<https://devfeed.tech/topics/releases.md>), [liquid glass](<https://devfeed.tech/topics/liquid-glass.md>), [User interface design](<https://devfeed.tech/topics/ui-design.md>), [macOS](<https://devfeed.tech/topics/macos.md>), [iOS](<https://devfeed.tech/topics/ios.md>)

Tags: [2026](<https://devfeed.tech/tags/2026.md>), [apple](<https://devfeed.tech/tags/apple.md>), [apps](<https://devfeed.tech/tags/apps.md>), [auto-layout](<https://devfeed.tech/tags/auto-layout.md>), [icons](<https://devfeed.tech/tags/icons.md>), [ios-26](<https://devfeed.tech/tags/ios-26.md>), [keyboard](<https://devfeed.tech/tags/keyboard.md>), [latest-features](<https://devfeed.tech/tags/latest-features.md>), [layout](<https://devfeed.tech/tags/layout.md>), [liquid-glass](<https://devfeed.tech/tags/liquid-glass.md>), [macos](<https://devfeed.tech/tags/macos.md>), [releases](<https://devfeed.tech/tags/releases.md>)

### AI overview

Sketch reviews its 2025 product work, including the Athens, Barcelona, and Copenhagen releases. The updates introduced Stacks and Frames, expanded the Command Bar, added a glass effect for iOS and macOS 26 design, and included an MCP server and broader redesign work.

### Source excerpt

From Stacks and Frames, to Glass effects and a complete macOS Tahoe redesign -- here's everything we shipped at Sketch in 2025.

## Format Swift with a Git Commit Hook

DevFeed: [Format Swift with a Git Commit Hook](<https://devfeed.tech/articles/format-swift-with-a-git-commit-hook-21085.md>)

Original publisher: [Read original article](<https://useyourloaf.com/blog/format-swift-with-a-git-commit-hook/>)

Author: Keith Harrison

Published: 2025-11-24T10:29:58Z

Content type: tutorial

Language: en

Sources: [K. Harrison](<https://devfeed.tech/sources/k-harrison.md>)

Topics: [Swift](<https://devfeed.tech/topics/swift.md>), [Git](<https://devfeed.tech/topics/git.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [Development](<https://devfeed.tech/topics/development.md>), [Code](<https://devfeed.tech/topics/code.md>)

Tags: [auto-layout](<https://devfeed.tech/tags/auto-layout.md>), [bash](<https://devfeed.tech/tags/bash.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [developer](<https://devfeed.tech/tags/developer.md>), [development](<https://devfeed.tech/tags/development.md>), [git](<https://devfeed.tech/tags/git.md>), [git-commit](<https://devfeed.tech/tags/git-commit.md>), [ios](<https://devfeed.tech/tags/ios.md>), [objective-c](<https://devfeed.tech/tags/objective-c.md>), [swift](<https://devfeed.tech/tags/swift.md>), [wwdc](<https://devfeed.tech/tags/wwdc.md>), [xcode](<https://devfeed.tech/tags/xcode.md>), [xcode-16](<https://devfeed.tech/tags/xcode-16.md>)

### AI overview

This tutorial explains how to format Swift code automatically with swift-format and a Git pre-commit hook. It covers Xcode 16's bundled formatter, .swift-format configuration files, a Bash hook that formats staged Swift files, hook installation, and bypassing the hook when needed.

### Source excerpt

How do you automatically format your Swift code every time you commit it to your Git repository? Swift Format There are several Swift formatting tools. Xcode 16 shipped with swift-format included in the toolchain: $ xcrun --find swift-format /Applications/Xcode.app/Contents/Developer/Toolchains/ XcodeDefault.xctoolchain/usr/bin/swift-format To run the formatter: $ swift format MyFile.swift Note: This runs the swift-format bundled with the active Xcode development directory (beta or release). Configuring swift-format The Xcode settings let you configure various formatting options including indentation but I prefer to use an external configuration file for swift-format. By default, swift-format looks for a configuration file named .swift-format in the same directory as the files you are formatting. If there isn't one it looks in each successive parent directory. If it doesn't find a configuration file it uses a default configuration. You can dump the default configuration to get started: $ swift format dump-configuration > swift-format Modify the configuration file to meet your own code style: { "fileScopedDeclarationPrivacy" : { "accessLevel" : "private" }, "indentConditionalCompilationBlocks" : true, "indentSwitchCaseLabels" : false, "indentation" : { ... I keep my default configuration file in my base Developer directory: $ mv swift-format ~\Developer\.swift-format When needed, I can override the defaults by placing a modified configuration file in the project-specific root directory. Note: Don't forget to prefix the configuration file with a . Git Commit Hooks Git Hooks are a way to run custom scripts when different Git actions occur. A pre-commit hook runs when you commit changes to a repository. Here's the pre-commit script I'm using to run swift-format: #!/bin/bash GIT=/usr/bin/git GREP=/usr/bin/grep SWIFT=/usr/bin/swift # Staged (cached) added/copied/modified/renamed files FILES=$($GIT diff --cached --name-only --diff-filter=ACMR | $GREP '\.swift$') # Exit ear

## SwiftUI Custom URL Schemes

DevFeed: [SwiftUI Custom URL Schemes](<https://devfeed.tech/articles/swiftui-custom-url-schemes-21088.md>)

Original publisher: [Read original article](<https://useyourloaf.com/blog/swiftui-custom-url-schemes/>)

Author: Keith Harrison

Published: 2025-10-27T11:26:47Z

Content type: tutorial

Language: en

Sources: [K. Harrison](<https://devfeed.tech/sources/k-harrison.md>)

Topics: [SwiftUI](<https://devfeed.tech/topics/swiftui.md>), [WebView](<https://devfeed.tech/topics/webview.md>), [iOS](<https://devfeed.tech/topics/ios.md>), [WebKit](<https://devfeed.tech/topics/webkit.md>), [App](<https://devfeed.tech/topics/app.md>)

Tags: [async](<https://devfeed.tech/tags/async.md>), [auto-layout](<https://devfeed.tech/tags/auto-layout.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [how-to](<https://devfeed.tech/tags/how-to.md>), [ios](<https://devfeed.tech/tags/ios.md>), [ios-26](<https://devfeed.tech/tags/ios-26.md>), [objective-c](<https://devfeed.tech/tags/objective-c.md>), [protocol](<https://devfeed.tech/tags/protocol.md>), [scheme](<https://devfeed.tech/tags/scheme.md>), [swift](<https://devfeed.tech/tags/swift.md>), [swiftui](<https://devfeed.tech/tags/swiftui.md>), [web](<https://devfeed.tech/tags/web.md>), [webview](<https://devfeed.tech/tags/webview.md>), [wwdc](<https://devfeed.tech/tags/wwdc.md>), [xcode](<https://devfeed.tech/tags/xcode.md>)

### AI overview

This tutorial explains how to create a custom URL scheme handler for SwiftUI WebViews in iOS 26. It covers implementing URLSchemeHandler, loading local HTML resources from an app bundle, registering the handler in a WebPage configuration, and displaying the page in a WebView.

### Source excerpt

Create a custom URL scheme handler for SwiftUI WebViews. Custom URL schemes Apple introduced both WebView and WebPage SwiftUI views in iOS 26. These provide similar WebKit functionality to the UIKit WKWebView APIs. This includes being able to register custom URL schemes to load local resources. Suppose I have an App that loads quotations from the local App bundle. My URL scheme uses the format: quotes://001.html There are a few steps to support a custom URL scheme: Create a custom URL scheme handler that knows how to load the local resources. Register the scheme handler in a WebPage configuration. Have the WebView load and display the web page. Let's look at each of those steps. URLSchemeHandler (iOS 26) The URLSchemeHandler is a protocol with a reply method to return an async sequence of results. The AsyncSequence expects us to either yield a URLResponse and some data or throw an error. struct QuoteSchemeHandler: URLSchemeHandler { static let scheme = "quotes" func reply(for request: URLRequest) -> some AsyncSequence< URLSchemeTaskResult, any Error > { AsyncThrowingStream { continuation in ... } } } The reply method provides us with the URLRequest. I start by extracting the URL and checking it matches our quotes scheme: guard let url = request.url else { continuation.finish(throwing: QuoteError.missingURL) return } guard url.scheme == QuoteSchemeHandler.scheme else { continuation.finish(throwing: QuoteError.invalidScheme) return } To construct the URL response I need the mime type and length of the data. I first extract the filename from the URL, determine the mime type from the file extension, and then load the data: do { let file = try filename(for: url) let mimeType = try mimeType(for: file) let data = try Data(contentsOf: file) I can then build the URLResponse: let response = URLResponse( url: url, mimeType: mimeType, expectedContentLength: data.count, textEncodingName: "utf-8" ) If nothing has gone wrong I then add the response and the data to the AsyncSequenc

## iPhone 17 Screen Sizes

DevFeed: [iPhone 17 Screen Sizes](<https://devfeed.tech/articles/iphone-17-screen-sizes-21086.md>)

Original publisher: [Read original article](<https://useyourloaf.com/blog/iphone-17-screen-sizes/>)

Author: Keith Harrison

Published: 2025-10-13T09:44:39Z

Content type: article

Language: en

Sources: [K. Harrison](<https://devfeed.tech/sources/k-harrison.md>)

Topics: [iphone](<https://devfeed.tech/topics/iphone.md>)

Tags: [apple](<https://devfeed.tech/tags/apple.md>), [auto-layout](<https://devfeed.tech/tags/auto-layout.md>), [display](<https://devfeed.tech/tags/display.md>), [features](<https://devfeed.tech/tags/features.md>), [ios](<https://devfeed.tech/tags/ios.md>), [ios-26](<https://devfeed.tech/tags/ios-26.md>), [iphone](<https://devfeed.tech/tags/iphone.md>), [objective-c](<https://devfeed.tech/tags/objective-c.md>), [screen](<https://devfeed.tech/tags/screen.md>), [swift](<https://devfeed.tech/tags/swift.md>), [wwdc](<https://devfeed.tech/tags/wwdc.md>), [xcode](<https://devfeed.tech/tags/xcode.md>)

### AI overview

This article compares the screen sizes and display specifications of the iPhone 17 lineup. The iPhone 17 and iPhone 17 Pro share a 6.3-inch display, the iPhone 17 Pro Max has a 6.9-inch display, and the new iPhone Air has a 6.5-inch display. It also covers display features, resolutions, safe-area insets, materials, and USB-3 transfer support.

### Source excerpt

There's less variation this year with the base iPhone 17 and Pro models sharing a display. The Plus model is gone but we get a new iPhone Air. Here's what you need to know about the iPhone 17 models. The New Models in a Nutshell There's no iPhone 17 Plus model this year. Instead the iPhone 17 gets the same 6.3" display as the iPhone 17 Pro. The Pro Max keeps the 6.9" display from last year. Finally, we have the new iPhone Air with a 6.5" display. Apple continues to sell the base iPhone 16, 16 Plus, and the iPhone 16e. That gives this years models three different screen sizes: The 6.3" display in the iPhone 17 and 17 Pro has almost the same specs as the iPhone 16 Pro. That brings features such as ProMotion and the Always-on display to the base iPhone 17. The only difference I can see is an increased peak brightness of 3,000 nits (up from 2,000 nits). The Titanium frame of last years Pro models is replaced with an Aluminium unibody. The base iPhone 17 has an Aluminium frame but the iPhone Air has a Titanium frame. Support for USB-3 (10Gbp/s) transfer speeds is still limited to the Pro models. iPhone 17 The base iPhone 17 display upgrades to a spec comparable to the iPhone 16 Pro 6.3" display with ProMotion and Always-on, along with the A19 chip. A19 chip (6-core CPU, 5-core GPU with Neural Accelerators, 16-core Neural Engine) Display: 6.3" Super Retina XDR OLED with ProMotion, Always-On display, and Dynamic Island Screen resolution (points): 402 x 874 Native resolution (pixels): 1206 x 2622 (460 ppi) Native Scale factor: 3x Portrait size classes: w: Compact, h: Regular Landscape size classes: w: Compact, h: Compact The status bar is 54 points high with a top safe area inset of 62 points which gives the following safe area insets: Safe Area Insets (portrait): top: 62, bottom: 34, left: 0, right: 0 Safe Area Insets (landscape): top: 20, bottom: 20, left: 62, right: 62 Note: In landscape there's now a top safe area inset of 20 points. iPhone 17 Pro The iPhone 17 Pro is f

## Swift Default Value in String Interpolations

DevFeed: [Swift Default Value in String Interpolations](<https://devfeed.tech/articles/swift-default-value-in-string-interpolations-21087.md>)

Original publisher: [Read original article](<https://useyourloaf.com/blog/swift-default-value-in-string-interpolations/>)

Author: Keith Harrison

Published: 2025-09-07T08:51:46Z

Content type: tutorial

Language: en

Sources: [K. Harrison](<https://devfeed.tech/sources/k-harrison.md>)

Topics: [Swift](<https://devfeed.tech/topics/swift.md>), [SwiftUI](<https://devfeed.tech/topics/swiftui.md>), [Localization (l10n)](<https://devfeed.tech/topics/localization.md>)

Tags: [auto-layout](<https://devfeed.tech/tags/auto-layout.md>), [ios](<https://devfeed.tech/tags/ios.md>), [learn](<https://devfeed.tech/tags/learn.md>), [objective-c](<https://devfeed.tech/tags/objective-c.md>), [swift](<https://devfeed.tech/tags/swift.md>), [swift-6-2](<https://devfeed.tech/tags/swift-6-2.md>), [wwdc](<https://devfeed.tech/tags/wwdc.md>), [xcode](<https://devfeed.tech/tags/xcode.md>)

### AI overview

Swift 6.2 adds a default value parameter for string interpolation, allowing optional values of any type to use a specified fallback string. The article also notes that this parameter does not currently work with LocalizedStringKey.

### Source excerpt

Swift 6.2 makes it easier to interpolate strings with optional values. What's The Problem? In this SwiftUI view I need to create a text string from an optional integer value: struct CounterView: View { let count: Int? var body: some View { Text("The count is \(count)") } } The compiler warns about the optional value: String interpolation produces a debug description for an optional value; did you mean to make this explicit? The compiler suggests either providing a default value or to use String(describing:) to silence the warning. Using the nil-coalescing operator to provide a default value removes the warning but is not ideal. The default value has to match the type of the optional value. That can work when dealing with an optional string. In this example I have an optional Int and there may not be a sensible default value for the nil case. For example, I could use zero: // The count is 0 Text("The count is \(count ?? 0)") The alternative of using the String(describing:) approach is both clumsy and ends up showing the nil value: // The count is nil Text("The count is \(String(describing: count))") What I want is a way to provide a default string regardless of the type of the optional value. Default Value Parameter In Swift 6.2, String interpolation has a new default value parameter that accepts a string regardless of the type of the optional value: // The count is not set Text("The count is \(count, default: "not set")") That's an improvement over outputting nil. Localization One issue is that I've been unable to get this to work with localization. The problem seems to be that LocalizedStringKey doesn't support the default value parameter. So this doesn't work: // Not Supported let key = LocalizedStringKey("The count is: \(count, default: "not set")") Learn More SE-0477 Default Value in String Interpolations Swift Default Value in String Interpolations was originally posted 07 Sep 2025 on useyourloaf.com. Want this direct to your inbox? Sign up and get my free WWDC

## Rethinking layout in Sketch with Stacks

DevFeed: [Rethinking layout in Sketch with Stacks](<https://devfeed.tech/articles/rethinking-layout-in-sketch-with-stacks-9123.md>)

Original publisher: [Read original article](<https://www.sketch.com/blog/stacks/>)

Author: Chris Downer

Published: 2025-05-27T01:00:00Z

Content type: article

Language: en

Sources: [Sketch Blog](<https://devfeed.tech/sources/sketch-blog.md>)

Topics: [Sketch](<https://devfeed.tech/topics/sketch.md>), [ui](<https://devfeed.tech/topics/ui.md>), [Figma](<https://devfeed.tech/topics/figma.md>), [CSS](<https://devfeed.tech/topics/css.md>)

Tags: [auto-layout](<https://devfeed.tech/tags/auto-layout.md>), [design](<https://devfeed.tech/tags/design.md>), [latest-features](<https://devfeed.tech/tags/latest-features.md>), [layout](<https://devfeed.tech/tags/layout.md>), [ui](<https://devfeed.tech/tags/ui.md>)

### AI overview

Sketch's Stacks feature enables flexible, adaptable UI layouts whose elements can resize and adjust spacing based on their context. The article explains why Sketch developed Stacks as a successor to Smart Layout and introduces Frames as the container supporting them.

### Source excerpt

Stacks are a new way to build flexible, adaptable layouts in Sketch. From buttons to complex UI, they'll have a huge impact on how you work in Sketch. In this post, design lead Chris Downer shows us what they are -- and why they matter.

## Collaborating to Build an Uncertain Layout

DevFeed: [Collaborating to Build an Uncertain Layout](<https://devfeed.tech/articles/collaborating-to-build-an-uncertain-layout-30764.md>)

Original publisher: [Read original article](<https://engineering.squarespace.com/blog/2021/collaborating-to-build-an-uncertain-layout>)

Author: Yaphi Berhanu

Published: 2021-09-22T15:30:00Z

Content type: article

Language: en

Sources: [Squarespace](<https://devfeed.tech/sources/squarespace.md>), [Squarespace Engineering Blog](<https://devfeed.tech/sources/squarespace-engineering-blog.md>)

Topics: [Website](<https://devfeed.tech/topics/website.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [implementation](<https://devfeed.tech/topics/implementation.md>), [consistency](<https://devfeed.tech/topics/consistency.md>)

Tags: [auto-layout](<https://devfeed.tech/tags/auto-layout.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [flexibility](<https://devfeed.tech/tags/flexibility.md>), [functionality](<https://devfeed.tech/tags/functionality.md>), [layout](<https://devfeed.tech/tags/layout.md>), [product-engineering](<https://devfeed.tech/tags/product-engineering.md>)

### AI overview

Squarespace engineers and designers collaborated to create Auto Layouts, a system that lets users rearrange website content into different layout styles with less manual block manipulation. The system favors ease of use and design consistency while retaining traditional block-based layouts for greater flexibility.

### Source excerpt

How do you make a website look good when you can't know how that website will look? It turns out this is one of the fundamental questions we work with at Squarespace. Since one of our goals is to make it easy for our users to create beautiful websites, we need to walk a delicate balance between constraints and freedom. So, how do we navigate that balance?

## Responsive Sign-In Form Using New GUI Builder

DevFeed: [Responsive Sign-In Form Using New GUI Builder](<https://devfeed.tech/articles/responsive-sign-in-form-using-new-gui-builder-19626.md>)

Original publisher: [Read original article](<https://www.codenameone.com/blog/tutorial-gui-builder-autolayout-signin-form-responsive/>)

Author: Steve Hannah

Published: 2017-07-25T00:00:00Z

Content type: tutorial

Language: en

Sources: [CodeName One](<https://devfeed.tech/sources/codename-one.md>)

Topics: [GUI](<https://devfeed.tech/topics/gui.md>), [Tutorial](<https://devfeed.tech/topics/tutorial.md>), [ui](<https://devfeed.tech/topics/ui.md>), [Demo](<https://devfeed.tech/topics/demo.md>)

Tags: [auto-layout](<https://devfeed.tech/tags/auto-layout.md>), [blog-post](<https://devfeed.tech/tags/blog-post.md>), [demo](<https://devfeed.tech/tags/demo.md>), [gui](<https://devfeed.tech/tags/gui.md>), [guide](<https://devfeed.tech/tags/guide.md>), [java](<https://devfeed.tech/tags/java.md>), [sign-in](<https://devfeed.tech/tags/sign-in.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>), [tutorials](<https://devfeed.tech/tags/tutorials.md>), [ui](<https://devfeed.tech/tags/ui.md>)

### AI overview

A video tutorial demonstrates how to create a responsive Sign In form with Codename One's GUI Builder and its auto layout mode, starting from an existing demo project.

### Source excerpt

Hopefully by now, most of you have had a chance to try out the new GUI Builder - specifically the new "auto layout" mode that allows you to position components with much greater precision than before. For this blog post, I have prepared a couple of video tutorials to walk you through the creation of a Sign In form using the GUI Builder. I have taken the existing Sign In demo project as a basis, but I'm re-doing the UI, which was originally hand-coded, using the GUI Builder.

## Codename One 3.7 is Live

DevFeed: [Codename One 3.7 is Live](<https://devfeed.tech/articles/codename-one-3-7-is-live-19254.md>)

Original publisher: [Read original article](<https://www.codenameone.com/blog/codename-one-3-7-live/>)

Author: Shai Almog

Published: 2017-06-26T00:00:00Z

Content type: release

Language: en

Sources: [CodeName One](<https://devfeed.tech/sources/codename-one.md>)

Topics: [Java](<https://devfeed.tech/topics/java.md>), [releases](<https://devfeed.tech/topics/releases.md>), [Mobile](<https://devfeed.tech/topics/mobile.md>), [GUI](<https://devfeed.tech/topics/gui.md>), [Android](<https://devfeed.tech/topics/android.md>), [Universal Windows Platform](<https://devfeed.tech/topics/uwp.md>), [JavaScript](<https://devfeed.tech/topics/javascript.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>)

Tags: [android](<https://devfeed.tech/tags/android.md>), [auto-layout](<https://devfeed.tech/tags/auto-layout.md>), [gui](<https://devfeed.tech/tags/gui.md>), [java](<https://devfeed.tech/tags/java.md>), [javascript](<https://devfeed.tech/tags/javascript.md>), [mobile](<https://devfeed.tech/tags/mobile.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [release](<https://devfeed.tech/tags/release.md>), [windows](<https://devfeed.tech/tags/windows.md>)

### AI overview

Codename One 3.7 is a release for Java developers that adds an overhauled GUI builder with experimental auto-layout. The release also includes live style customization, z-ordering across operating systems, and support for mobile targets including iOS, UWP, Android, and JavaScript.

### Source excerpt

Codename One 3.7, the "Write Once Run Anywhere" mobile solution for Java developers is now live! This exciting new release brings with it a surprising new overhaul of the Codename One GUI builder which now includes support to "auto-layout" allowing developers to place components with the ease/power of Photoshop or Illustrator.. Codename One is the only platform that... Has Write Once Run Anywhere with no special hardware requirements and 100% code reuse