How to collaborate with others

Nowadays it is so easy to work together on text documents (think Google Docs) or on design (think Figma) . We think exchanging code ideas should be just as easy, if not easier!

Code is, of course, different from "regular text". When we talk about collaborative coding we don't mean editing the same copy concurrently, but rather making the action of trying someone else's code and giving suggestions on it extremely fast and easy.

Jump to: Receiving feedback or help ⤵️

Jump to: Giving feedback or help to others ⤵️

Receiving feedback or help

With Sturdy setup and connected to a directory on your computer:

  1. Create a new draft change and give it a good name
  2. Open the directory with the code in any text editor (tip: use the “Open in Visual Studio Code”-button)
  3. Make the changes to your code
  4. Go back to Sturdy, and navigate to the draft from the sidebar
  5. Use the "Ask for feedback" dropdown menu to the right to select a team member to ask for feedback
    1. You can request feedback only from team members who are members of the organization or codebase
  6. The user that you tagged will receive a notification that you asked for feedback
    1. When somebody from the team is browsing a draft, their avatar will appear in the top right corner
  7. Optional: Comment on code [go to]
  8. Optional: Taking / Dismissing code suggestions [go to]

Optional: Comment on code

You can write comments on specific piece of code within the draft change

  1. Point the mouse over the specific line that you wish to comment on — a plus icon will appear to the right next to the line number
  2. Click on the plus button
  3. Write your message
    1. Tip: You can tag a team member by typing @ followed by their name
    2. Tip: Write an emoji by typing : followed by the emoji name!
  4. Click the blue "Comment" button or press ⌘ + enter or ctrl + enter to send the comment.
ℹ️ Comments on Sturdy are not attached to line numbers. A comment is attached to the piece of code that the comment was made on, if the code moves, so will the comment!

Optional: Taking / Dismissing code suggestions

Other members of the codebase can get the code from your draft and create suggestions for you. When that happens you will see a green banner indicating it at the top of the draft.

  1. When you have new suggestions you will get a notification — you can see your notifications via the bell icon at the bottom left of Sturdy. If configured, you will also receive a notification via email (email notifications are only available for Sturdy in the Cloud) .
  2. To see the suggestions, click the "Show suggestions" button. This will display the code diffs between the state of the code in your draft and the changes made by the person suggesting.
  3. Suggestions are indicated with the avatar of the team member making them.
  4. You can hide the suggestions by clicking the "Hide suggestions" button in the green banner.
  5. Suggestions are not in your draft change until you accept them.
    1. To take a suggestion, press the green checkmark button on the left side. By taking the suggestion, the code in your draft will be updated to reflect that – you can immediately see the update in your IDE as well.
    2. To dismiss a suggestion, press the red cross button on the left.
  6. All suggestions can be dismissed at once by pressing the cross button in the right of the banner

Giving feedback or help to others

You can give help and feedback to others spontaneously or when somebody asks for feedback. In the left sidebar of Sturdy you can see your own drafts as well as those of others on the team.

  1. Navigate to a draft by somebody else on the team by clicking on it in the sidebar. The avatars to the left of draft names indicate who the author is.
  2. If the author of the draft is currently working on it, you will see their avatar in the top right corner.
  3. If the author of the draft is making code changes, you will see them in real-time, the same way you would see changes in your own draft.
  4. Optional: Comment on code [go to]
  5. Optional: Quickly indicating feedback [go to]
  6. Optional: Trying the code [go to]

Optional: Quickly indicating feedback

You can give quick feedback without spelling it out in text.

  1. To quickly indicate that code looks good, use the button with the thumbs up icon in the right sidebar.
  2. To quickly indicate that you have some important feedback, use the button with the (i) icon in the right sidebar. You would typically do that to indicate if you have spotted an error but don't have time right now to elaborate.

Optional: Trying the code

  1. While viewing a draft of another team member, press the "Connect folder for suggesting" button.
    1. You will see a new nested draft change named "Suggestion 1" below the draft that you are trying.
    2. This temporary draft has the code of your team member's draft as it looked at the time you pressed the connect button.
  2. The folder on your computer now has the code of your team member's draft.
  3. Explore or run the code as you normally would using your IDE / text editor / terminal
  4. Optional: Give code suggestions [go to]
  5. When you are done you can navigate back to your own draft change and press the "Connect folder for editing" button to continue where you left off.

If the original author makes changes to their draft change after you have pressed the "Connect folder for suggesting" you will not see those new changes. This is a known limitation. To work around this:

  1. Navigate to the draft of your teammate
  2. Press the "Connect folder for suggesting" button
    1. Observe that now there is a second temporary draft named "Suggestion 2" to which you are connected

Give code suggestions

When you have the code from someone else's draft change on your computer, you can give suggestions by simply making changes in your IDE.

While you are connected to the "Suggestion n" draft change:

  1. Type any changes as you normally would, in your IDE or text editor.
  2. Within the temporary suggestion draft change you can see the changes you have created
  3. The author of the original draft change is notified of the suggestions [go to]

You can suggest changes even to files that have not been modified in the original draft change.