DEV Community

Cover image for ProjectMan🦸 is here! Add projects to favorites and open them from command line
Saurabh Daware 🌻
Saurabh Daware 🌻

Posted on

ProjectMan🦸 is here! Add projects to favorites and open them from command line

Alt Text

So I made an NPM package called ProjectMan.

ProjectMan is a project manager CLI which lets you add projects to favorites and open them from wherever you want using projectman open command.

I am lazy to type p r o j e c t m a n so there's an alias to command projectman which is pm so all ya sloths and pandas out there, you can even type pm <command>

Alt Text

The whole idea was, I hate to cd /till/the/project/path and then open the project in my favorite editor so using ProjectMan you can add projects to favorites with pm add and then open them from anywhere you want with pm open

npm install -g projectman to install ProjectMan and get started🦸

Alt Text

ProjectMan also provides some other commands like pm seteditor, pm remove and pm edit, You can read about them in ProjectMan Documentations

GitHub: https://github.com/saurabhdaware/projectman
NPM: https://npmjs.com/package/projectman

Hope you all will like it! Do star the repository if you liked it!

If there is anyone who needs help to get started with GitHub or wants to practice sending pull request I would be happy to help with this or any of my other repositories, you can reach out to me on my Twitter: https://twitter.com/saurabhcodes

Thank You for showing interest and reading this 🎉

Discussion (42)

Collapse
devhammed profile image
Hammed Oyedele

I use z with zsh-autoauggest to jump to projects...will try this today and pm should list projects instead of having to type open again.

Collapse
saurabhdaware profile image
Saurabh Daware 🌻 Author

I just checked out zsh-autosuggest, looks cool! and thanks for showing interest in projectman :D

Collapse
johannesjo profile image
Johannes Millan

First thought: I would make pm an alias for pm open.

Collapse
saurabhdaware profile image
Saurabh Daware 🌻 Author

pm will actually list down all commands but there's an 'o' alias for open so you can actually type pm o and it will open projects.

Collapse
johannesjo profile image
Johannes Millan • Edited

Just wondering: What are you likely to want to do more often? :)

Thread Thread
saurabhdaware profile image
Saurabh Daware 🌻 Author

Like in terms of projectman? It actually does make sense to have pm an alias for pm open I would like to have some more opinions on this so maybe we can have a discussion over it.

also I'm sorry I guess I didn't get your question 😅.

Thread Thread
johannesjo profile image
Johannes Millan • Edited

I just thought if I use the app regularly, the command I'd probably need the most, would be the open command, while I likely only need to look up the commands a couple of times.

Nice logo btw.!

Thread Thread
saurabhdaware profile image
Saurabh Daware 🌻 Author

yeah agree! I'll put this up in the next minor version. Thanks for your suggestion 😊.

and yeah I do graphic designing sometimes, Thanks! 🙈

Collapse
fultonbrowne profile image
Fulton Browne • Edited

I will be using this, thanks for sharing it with the world!

Collapse
saurabhdaware profile image
Saurabh Daware 🌻 Author

thank you so much, I'm glad you liked it ! 🌻🌻

Collapse
francisprovost profile image
Francis Provost

Nice idea! Good job! 💪

It would be nice if, when you open a project, it cd to the folder too maybe with an argument or something like that

Collapse
saurabhdaware profile image
Saurabh Daware 🌻 Author

So from nodejs I am calling exec('code /path/project') to open project so similar thing will not work for cd as it is executed in the separate shell. So apparently to achieve something that you mentioned I would have to write a shell script and somehow call it from nodejs which would be super hacky way of doing it.

Also, Thank you so much for reading this!

Collapse
francisprovost profile image
Francis Provost

It would indeed be really hacky and hard to be cross-platform

Collapse
saurabhdaware profile image
Saurabh Daware 🌻 Author

Hi, In v1.2.0 I added the ability to cd to the folders. You can substitute pm getpath command inside cd and it will show you list of projects and you can select and cd to it. Usually it is cd $(pm getpath) or cd $(pm gp) or cd $(pm gp [projectName]) (It won't really cd till the folder when you pm open though)

Collapse
chandrasd profile image
Chandra Dasari

Aw man this is gonna save me so much time writing the path to a project and searching where I left it. cheers for making this.

Collapse
saurabhdaware profile image
Saurabh Daware 🌻 Author

Thank you so much! :D

Collapse
piavgh profile image
Hoang Trinh

Great tool. Thank you very much.

Will you support Webstorm in a future release?

Collapse
saurabhdaware profile image
Saurabh Daware 🌻 Author • Edited

You can pm edit and set commandToOpen value to wstorm and it will work even with this version :)

Collapse
piavgh profile image
Hoang Trinh

I love this flexibility :D

Thread Thread
saurabhdaware profile image
Saurabh Daware 🌻 Author

Thank you! there are pretty cool things coming in next version btw! keep an eye on it's github :)

Collapse
hmaciasc profile image
Héctor Macías

I'll indulge my laziness once again. Nice!

Collapse
saurabhdaware profile image
Saurabh Daware 🌻 Author

haha thank you 🌻🌻

Collapse
bartekpacia profile image
Bartek Pacia

Awesome idea! I was always using shell aliases to do that kind of stuff.

Collapse
saurabhdaware profile image
Saurabh Daware 🌻 Author

Thank you so much 🌻 and yes even I love using cli to do almost everything 😂🕺

Collapse
_hellorashid profile image
Rashid Aziz

This is really cool! I'm having some trouble getting it working on a windows machine though, I'm getting some 'execution policy' security error - anyone else seeing this?

Collapse
saurabhdaware profile image
Saurabh Daware 🌻 Author

Are you getting that error in pm add or pm edit command?
Can you try uninstalling the package and

npm install -g https://github.com/saurabhdaware/projectman#v1.1.0-rc.1

It's beta version but I changed few things in how I treat settings.json
Would be super helpful if you let me know if this works for you, Thanks!

Collapse
britotiagos profile image
Tiago Brito

Great work, started using it, what a great help. Thanks

Collapse
saurabhdaware profile image
Saurabh Daware 🌻 Author

glad it is helping you, Thank you so much 🌻

Collapse
mpourismaiel profile image
Mahdi Pourismaiel

I love you.

Collapse
saurabhdaware profile image
Saurabh Daware 🌻 Author

haha thank youu 😭🌻🌻❤️❤️

Collapse
maciekgrzybek profile image
Maciek Grzybek

Awesome stuff man :) I'll give it a test ride tomorrow :)

Collapse
saurabhdaware profile image
Saurabh Daware 🌻 Author

Thank you so much :D

Collapse
hindemostwoo profile image
Hindemost-Woo

Cool. I do something similar with eventghost, using doskey and python, I'm excited to dig into this tomorrow thanks

Collapse
saurabhdaware profile image
Saurabh Daware 🌻 Author

oh cool can you share link of your project? and thank you for showing interest 🌻🌻

Collapse
tanuj101 profile image
Tanuj Nagpal

Ctrl+r opens up all workspaces for me on VSCode then I can fuzzy find between them.

Collapse
saurabhdaware profile image
Saurabh Daware 🌻 Author

Yup, I use ctrl + r too! I made this to initially open projects before even opening vscode. So if I want to work on project2 and my last closed project is project1 I won't have to open vscode and see project1 then ctrl + r type project2 and press enter.

Collapse
phatdang profile image
PHAT DANG MINH

Thanks

Collapse
saurabhdaware profile image
Saurabh Daware 🌻 Author

Your welcome! and thanks for reading 🌻

Collapse
prototorpedo profile image
Bogdan Calin

How do you have such a beautiful terminal?

Collapse
saurabhdaware profile image
Saurabh Daware 🌻 Author

are you talking about the .png ? oh its carbon.now.sh
the .gif is my actual terminal which is just basic ubuntu terminal

Collapse
nyanmyohtet profile image
Nyan Myo Htet

Nice idea. I really like it.
👍👍👍👍

Collapse
saurabhdaware profile image
Saurabh Daware 🌻 Author

Thank you so much 🌻🌻