Loading...

  1. v2.0.3Android
  2. v3.16iOS
    Built-in MCP Server & AI Agent Support
    - Codea now includes a built-in MCP server, making it easier to connect AI coding agents directly to your projects
    - To get started, open Air Code and check the updated menus and documentation
    
    Editor Scroll to Top Gesture
    - Adds a new setting in Editor Preferences to control the editor scroll-to-top gesture
    
    Xcode Export Improvements
    - Improves Xcode export
    - The Xcode exporter now uses the same packaging style as zip export, with dependencies embedded into the exported project
    
    IMPROVEMENTS
    Performance Improvements
    - Improves Codea startup performance
    - Attempts to improve loading performance on the project grid
    
    Game Center Turn-Based Support
    - Adds GKTurnBasedEventHandlerDelegate support
    
    Viewer Layout Improvements
    - Prevents the viewer split pane from being occluded by buttons in iPhone landscape mode
    
    FIXES
    - Fixes an issue where the dependency list could show items in an incorrect state
    - Fixes an issue where pressing return could incorrectly add an `end` statement
    - Fixes `require` when importing projects using modern buffer ordering syntax
    - Fixes image pixel access behaviour so it is no longer inverted on the Y-axis in Modern renderer
    - Minor UI fixes
  3. v3.15iOS
    File API
    - This lets you copy, move, rename and delete files using asset keys. See the Storage chapter for documentation and examples
    
    Multi-Window Mode
    - iPad power users: you can now switch Codea into multi-window mode from the settings pane to open and run projects in new windows by default. Great for external displays
    
    iPad Menu Bar Support
    - Codea now supports the iPad menu bar
    
    IMPROVEMENTS
    
    Liquid Glass
    - Codea now supports the new UI. Edges more opinionated
    
    Documentation Sharing
    - Adds a share button to documentation pages to share markdown-formatted snippets. Share what you know, perhaps with an LLM?
    
    Project Reordering While Searching
    - You can now reorder projects even while a search is active
    
    Carbide Rendering & Canvas Improvements
    - Adds canvas.position and canvas.size
    - UI canvas position is no longer influenced by UI scale
    - Fixes an issue where camera viewport affected canvas rendering
    - Camera and matrix state handling is more robust when using render textures and matrix.push
    
    Carbide Shader Improvements
    - Adds a new sprite() mode to Shader Builder for improved sprite render order control
    - Improves handling of sampler flags in shaders. Textures behave themselves
    
    Editor Improvements
    - Autocomplete is now suppressed inside multi-line strings and comments
    
    FIXES
    
    - Fixed crashes when displaying PDFs
    - Documentation example views now display correctly
    - Fixed crashes related to camera state when mixing viewports, matrices, and render textures
    - Fixed issues with iCloud assets that could cause hangs
    - Fixed an issue where the Find view didn’t automatically search for selected text sometimes
  4. v3.14.3iOS
    Screen sizes: you can now choose from a variety of screen sizes when running your projects. This includes iPhone, TV, and Square. Great for testing your layouts — use `layout.safeArea` to ensure your project is not obscured by device features
  5. v3.14.2iOS
    NEW
    
    - Dependencies list is now searchable, supports iCloud and other project locations. Very dependable
    
    FIXED
    
    - Improved support for hot reload
    - Exposed tween target to Lua for more control in animations. You are the puppet master
    - Modern renderer: Fixed sprite rendering breaking some scene rendering
    - Modern renderer: Improved rendering by resetting view state when changing projection or view matrix. We don't know what it means either
    - Improves performance of the project grid to address lag and freeze issues with large projects. The grid no longer buckles under the weight of your creations
  6. v3.14.1iOS
    NEW
    
    Better project export. Codea now includes all your dependencies when you export your project as a zip. They'll appear neatly packed in a /Dependencies folder, so anyone you share with has everything they need to run your code. No more incomplete offerings
    
    FIXED
    
    Fixed some editor UI bugs on iPhone. We've quashed the small screen rebellion
    Carbide: Fixed crash when using certain callback parameters that weren't functions
    Carbide: Resolved crash caused by nil sprite references. The void sprites can't hurt you anymore
    Carbide: Fixed issue causing an infinite loop when using text without arguments
    Carbide: Fixed bug where entity duplication could cause errors
  7. v3.14iOS
    Codea is now free
    
    Are you upgrading from a previous version? You’ll get Codea Pro for free. If you’re not upgraded automatically, please contact us and we’ll make sure you are!
    
    Improvements
    - Fixed an issue causing an infinite loop when duplicating an entity twice. The cycle of creation is broken
    - Fixed issue with slice atlas by returning the correct image atlas
    - Resolved crash when closing Carbide. Endings are no longer violent
    - Improved error messages by better handling of optional .lua files in runtime errors
    - Quaternions now display member values in a more predictable order in debug output. Mathematical order has been imposed
    - Minor UI improvement: adjusted error marker width for better visibility. The marks of failure are now easier to see
  8. v3.13.5iOS
    Improvements
    
    • Adds the classic FixedSys monospace font to Codea. The past reaches forward through time, one pixel at a time
  9. v3.13.4iOS
    Fixes
    - We made some adjustments to the code editor last version, but those adjustments came with bugs! Crashes are mitigated in this version. The editor's rebellious phase has been quelled
  10. v3.13.3iOS
    Improvements
    • Adds viewer.paused so you can pause the viewer. Can you unpause it? No. Because it's paused
    • Updates our modern renderer backend to the latest version. The shadows deepen
    
    Fixes
    • Fixes a bug where having very large projects in Codea could cause random hangs in the editor. The behemoths no longer freeze time
    • Fixes an issue with marked text entry which could cause the cursor to disappear. We found the cursor
    • Fixes undo in Shader Lab. History is no longer immutable
  11. v3.13.2iOS
    Dependencies
    • Dependencies chosen in the sidebar now summon their `require()` statements into your code. Unselect them, and the code cleanses itself. No manual intervention required
    
    Modern Runtime
    • When creating new classes in the modern runtime, the class name is added as a parameter in the default template. Identity is bestowed at creation
    • Your custom components are now included in the returned components list from an entity. Nothing hides from the census
    • Adds camera.viewport and camera.aspect to Carbide. Narrow your world view
    
    Improvements
    • Replaces key.return with key.enter. The renaming will continue until morale improves
    • Added a "What's New" button in the settings pane. Discover the changes we've made while you weren't looking
    
    Fixes
    • Fixes Code Notes on iPad mini 6th generation. We thought you were using a phone, our bad
    • Fixes Xcode export for legacy projects. The old ways are preserved
    • Fixes an issue with worldToScreen in Carbide when used with viewports. Coordinates now translate correctly across dimensions
  12. v3.13.1iOS
    FIXED
    
    • Example projects were not appearing occasionally on new installs. They were hiding in the shadows
    • If your example projects did not appear, please tap the settings icon in the top right, scroll down, and choose "Restore All Examples" 
    • The missing shall be summoned at your command
  13. v3.13iOS
    Introducing Code Notes
    
    Bring your Apple Pencil to your screen to write, scribble or draw on your code. Annotate, highlight, circle, underline. Make your intentions clear. Or obscure them completely
    
    And if you want to see what madness looks like, we’ve scribbled all over our example projects
  14. v3.12.5iOS
    Motion Sensing
    • New motion API for Carbide. Track your device's accelerometer and more. It knows when you move
    
    File Picking
    • Introducing the pick() API family. Summon the iOS file picker directly from your running project. Choose wisely
    
    Type Introspection
    • New typeof() function reveals the true nature of Carbide types. Knowledge is power. Power corrupts
    
    Utilities
    • color.fromHSV lets you create colors from the void between hue, saturation, and value
    • table.flatten collapses your multi-dimensional data into a single plane of existence
    • Entity visible property can now hide elements from view. Just because something is invisible doesn't mean it isn't there
    
    Improvements
    • Editor UI polish. Sharper. Sleeker. More efficient at extracting your thoughts
    • Improved animations and keyboard behavior in collection creation. Empty names are rejected. All things must be named
    
    Fixes
    • Fixed autocomplete on the first blank lines. Emptiness yields to your commands
    • Resolved Air Code issues. Your remote coding sessions shall proceed unhindered
    • Fixed a crash in World Generator example project. World creation is a delicate process
    • Fixed occasional failures to load local projects. Your creations were hiding, but we found them
    
    Modern Renderer
    • Image smoothing can now be controlled. Blocky or smooth, you choose
    • Style is no longer reset when rendering empty text. Even nothingness deserves style
    • Entities now remain valid until their scene is destroyed. No more premature deaths
    • Fixed issues with child entity binding. Parent-child relationships were... complicated
    • Fixed load order issues. Everything must happen in the correct order
  15. v3.12.4iOS
    - Pasteboard API: Your clipboard's thoughts are now accessible to both Carbide and Legacy
    - Vector Swizzling: Your vectors can now contort themselves into new forms. myVec.zzz or myVec.zx = vec2(5, 6)? The possibilities are... unsettling
    - Image Slices: slice.image and slice.atlas reveal the truth behind the fragments
    - Color Arithmetic: Colors can now add, subtract, multiply, and divide. The boundaries between hues blur ever more
    - Vector Evolution: cross, rotate, rotate90, and angleBetween have emerged for vec2 in Carbide
    
    FIXED
    
    - Key Recognition: Left and right modifiers have gained individual consciousness through proper keyCode values
    - Identity Crisis: leftCtrl and rightCtrl were masquerading as alt keys. Their true nature has been restored
    - Modifier Detection: key.modifiersPressed(modifiers) now sees all, regardless of left or right alignment. Nothing escapes its gaze
    - Collider Persistence: Deleting a collider no longer tears holes in the fabric of reality. The list remains intact
    - Project Creation: The creation screen stands firmer against accidental dismissal. Some things shouldn't be interrupted
    - Name Recognition: The name field has broken free from autocorrect's grip. Your projects deserve their true names
    - Icon Integrity: Custom tinted project icons have emerged from the shadows. Their tops are no longer haunted by transparency
  16. v3.12.3iOS
    FIXED
    
    • Last update we introduced dark mode icons. Perhaps things got a little too dark. The renderer had a tendency to greet you with an ominous black screen. We’ve convinced it to show up properly now.
    
    • Sharing an iCloud project was causing the app to crash. Projects should be shared, not crash your hopes and dreams. This has been fixed.
  17. v3.12.2iOS
    NEW
    
    • Dark Mode Icon: A new icon has emerged from the shadows. Embrace the darkness.
    
    RENDERER
    
    • Scene Naming: Scenes can now have names, courtesy of scene.name. It’s about time they got some recognition.
    
    • Entity IDs: You can now directly access entity.id. Every entity has an identity, after all.
    
    • Overridable Methods: The update and touched methods for scenes can now be overridden. You’re in control.
    
    • Renderer Backend Improvements: We’ve tinkered with the renderer backend. It’s smoother now, though you might not notice… until you do.
    
    ENHANCEMENTS
    
    • Syntax Highlighting (Modern Renderer): Syntax highlighting has made its way to the modern renderer. It’s still a work in progress, but the colors are coming together nicely.
    
    • viewer.safeArea Support: The modern renderer now respects viewer.safeArea. Your content will no longer collide with the edges of the screen. You’re welcome.
    
    FIXED
    
    • Objective-C Image Bridging: UIImages were wandering off. They’re back where they belong.
    
    • Lua Error Handling: The error function now actually triggers a Lua error, as it always should have. No more silent failures.
    
    • Memory Leaks in Code Editor: Memory was leaking in the code editor. The flood has been contained.
    
    • Air Code Crash on Save: Fixed an issue in Air Code that could cause a crash when saving. No more sudden exits.
    
    • Fullscreen Touch Input: Viewer controls were getting in the way of touch input in fullscreen mode. They’ve been told to step aside.
  18. v3.12.1iOS
    FIXED
    
    Parameters were experiencing an identity crisis. Instead of being themselves, parameter.color() fancied itself an action button, and most parameters couldn’t quite figure out who they were meant to be, save for the number parameters, which stayed true to form. This existential confusion stemmed from a misconfigured switch statement. Order has now been restored; parameters can now confidently be themselves.
  19. v3.12iOS
    NEW
    
    • Collection Management: Swipe to the left sidebar to manage your collections, create new ones, reorder them, and drag projects between them. It’s all under your control… for now.
    
    • textSize() Implementation: Carbide has gained a new trick. You can now use textSize() for more precise text handling. Everything must be precise.
    
    ENHANCEMENTS
    
    • Autocomplete: Continuously improving. Enjoy smoother, more accurate suggestions. The machine knows what you want.
    
    • Objective-C Initialization: objc classes now respond to the call operator. A minor tweak for a better experience. Everything should respond when called.
    
    • Xcode Export: Modernized and streamlined. Objectively better. Change is inevitable.
    
    • Runtime Type Detection: Check viewer.runtime to know if you’re running Carbide or Legacy. You should always know where you stand.
    
    FIXED
    
    • iCloud Projects: iCloud projects that hadn’t been downloaded now show in the Project Grid. They were hiding, but not anymore.
    
    • Collision Handling: Fixed the onCollisionEnded2d event issues when Began wasn’t defined. Peace has been restored. Or has it?
  20. v3.11.2iOS
    IMPROVEMENTS
    
    - Added a "Play" option for projects on the project grid when you long-press them
    - Removed 2048x2048 image size restriction for imported assets
    - Import plain text files via the document picker in the assets pane
    - Modern renderer now has UIImage image bridging in objc - JF
    - Errors occurring during `willClose` (legacy) or `shutdown` (modern) get reported back to you - JF
    - Discrete slider behaviour is now used for Modern renderer parameter.integer - JF
    - Autocompletion for objc enums when their type is specified - JF
    
    FIXES
    
    - Renderer was able to deadlock under certain circumstances (particularly objc callbacks) - JF
    - Modern renderer asset caching no longer caches between runs
    - entity.worldPosition fixed for canvas entities (UI)
    - Modern renderer physics update now occurs before scene transform update
    - color:mix arguments inverted to match documentation - JF
    - Fixes a crash in the plain text editor
    - Fixes errors when renaming files in Air Code - JF
    - iOS 15: Shader Lab could crash on load
    - iOS 15: Asset picker could crash on load
    
    ACCESSIBILITY
    
    - Asset picker cells are much more accessible - Ari
    
    NOTE
    
    - This will be the last iOS 15-compatible update for Codea
  21. v3.11.1iOS
    Fixes a crash that could occur on startup when running on iOS 15
  22. v3.11iOS
    iCloud Drive
    • Store your projects on iCloud Drive, thanks to Unsung's amazing work. You can select a location when creating a new project or move existing projects to iCloud with a long press and select "Move to iCloud." Now you can have all your projects on all your devices, wherever you are
    
    Air Code
    • Devices running Codea will appear directly in VS Code, making Air Code easier than ever to use. Plus, we've introduced log points for evaluating expressions during debugging. All thanks to the tireless efforts of Jean-François
    
    Accessibility
    • Thanks to our newest team member, Ari, the main project browser is now more accessible, and is now navigatable via VoiceOver
    
    Collaboration via iCloud
    • Work on projects with friends by sharing through iCloud. Simply long-press a project in iCloud, choose "Share Project" and select "Collaboration" to get started
    
    UI Enhancements
    • The create project screen has been completely re-written. Set custom tint colors for your projects to personalize your workspace
    
    Editor
    • We've made code editing smoother with improvements in tokenization and keyboard navigation
    
    Modern Renderer
    • The modern renderer has received a host of improvements and fixes. Now, you can set colorspace, utilize clipping, and more. We're actively working on this, so let us know what you think
    
    Fixes
    • Numerous bug fixes and minor improvements, including performance issues when using asset keys
    
    Thank You
    • A big thank you to everyone who contributed to this release, especially our new team members!
  23. v3.10iOS
    Air Code
    Fix desync issue between Codea and Air Code
    Assets are now available under an Assets folder
    Ability to read, save, copy and rename binary files from VSCode
    Made it possible to modify values of variables and watches while debugging
    Better expose some custom types in VSCode debugger (tables, colors, etc.)
    Fix soft lock when saving a file while the debugger is paused
    Fix breakpoints not working in newly created files
    
    Asset Keys
    Fixed issues with using external assets
    Improves Asset Key support in Modern renderer (to match Legacy)
    
    Asset Picker
    Fixed issue where all sections would be displayed for sub-folders
    Allow picking assets from other projects
    Add picker support to require()
    Refreshes the UI of the Sound Generator tool in the sound() picker
    
    Require
    Load files in buffer order when importing a project with require()
    
    Modern Renderer
    Fix issue where reading the red component of a color would return it as a float
    
    Legacy Renderer
    spriteSize now correctly returns the page count of PDFs
    Adds supported sound and music file formats to documentation
    readImage returns nil when the requested page is out-of-bounds
    
    ObjC
    Remove deprecated enums and values
    Add unnamed enums under objc.enum
    Add objc.async to run code async on the main thread
  24. v3.9.7iOS
    FIXES
    - A bug where `sound` could stop working when re-running a project
    - Appearance issues with the font picker UI in editor
    - Initial scroll position in editor
  25. v3.9.6iOS
    - Removes status bar when playing projects
    - Changes text truncation mode on project icons
  26. v3.9.5iOS
    VIEWER
    - New sidebar with updated controls, including:
    - Full screen mode
    - Support for Dynamic Type
    - Works with classic and modern renderers
    - Set Project Icon feature lets you position and crop your icon
    
    CODE EDITOR
    - Tab will indent a block of code if you have a selection
    - Shift+Tab will de-indent a block of code
    - Cmd+Z and Cmd+Shift+Z should work again for undo/redo
    - Lots of fixes and optimizations for the code editor
    
    MODERN RENDERER
    - Improved stability, especially around pausing/restarting
    - Added gamepad.playerIndex
    - Fixed style.tint
    
    CLASSIC RENDERER
    - New physics.timeStep() to change the timestep when more precision is needed
    
    AIR CODE
    - Increased the maximum file size supported
    - Improved Carbide support
    
    OBJC
    - Added CGVector support, can be created using objc.vector
    - Fixed responsiveness issues with objc UI controls
    - objc objects can now be compared for equality
    - Add ability to implement the same protocol multiple times
    - Support numbers for objc structs like objc.rect
    - Fixed issues when using multiple windows
    - Error message improvements
    
    DEPRECATED API
    - backingMode
    - displayMode

Disclosure: Independent intel to help mobile builders succeed.

AI-powered analysis with editorial review, built from publicly available sources. Marlvel.ai is not affiliated with, endorsed by, or sponsored by Codea, its developer, the app publisher, Apple, or Google Play. All trademarks, logos, and screenshots referenced remain the property of their respective owners.

Data licensed under CC-BY-NC 4.0