Skip to main content

Command Palette

Search for a command to run...

Unlock $1000 at the 1Password Hackathon

Published
โ€ข3 min read
G

Although being in various roles of a software development company by talent, a software architect and development enthusiast by hobby. I love creating business ideas that come to life with the touch of technology.

Always evaluating an impactful problem to solve. One Idea can change your life!

๐Ÿ’ก
Enough unlocking only passwords with 1Password. Now unlock $1000 too. :)

If you are on hashnode before June 30th 2023, you may already be aware there is a hackathon by 1Password.

While I might share some tips with interested participants who need direction while others might consider this a spoiler too.

Hoping to help all my fellow participants on how can they contribute and possibly win $1000 in the category of Most 1Password Shell Plugins contributed.

Let's get started with the basics!

  1. Go to the hackathon link and register first :p

  2. You need to know at least one programming language to be aware of syntax and how code works

  3. Learn Golang basics (My favourite youtube channel, and no this is not a paid promotion)

What are we building?

Shell plugins!!! Actions that get invoked by 1Password CLI when you fire a command like "aws s3". Read more.

What do these actions do?

These actions invoke and inject variables and much more which you have stored in 1Password before the commands are invoked but only after 1Passwords authentication. Now your secrets/passwords/keys are safe there and not lying on the desktop in some folder like (c:/windows/win32/system/nothing.txt and made them hidden OR uploaded on a cloud drive. Just a pun :p.)

Start learning

  1. Try and understand basic plugin code here

  2. Existing plugins are located in this path (https://github.com/1Password/shell-plugins/tree/main/plugins)

  3. The aws, ngrok, and fastly are great starters to help you with the next set of plugins to be developed. Read them, run them, and test them to get acquainted.

Start building and why

Now if you notice plugins like aws which have environment variables to get key, secret and probably the zone. Here are a few famous and other CLIs that use environment variables in a similar fashion

Few famous providers have CLIs and possibly set variables through env. for which you can build shell plugins:

  • Azure

  • Auth0

  • Authy

  • Bitbucket

  • Firebase

  • Jenkins

  • Kafka

  • MongoDB

  • Pusher

  • Redis

  • SonarScanner CLI

I am not going to explain what they do because the internet is full of resources that talk about these famous. Watch Videos, and read articles. Simply research !!!

Implementation Steps?

StepsTime
Research on using CLI for the application3 hours
Refer to basic plugin code, and samples and then implement2-3 hours
Testing1-2 hour
Total6 -8hours

Now typically, you might take 20-30 hours to get acquainted with the golang, the starter part and then each plugin. The ticker shows 9 days*10 hours/day = 90 hours.


If all this was simple then why am I not building it? you may ask.

Well, I am trying to build something different on the hackathon. Either it may end up being an "aha" or "LOL" moment. But giving it a shot.

Also, I wished for such guidance during my early work career. So trying to help fellow participants with directions. Cheers.

Go for it and start building. Good luck! Happy coding

๐Ÿ’ก
Last but not least, whatever the contest results may be, You just learnt golang and at least one of the famous providers from the said list.
S

Let's see if my key unlocks some cash or not ๐Ÿ˜…

J

Great article! Are you going to write a Shell Plugin?

1
G

Was the initial plan but too many on that spot. After research thought that let others have some quick directions.

Working on three use cases at the moment, in a hope that the 1Password team loves/likes it. :)

1
M
Maro 3y ago

You're right, not sure i want to create more. Too many persons there. Godwin Pinto

G

Maro :) Hence the article to build the quick ones without spending too much time (works on same principle) and get in the category of most shells