Go Get Brackets 1.5

As of today, Brackets 1.5 is available for download. As we mentioned last week, the Adobe engineers on Brackets are working on bringing Brackets into Dreamweaver as the code surface and we expect progress on the open source project to be slower as that happens. But we still hope to do regular releases and our community is fantastic so a lot of the work that will be in those releases will be community driven. Brackets 1.5 is a great example of that.

This version of Brackets adds the ability to fold selected text via code folding and includes some major performance enhancements to searching. Brackets now also gives you CSS code hints inside of style tags in PHP documents and we’ve improved the code hinting performance in minified files.

We also fixed a couple of issues with El Capitan and a freezing/crashing bug. You can see the full list of fixes and enhancements on the wiki.

And a big thank you goes out to everyone who contributed to this release:

No Responses

Update from the Adobe Brackets Team

We’re incredibly proud of the momentum that Brackets continues to have. Over 350,000 people are using Brackets every month. There have been 283 contributors to the project and users have installed 890 different extensions. The community has also become even more active in the project over the past couple of months. We’ll soon be releasing Brackets 1.5 which has a number of fixes and enhancements that were contributed by the community.

The Brackets team at Adobe has been spending the past couple of months talking a lot about how we can continue to move the project forward. We all believe that Brackets is the absolute best code editor out there for the web and the success of Brackets has led to some very good discussion about how Adobe can make our commercial tools better, especially our flagship web tool Dreamweaver. We understand that any good web tool needs to have a powerful code editor at its core.

After discussing how we recreate Brackets features in Dreamweaver, we realized it would be more logical to use Brackets as the code editor for Dreamweaver and are going to start working on that plan.

This won’t have any impact on how Adobe will support the open source project. Brackets itself will remain 100% free and open source. Adobe will continue to maintain a strong engineering team on the project and actively engage and support the community. We will also continue to add features to Brackets and as we do the integration work we’ll be adding a number of core features to the open source project. But it will also mean that overall progress may be slow in the short term as the team works on both the integration work and the core product. As performance issues or bugs come up and get fixed while working on the Dreamweaver integration, we plan to fix those in Brackets directly and contribute them back to the open source project.

Once the integration work is done, which should be in the next 6-9 months, the development team will once again be focusing on Brackets. We will continue to add features and improvements to Brackets which will then make their way into Dreamweaver by virtue of the open source project. We will be working directly in the core Brackets codebase, not a fork, so that features and enhancements benefit the community as well as Dreamweaver.
The Adobe team continues to be both humbled and inspired by the way the community contributes to Brackets and moves the project forward. Brackets has always belonged to the community and that community has never been stronger than it is now. We are excited about this new phase because it allows the Adobe team to spend time on Brackets while also making an impact on Adobe’s commercial tools.

Be on the look out for the 1.5 release over the next couple of weeks. It’s a great release with a number of enhancements and fixes, most of which have come directly from community contributors.

No Responses

Brackets 1.4 is here

Today we are releasing Brackets 1.4, that has some great features which include, the new instant search, better preferences editability to name a few.

Instant Search

Say hello to instant search! Searching across files in Brackets has never been this fast. We have worked ground up to improve the performance of find in files inside Brackets. The end result was so good that we now update the search results as you type. This is a great improvement on top of the existing find in files.

Easier Preferences Editing

Editing preferences is now much easier in Brackets. All the preferences names appear as code hints, while editing the user preferences file. Thanks to the major effort by Amin Ullah Khan, who is the author of this feature. Also, Debug->Open Preferences File.. will now open up split view and bring up user preferences file brackets.json in one pane and all the default preferences in other pane.

Enable/Disable extensions individually

You now have the option to enable/disable individual extensions from Extension Manager. Thanks to Arzhan “kai” Kinzhalin for his contributions on this.

Greek and Cyrillic Character support

We have updated our editor’s font (Source Code Pro), which brings in improved support for Greek and Cyrillic character sets.

Improved Text Rendering on Mac

We have enabled sub-pixel anti-aliasing on Mac by default, that renders the text crisper. This can be overridden by setting the fonts.fontSmoothing preference to antialiased, which brings back the old gray scale anti-aliasing.

Community Contributions

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

Special thanks to Amin Ullah Khan for Preferences Code Hints and Arzhan “kai” Kinzhalin for Enable/Disable individual extensions, which are great additions to Brackets.

Thanks to you for choosing Brackets. We now have over 270,000 monthly active users!

No Responses

Update on 1.4 and a Brackets Roadmap

The team has been hard at work on the 1.4 release and because it’s taking a little bit longer I wanted to provide a quick update on that release as well as share some of the current thinking from the Adobe engineers about where we’ll be focusing our efforts over the next few releases.

One of things we want to do as a team is plan our work around a specific theme for each release. That helps overall productivity for the team because they’re diving into a specific area of Brackets but we’re also hoping that it makes it easier for the community to contribute by being open about what kinds of pull requests we’re likely to prioritize.

This doesn’t mean that the only things that go into each Brackets release will be part of the theme. The other, non-Adobe committers all have their own priorities and things they want to get in so we’ll still have nice, varied releases.

But on the Adobe side I wanted to share our current thinking. And all of this is subject to change based on continued feedback from all of you as well as the other committers.

We’re also exploring using Waffle a lot more (versus Trello) because so far the team likes how it integrates with Github. So you may see fewer updates to Trello and more information in Waffle as we get our process down.

Release 1.4 – Performance!

It’s been a while since we did a performance scrub and we thought this was an ideal time to do it. We’re starting off by trying to measure where we are compared to other editors, then we’re going to see what we can fix, and finally we’re going to make those performance improvements. My hope is that every 6-9 months we could do another round of performance testing and optimization to keep Brackets running fast. We’ve been looking into a few areas:

We felt best about what improvements we could make to Switching between files and Find in Files so we’re taking those for 1.4 and following up on the other items. We’re hoping to release 1.4 in the next couple of weeks.

Release 1.5 – Modern Workflows

For release 1.5 we want to make sure that the innovative Brackets features, like Live Preview, and Quick Edit work with modern web technologies like preprocessors and templating engines. We want to make things like Quick Edit work with preprocessor mixins, and also make Quick Hover work with colors and images you’ve defined as variables.

Release 1.6 and 1.7 – Innovation

This one is a little bit more broad, but for the 1.6 and 1.7 releases we want to spend a lot of time thinking about what innovative features we can bring to Brackets. Things like Quick Edit and Live Preview that will help web designers and developers code faster. Some of the initial things we’ve brainstormed are CSS optimization tools, Grunt integration, and in-browser design tools. As we get closer to the 1.6 release we’d love feedback and crazy ideas about what Brackets could do to help you.

Release 1.8 – Core Editor Features

Our 1.0 release marked the point where we felt like Brackets was really ready for prime time. But there are still some core editor improvements that we’d like to make. Some of the things that might fall into this bucket would be theming the entire UI, allowing multiple Brackets windows, non-UTF files and split view for more than 2 documents. This could also end up being a release where we do some work to improve the UI of the extension manager in Brackets.

I hope this provides a bit of context to what we’re planning and why. But as I said, we’d love to continue to get feedback about whether these themes/features are the right fit and what else might be missing for you in Brackets.

No Responses

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  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.

13 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!


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: 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