Blog

Welcome the Newest Brackets Committer: Marcel Gerber

I’m incredibly happy to be able to announce that the Brackets committers are welcoming a new member: Marcel Gerber. Marcel has been a member of the Brackets community for a long time and has been playing a big role recently in doing code reviews, triaging bugs, and generally helping out wherever he can. He’s also going to be our youngest committer by a wide margin! Here’s a bit about Marcel in his own words:

I am a 16-yeared student, currently attending a German “Gymnasium” (similar to high school) focussed on math and science. I am going to graduate in 2017 with an “Abitur”, after which I’d like to study at university. I’m not yet sure on what to study, but I tend to Computer Science.

When I started developing little websites, I used a little-known app called Webocton Scripty, and then, reading through some random forum thread, I heard of Brackets the first time. I downloaded it, still in an early phase (it was like Sprint 20 or something), but I enjoyed using it.
On September 1, 2013, I then submitted my first PR to Brackets, fixing a minor issue with the German translation. It was litterally my first contribution to a FOSS project, and later on, I started fiddling with the JavaScript code – this was pretty much the first time I did something with JavaScript.
I love Brackets for developing the programming style and skills – JavaScript, Git, GitHub, developer communications, and also a little CSS and HTML – and for just being an awesome, enjoyable tool.

On a personal note, I enjoy skiing and waterskiing a lot, and also just hanging out with my friends and doing stuff together.

You can find him on Github and on Twitter. Please give him a shout and welcome him on behalf of the entire Brackets community. Marcel, thanks for all of your work!

No Responses


Brackets 1.3 Release Is Here

We’re very happy to announce that Brackets 1.3 is available as of today with some great new features and the first implementation of the Brackets Health Report which will go a long way towards helping us improve Brackets and providing extension authors with helpful information about how you all are using Brackets.

Command Line

One of the most requested Brackets features has been to allow launching it from the command line. As of 1.3, that’s possible! On Windows, when you install Brackets, you’ll be given the option to add Brackets to the right click context menu as well as adding Brackets to your PATH. On Mac, you can install the command line tools by going to File->Install Command Line Shortcut.

Once you’ve done that, you should be able to launch Brackets from the terminal (on Mac) or command prompt (on Windows) with the brackets command. Following brackets with the name of a file or folder will open that file/folder in Brackets. You can get more information, as well as troubleshooting info, on the Command Line Tools wiki page.

Code Folding

Thanks to the major effort by Patrick Oladimeji, the original author of the Brackets Code Folding extension, we’ve brought the feature into core so now every user has access to code folding without the need for an extension.

The core feature works the same way as the original extension and now the preferences have been brought into the core preferences system and you can see how to set them on the preferences page.

Thanks again to Patrick for his help on the feature and his enthusiasm for getting it into core.

Brackets Health Data

As I mentioned, this release of Brackets includes the start of our Brackets Health Data collection. As Peter Flynn mentioned in the blog post, the goal is to collect anonymous, aggregated data with an eye on improving Brackets as well as providing more information to the community about how people are using Brackets.

You can opt out any time, as well as see what data we’re sending, by going to Help->Health Report.

Other Fixes

This release also fixes a nasty bug on Windows that affected the scroll behavior. We also now highlight Angular templates correctly as plain HTML and we’ve improved our indenting behavior. You can see the full list of fixes over on the Release Notes page.

Community Contributions

As always, a huge thanks to our contributors for this release:

9 Responses


Introducing Brackets Health Report

The Brackets community has grown by leaps and bounds over the past year, especially after our 1.0 milestone last fall. Earlier in the development of Brackets we felt more confident guiding the project based on direct user feedback and our own intuition. But as the project has grown, we need a better picture of how people are using Brackets so we can continue making it even more awesome. Rather than relying on guesswork, we think the best approach now is to gather real usage data.

Media discussions often focus on gathering data for the purpose of selling ads, but it can also be immensely valuable simply for making your app better. Knowing how people use an app helps decide what to build, prioritize when to build it, spot usability/discoverability problems, and find lurking bugs and reliability issues. Without those insights, we – and our community of extension authors – are flying half blind.

So to serve all our users better, Brackets 1.3 will introduce a new Health Report feature that we’ll use to guide future development. But Brackets isn’t just any app – it’s open-source, and for a developer tool we realize privacy must be the absolute #1 priority. The Health Report will be:

  • Anonymous – the data sent will never include your identity or private information like filenames.
  • Aggregated – Brackets does not send individual events – only averages and totals.
  • Transparent – the code is open-source, and you can view the data Brackets is sending at any time. We began soliciting feedback with an open proposal over 7 months ago, and we’ll continue the conversation by sharing what we learn from the data in the future.
  • Minimal – every piece of information has a purpose directly tied to making Brackets better.
  • Optional – you can always opt out of the Brackets Health Report. But for all the reasons above, we urge you not to!

On the topic of transparency, we want to start by sharing some of the more limited information we already have available without Health Report. This Google spreadsheet tells the story of how Brackets grew from an early preview in the spring of 2012 into a vibrant, thriving project with nearly 600 extensions, 120 themes, and over 250 contributors to the core code.  Be sure to check out the tabs at the bottom for visualizations like the ones shown below.

We scrape together this information from a variety of sources today, but all of them have significant limitations:

Downloads – we can just count how many times people clicked the Download links on brackets.io.  This may undercount Linux, where some users get Brackets from unofficial sources like Linux app repositories – we hope Health Report will give a more accurate picture of how many Linux users love Brackets!

Br downloads per week

Users per day – we can get a rough picture of how many people have used Brackets in a given day by counting how many hits the update JSON feed gets, since Brackets checks for updates exactly every 24 hours.  But this is impossible to aggregate into measures like weekly or monthly active usage; again, Health Report will give a more accurate picture.

Br users per day

Extensions & themes – the Brackets extension registry makes it easy to see how many extensions are currently available.

Br extensions available

Extension downloads – the extension registry knows how many times each extension package has been downloaded. But this is very rough, since it lumps together new “installs” of an extension with upgrades of an existing extension; extensions that are updated more frequently will have much higher download totals. Health Report will show how many users installed an extension and kept it installed. With more reliable data, we can begin exposing download counts in the Extensions Manager UI.

Contributions to core code – git history makes it easy to see how many pull requests we’ve merged from community contributors.

The initial version of the Health Report will only add a few new pieces of key data. It works by sending a short report once every 24 hours, containing:

  • A randomly-generated UUID
  • The current Brackets version
  • OS version and locale
  • List of installed extensions (only those that are already published in the extension registry, so non-public or not-yet-released extensions are kept private)

That last item highlights an important point: the Health Report isn’t just for core Brackets developers – we also want this data to help extension authors. This initial version of the Health Report will give authors a much clearer picture of how many people benefit from their extensions.

In the future, we’d like to carefully expand the Health Report to include other useful information. We’ll be sure to announce any changes ahead of time, and we’d love to hear feedback on what other information would be valuable for you to see.

Because we’re building this feature for the benefit of all Brackets community members, please let us know your thoughts by commenting below.

12 Responses


Brackets 1.2 Now Available

Brackets 1.2 is out and has a bunch of really fantastic features that users have been asking for for a while. Between a longer than usual winter break for Adobe and ramping up new team members, and fixing some last minute Linux issues, this release took a bit longer than expected, but we hope you enjoy it!

New Features

A couple of things you’ll immediately see are that we now offer CSS color name code hints thanks to Marcel Gerber so when you type the color property in CSS you’ll see a list of W3C color names with a swatch. Marcel also added syntax highlighting for the Dart language so when you open a Dart file you should see things highlighted correctly. This release also makes working with SVG files easier thanks to the SVG code hints that were added by Amin Ullah Khan. Just open up an SVG file, start typing, and you’ll see code hints for tags and properties. A couple of other things from the team include scrollbar tick marks that sill show the location of find/replace matches and make it easy to jump to them. We added common named keys like PageUp, PageDown, Home, etc, to the key binding list so that you can use those names in your custom key bindings or extensions. Finally, Brackets now looks great on Windows High-DPI screens. One of the things we’re most excited about is that we’ve got an initial implementation of moving selected text via drag and drop thanks again to Marcel Gerber. We have a couple of small things we want to fix before it goes on by default, but you can start using the feature now by adding the dragDropText property to your brackets.json preference file (Debug->Open Preferences File). It doesn’t exist by default so you’ll have to add this entire line to the bottom of your file (make sure to add a comma to the line above it so it stays a valid JSON file):

"dragDropText": true

The community really, really stepped up on this release and you can see all of the fixes, features, and translations that were contributed in the full release notes.

What’s Next

We’re going to get cranking on the 1.3 release right away. One of the major things we’ll be doing is finally starting to work on the Health Data report proposal. So we can share information about how people are using Brackets and where people are seeing issues that we need to address. I’ll be sharing more information about that over the next couple of weeks.

Thanks again to the entire Brackets community. Happy Coding!

=Ryan
ryan@adobe.com

19 Responses


Welcome New Brackets Committers

It’s been an exciting couple of months for the Brackets community. The 1.0 release was downloaded over 400,000 times since our launch over 1.5 months ago. We continue to get great feedback from the community and released Brackets 1.1 in the middle of December before the Brackets team  members from Adobe took a break for the holiday.
We continue to see great momentum for the project across the board. We’re up to over 20,500 stars on GitHub making us the 15th most starred project overall. The number of extension authors is now up to 371 and we have 616 extensions now available which is double what we had early in the year.
With all this good news I’m excited to announce some new committers from Adobe on the Brackets project; Prashant Kumar Singh, Praful Kumar Vaishnav, and Prashanth Nethi.
I’ll let them introduce themselves in their own words:
Prashanth Kumar Singh (Github, Twitter)
I have been working for Adobe as a Software Developer for the past 6 years in the Web platform tooling team. I am working currently on Dreamweaver having recently helped deliver Photoshop Extract for Dreamweaver. I have been writing JavaScript for about 4 years but only recently started using Brackets. Since then, Brackets has been an indispensable part of my work. I feel Brackets is one of the few editors that understand web design and I am glad to help out in making Brackets better.
Praful Kumar Vaishnav (Github)
Hello. I am a Software Developer currently employed in Adobe Systems. I have 1.5 years of professional experience and got chance to work on wide varieties of technology like C++, Java, JavaScript, Web Application. I found Brackets one of the most powerful editors for web design. I am really excited to work with the Brackets Community which is very active in contribution and discussions.
Prashant Nethi (Github, Twitter)
I am a software engineer with 12 years of experience. I have been with Adobe for the last 9 years working on various products like Fireworks and Dreamweaver. I pretty much eat, drink, sleep C++ and I got introduced to web technologies couple of years back when I started to work on Dreamweaver.  Since then I have been working on projects that involve heavy JavaScript.
After looking at Brackets architecture, I was kind of kind of blown away with what was accomplished. I mean, how can all of this run using JavaScript :). I am really excited to be part of Brackets and hope to make some good contributions that is going to excite our customers.
Music is what keeps me going and in my free time you can find me playing Keyboard
Please join me in welcoming them to the community. They’ve already started jumping in and are excited about helping out with Brackets.

5 Responses


Brackets 1.1 and Extract for Brackets 0.6 Now Available

On the heels of the 1.0 release we’re very excited to announce the availability of Brackets 1.1 and an update to the Extract for Brackets extension today. The Brackets team is thrilled with the response we had to the 1.0 launch. Brackets 1.0 was downloaded almost 400,000 times in the past 5 weeks. That’s a humbling number and we are looking forward to keeping up the momentum.

Stability, Performance and Other Fixes

The 1.1 release is primarily a release about stability and making sure we continue to have a good foundation. We updated the version of the Chromium Embedded Framework (CEF) we’re using so that we are now working with a more updated version of Chrome. That means we’ve addressed some bug fixes and users on Windows will now have high DPI support. We also did some work to improve the typing performance with code hints.

As of this version of Brackets you can now define file-type specific preferences by using the language group in your brackets.json file. You can find out more here. You can now also selectively enable specific linters per project by using the .brackets.json file in the root of your file.

Cross-Browser Live Preview

One of the biggest features in this new version of Brackets is experimental support for the next iteration Live Preview which lets you use Live Preview with browsers other than Chrome. This feature was one that the Intel Brackets committers including Sebastian Salvucci and Arzhan Kinzhalin worked hard on and helped us land for this release. Our hope is to make this the default implementation of Live Preview.

To try out the cross-browser Live Preview, you need to enable a preference in your brackets.json file:

  1. Debug->Open Preferences File
  2. Add "livedev.multibrowser": true inside of the curly braces on a new line (make sure to add a comma above it if you add it to the end)
  3. Hit the Live Preview button and Live Preview will open up in your default browser
  4. Copy/Paste the URL from that browser to any other browser
  5. Any Live Preview changes will update across all of the browsers open with that page

Definitely try it out and give us feedback on the new implementation and file any issues you run into.

Extract for Brackets (Preview)

In addition to Brackets 1.1, we’re releasing an update to the Extract for Brackets extension that includes a new getting started experience and a feature that lets you collaborate with a designer who is using the Creative Cloud. You’ll now be able to open a publicly shared Creative Cloud link right from Brackets.

We’ve revamped the initial experience when you launch Extract for Brackets to walk you through how the product works. If you’ve already tried Extract for Brackets but were a bit confused about how to get started you can click the question mark button in the toolbar. You’ll see new tool tips that will take you through how to use Extract for Brackets.

Getting Started with Extract for Brackets (Preview)

Collaborating with Designers

This version of Extract for Brackets also has a feature that makes it easier to collaborate with designers who are already using the Creative Cloud to store their PSDs. If you’re working with a designer they can send you a publicly shared link to a PSD in the Creative Cloud and all you have to do is paste that URL into Brackets and you’ll be able to extract from that PSD.

You can give it a try by copying and pasting this URL: http://adobe.ly/1E67WAS into the updated version of Extract for Brackets.

Open from a public URL

The entire team is excited about both of these releases and building off of the great 1.0 release. A huge thank you to all of our committers and everyone who has filed issues, submitted pull request, and keeps using Brackets. You can see a full list of Brackets changes including community contributions here.

17 Responses


Brackets 1.0 and Extract for Brackets (Preview) Now Available

1.0, we did it! This is a big milestone for the Brackets project. Right now you can grab version 1.0 of Brackets, as well as a preview of Extract for Brackets, an extension that Adobe has been working on. Extract for Brackets (Preview) speeds up the process of pulling design information like colors, fonts, and measurement info out of a PSD and turning it into clean, minimal CSS.
When we first started Brackets we wanted to release early and often. We did both. This will mark the 45th release of Brackets in 3 years. In those early releases we acknowledged that there were a number of features Brackets was missing so we warned that it was still early and not necessarily ready for every day use. But in the past 3 years we’ve been very busy adding features to help make Brackets a world class text-editor. Declaring this release as 1.0 is our way of telling the world that Brackets is ready.

What’s New in 1.0?

We’ve been busy over the last few releases adding a number of major features. If you haven’t looked at Brackets in a while, now is a great time to see the awesome stuff we’ve been working on. We’ve added multiple cursors, split view, theme support, and many more fixes and enhancements. This release includes support for custom key bindings so you can change the shortcut key combinations that Brackets uses. This wiki page describes how to customize them and includes example key bindings that align Brackets’ keyboard shortcuts with the ones you might be used to in Sublime Text.

This release also includes the ability to collapse Quick Edit results so you can hide results from files that you don¹t want to edit,like the generated CSS files when you¹re working with LESS or SCSS files. We’ve also made JavaScript hinting more accurate by matching by case when filtering.

Extract for Brackets Preview

Extract for Brackets (Preview)

In addition to Brackets 1.0 we’re also releasing a preview of Extract for Brackets. Extract for Brackets is a Creative Cloud service that lets you view and get information and assets out of a PSD right from your text
editor. Extract for Brackets lets you pull out things like colors, fonts, measurement, gradients, and more from a PSD in the form of contextual code hints in CSS and HTML files. You can also extract layers as images, use information from the PSD to define preprocessor variables, and easily get dimensions between objects. We’re excited about how this will improve the process of moving from design to development and speed up workflow. You can either download Extract for Brackets (Preview) as a standalone extension on the Brackets Extension Registry or included with Brackets 1.0 in a bundle that’s available for download on brackets.io.

What’s Next?

While we’re very excited about 1.0, we are also treating this like any other release, so we’ll continue to release often and will be doing the next Brackets release in 3-4 weeks. As mentioned in this blog post we are going to be slightly changing the things that the Adobe team works on. We think there is an unmet need for a coding tool that supports design and we think that Adobe has a lot of expertise in that area. We will continue to work on core features and to support the community’s work on Brackets, but we also want to build the perfect editor for web designers and front end developers that are creating or implementing designs in code. Some of the things we’re going to be working on are improving our preprocessor support, making SVG editing more powerful, and adding more visual inline editors.

Thank You

Since putting Brackets up on GitHub 3 years ago we’ve seen a great deal of momentum, largely thanks to our community. Our releases regularly see over 100,000 downloads, there have been 245 people who have contributed code directly to Brackets, and we¹re currently the 16th most starred project on GitHub with 18,566 stars. Those are humbling numbers and we’re excited to be working with all of you on making Brackets a success. We’ve also seen over 400 extensions and over 75 themes created in that time, all of which grow the reach and feature set of Brackets. To those of you who have taken the time to write extensions, contribute code, file issues, or even just try out Brackets, we want to say thanks. We couldn’t have done this without you and we are looking forward to continuing to move Brackets forward with you!

104 Responses


Getting Ready to Declare Brackets 1.0

It’s been almost 3 years since the first commit for Brackets landed. In that time we’ve gone from a small project to one of the most popular repositories on GitHub and what we think is the best code editor for web designers and front end developers. We’re excited to see that a lot of you agree! We’ve had 240 contributors over that time, each new release gets over 100,000 downloads, and our extension registry contains 439 extensions and 75 themes. Most of those have been created by you and have helped make Brackets a fantastic tool. Thanks!

Over the past three years the team and community have worked on a combination of “core” editor features as well as innovative features for web development like Live Preview and Quick Edit. We all love innovative features, but a good code editor needs to have a solid foundation too. We think we’ve now got a great balance of both and want to make it clear that Brackets is a tool that you can use for every day work.

As a symbol of that, we’re going to be declaring the next release, which will be our 45th, the 1.0 release of Brackets. We’ll be pushing that release live at the Future of Web Design in NYC in November.

The Future of Brackets

With Brackets hitting 1.0, we’re still committed to releasing every 3-4 weeks and adding great features. There are still things we want to do in terms of core features, but going forward we want to spend the majority of our time adding innovative features for web designers and front end developers.

After releasing 1.0, the core Adobe team is also going to slightly change what kinds of innovative features we focus on. We think that Brackets is a great editor for all kinds of web development and extensions help support a variety of languages and general web features. So post-1.0, the Adobe developers are going to be more focused on features that support design-oriented coding tasks. As a team we’ve been looking at how we can use our expertise at Adobe to give users a great code editing experience. One area we’ve identified is an unmet need for a coding tool that supports design. We think a lot of front end developers and web designers are doing work to implement designs and the core team wants to build the perfect editor for them. Some of the early feature ideas are about improving preprocessor workflows, making SVG editing more powerful, and adding more visual inline editors.

We will of course continue to maintain the core code base as well as implement important core features. We are also committed to supporting the the extension ecosystem so it will always be a great general purpose editor for the web. But we’re particularly excited about the prospect of making Brackets the best code editor for doing design-oriented coding with
CSS, HTML, and JS.

Thank You

We couldn’t have hit 1.0 without our community. It’s been a lot of fun to work with all of you and see the Brackets project grow. The entire team is humbled by how many of you are using it and the time you take to contribute code, file issues, and write extensions. It’s a pleasure to be a part of the Brackets community and we’re all looking forward to continuing to work with you to grow and evolve Brackets.

The entire Brackets team will be at Future of Web Design, so if you’re there, come by. We’ll be at the Adobe booth and would love to get your feedback and hear about your experiences with Brackets.

– The Brackets Team

51 Responses


Brackets 0.44 Release: Split View

Split view has been one of our most requested features for Brackets and with Release 0.44 it’s finally landed. In this release we’ve also overhauled the file tree which should make it more robust. You can see the full list of enhancements here and grab the release here.

Split View

With release 0.44 you can now view two documents side-by-side in either horizontal view or vertical view. To enable split view, use the splitview-icon icon and then decide between a vertical split or a horizontal split. Then select the panel you want to open the file in and double-click the file to open it in that pane. You’ll now see two working sets, one for each pane.

split-view

File Tree Enhancements

We rewrote our file tree to use React which will make it much easier to maintain going forward. During the upgrade we also fixed an issue that wouldn’t let users right-click on files that Brackets doesn’t support.

Quick Docs for Prefixes and other CSS Fixes

As of this release you can now use Quick Docs when you’re on a browser-prefixed CSS property. We’ve also fixed two important issues with editing CSS code: one where Brackets stopped working when using Live Preview if you placed your cursor on a non-indented } character inside a comment, and one where the inline editor was blank if your CSS rule contained a vendor-prefixed property that used rgb() color values.

The entire team is excited about this release. We hope you enjoy split view as well as all the other features and fixes that went into this release. And as always, we appreciate those of you who have contributed translations and fixes this release. Here’s the complete list:

30 Responses


Brackets 0.43 Release

The team has been busy polishing the exterior of Brackets for our upcoming Max release so we’re packing some of Brackets’ existing features with a little extra love in this release.

SCSS/LESS support

Remember when the Quick Edit and Quick Find Definition features were first introduced but they didn’t work for your SCSS or LESS files? Well now they do. Any selector, even the ampersand Selector, can be located using Quick Find and any class, ID or tag selector can be targeted for QuickEdit in SCSS/LESS files.

And that’s not all—mousing over rules declared in SCSS or LESS files will highlight their usage in the browser when using the Live Preview feature. Editing rules, however, will still require that your source file be recompiled. May we suggest the LESS AutoCompile Extension or the brackets-sass extension to automatically recompile them on save?

Extra Dark Theme

Our Dark Theme has spread to make more of Brackets UI dark. Now, when you choose the Dark Theme, you’ll notice the status bar, context menus, dialogs, etc… are styled to match the rest of the UI. Custom Theme Authors can designate their theme to use the Dark or Light UI for the Brackets components which Themes Extensions cannot style.

Brackets After Dark

Themes Tab

The overwhelming popularity of custom themes support exploded our Extensions Manager dialog so Brackets committer Miguel Castillo took it upon himself to do something about it by creating a “Themes” tab.

This makes it easier to find a great theme from the vast array of Custom Themes already added to the registry and new ones being added daily.

Extension Manager Themes Tab

Find UI Improvements

We added a “Find Index” hint to the Find Bar.

Find 1 of 12

This helps to show where you are in the file so you know when you’ve wrapped back around to the beginning.

This is extremely useful for the Replace feature as it shows how many replacements are remaining.

Default Language Switcher

Language Support

The “Language Switcher” (that thing on the status bar that allows you to change the language starting in Release 0.42) could be used to change any document’s language. With Release 0.43, we’ve added the ability to save that setting for all files for the current file’s type.

 

Community Contributions

Brackets wouldn’t be where it is today without its many contributors from around the world. Thank you!

Extras

The Brackets team has updated the wiki article on working with multiple selections to include changes to how Multiple Selections are Pasted. Check it out and let us know how it helps you improve your productivity!

6 Responses