Blog

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

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!

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

108 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