How to work with projects


I also want to add my support to having project support in Atom. I would also like to request this incorporates a little useful feature that existed in Textmate 1 (and e-texteditor on Win). Sublime has a limitation where projects can only contain folders at top level and not files. And for a number of projects I have use folder from one location and then random files from another (a good example would be a “project” that I use to manage web server config, such as mysql.ini, php.ini and apache confs).

In TM1 this was possible (dont get me started on TM2), but in Sublime this was never possible and was a real bug bear of mine.


if you want to quickly switch “projects”…

using terminal, for example:

  1. cd ~/www/project_1
  2. atom .
  3. cd ~/www/project_2
  4. atom .

now you can switch “projects” by using “Window” menu. also, don’t forget ctags -R . :wink:


Because of limitations in atom the extra feature doesn’t exist atm, but here is a Project Manager package.


Urm, “quickly”?

Not sure I would class dropping into terminal and cd’ing into a directory as a quick if im honest :wink:


maybe i was not clear enough.

first you open two instances of atom, for two seperate directories… as shown in 1-4 (or you can do just that from atom itself, open two directories that is)

then open atom, click “window” menu… see? two “projects” and you can switch between them. NOW you see how to switch between “projects” (folders) in a quick way (using “window” menu that is).


Or use the excellent mark/jump zsh functions from Jeroen Janssens, far more friendly than memorizing dozens of paths or constantly tabbing for path completion ;).

@temperedvision: depending on your work, it’s not uncommon to have to run many other tools through the terminal (think local server, build and tests watchers, etc.), so switching projects isn’t always just a matter of switching directories and as the link above demonstrates there’s quite handy tools to navigate in a system using only the terminal :smile:.

As for today, there’s the Project Manager package that can do the job, it isn’t matching the proposal of @cliftonite though but in practice I find it far more simpler and less intrusive than the onein ST (for instance).


Either way, none of these solutions addresses the need to manage “projects”, not even the "Project Manager package. All these solutions accomplish at present is provide a way to open a single directory in an Atom window, not manage a project.

While some people may consider a project as being “some files in a directory”, this concept is too narrow, and does not cater for the more complex (and I’d argue more common in some sectors) use case where projects are a combination of folders/files from multiple locations. Even my most basic use case for a project consists of a source folder and a capistrano config folder.

There is also the need (again provided for in Sublime and Textmate 1) of hiding certain files/folders in a project, which again doesn’t appear to have been address as of yet.

As @danielbrodin has noted, this is a weakness in Atom at present, and thus trying to address the need with partial extensions or totally external solutions (zsh et al.) is not really addressing the original need for Atom to support projects in a more comprehensive fashion.


Just trying Atom out and like what I’m seeing so far. It feels clunky to use without built-in project functionality though. It means I’m having to open entire repositories and browse the files through the standard file/folder hierarchy. And with files/folders all over the place within a repository, it means that the tree pane is very cluttered and not the best to work with. I know that built-in project functionality is coming, so hope this comes sooner rather than later. It’s the main thing holding me back from switching from Sublime Text 3.


I just publish my package project-switcher

It is easy to use, without any configure, just press cmd-;

It switch projects in same parent folder, it is simple but work.


I use this Sublime Text workflow as well, I have sometimes need to have multiple projects open (no problem in Atom) at the same time, or I need to switch between a few projects. My projects are structured is in a sense that some projects shares assets with other projects, so I find I need to continually bounce between projects and right now the default implementation of Atom it’s really rough to do this.

Thanks for the suggestions above.


Have you tried the Project Manager package?


Actually, you can save your sublime project files anywhere. They don’t have to be in your repo. Of course, if you save them outside your repo, you can’t share them.


like @danielbrodin said danielbrodin/atom-project-manager works great if you want a manage-able list of projects. And I like that the projects file is stored in ~/.atom/projects.cson

I also use Project quick-open: chuckhendo/project-quick-open which works off of a parent folder you keep all your projects in.

Using these together works fantastically for me.


Not that quick for switching but this is a nice to know.


Look at atom/tree-view. You can add the necessary functions to it and submit it for a pull. In ST3, the tree-view is unavailable for modification but not in


Project Manager Works for me.


This reminds me to Cloud9 IDE project manager :smile:


Yes, because sometimes the files i want included in the project are dot-files from my home folder or files elsewhere, like /etc, which i can’t move, or i include the same files/folders in multiple projects.

Basically, 1) i shouldn’t have to modify my environment to work around my editor, and 2) i shouldn’t have to switch windows/projects to edit any files for which it makes sense to edit or reference together.

Imagine i’m writing a script to process some log files from /var/log. It would be nice to have the actual /var/log files opened in a pane in the same project in which i’m writing the script. Or if i mount folders from others hosts and i want my mount-points centralized rather than strewn about.

If cmd-t worked properly with symlinks, that’d be a cumbersome but workable workaround. But apparently, having the root folder contain a bunch of symlinks doesn’t work with cmd-t.

I think this is the only feature i’ve noticed that is keeping me from switching from ST.


Totally agree. Coming from Sublime I’m used to switching between projects, and simply opening Sublime and opening one or two of my projects. All folders ready to go for me.


To be fair… everything is worth debating, if there are indeed more than one opinion. :wink:

But as a reference, there is an issue open for allowing multiple folders / projects:

It’s being worked on, but since it is not a minor effort, the team appear to be concentrating on fixing more urgent bugs before getting to major enhancements like this.
Keep an eye on that issue.