CodeAssist 3.0.1
CodeAssist 3.0.1
A note up front — sorry for breaking things. This release breaks compatibility with older projects, and I won't pretend otherwise. CodeAssist is moving fast right now, and I've made a deliberate choice: I'd rather iterate quickly, break things, and move forward than be slowed down keeping everything backwards-compatible. Thanks for bearing with the churn — it's in service of getting somewhere good, faster.
Your files are now in the system file manager
Project files are exposed to Android's file manager through the Documents Provider API. Browse, open, edit, copy, and manage everything from Files (or any file-manager app) — full file access lives there now.
- You can't pick your own "projects folder," and that's on purpose. Android's file-access constraints make a free-floating project root unreliable, so CodeAssist owns the storage location and surfaces it through the Documents Provider instead. This is a deliberate trade-off, not a missing feature.
On Gradle projects
Gradle projects are partially supported — but they are not what CodeAssist is about. CodeAssist is building its own build system, its own project configuration, and its own lightweight tooling. The aim is a genuinely different IDE — not Android Studio on a phone. Gradle interop is there for convenience; the first-class path is CodeAssist's own format.
Kotlin — fast, accurate completion from our own resolver (ongoing milestone)
Kotlin code completion that's quick and accurate — and built entirely from scratch. CodeAssist does not use the Kotlin LSP or the Kotlin IDE plugin. The type resolution, symbol binding, inference, and diagnostics are all our own implementation, kept light enough to run on-device.
This is an ongoing milestone — please report completion / resolution / diagnostic issues. Your feedback directly shapes it.
Compose layout preview — from scratch, at runtime
Live preview of @Composable functions, rendered on-device by our own Kotlin interpreter (also written from scratch). Instead of compiling, CodeAssist interprets your Composables at runtime and drives the real Compose runtime to render them. Most language constructs are supported — if you hit one that isn't, please report it and I'll do my best to port it.
XML layout preview — with custom views
Live preview for XML layouts, including your own custom View subclasses. How it works, briefly: the layout is rendered against a from-scratch rendering bridge that stands in for the Android framework; your custom views are compiled and loaded at runtime through that bridge, so they draw with their real behavior — not a placeholder box.
Also in this release
- Compose apps build and launch on-device again — fixed a dexer crash where the bundled D8/R8 dropped Kotlin 2.4 classes (Compose apps shipped without their
MainActivity); APKs now also get a properversionCode/versionName. - SDK Manager — install and switch SDKs, plus a sources/docs downloader with resumable downloads.
- Import and recover existing projects, accessible storage location.
- File management — long-press for create / rename / move / copy / delete (files and packages) with live file-tree refresh. Reveal any file in the system file manager and open or share it through other apps, backed by the Documents Provider above.
- File viewers — preview non-code files right in the app: drawables, colors, and bitmaps render directly, with
@resourcereferences resolved. - Editor and UI shell — persistent open tabs, dependency search.
- Dependency resolver — Maven transitives, BOM platforms, version ranges, offline cache.
- On-device APK build, install, and launch, with a runtime permission sandbox for code you run.