We're currently working on our documentation and we sort of followed Scrum.
Which diagrams, charts, figures, and etc should I include in our documentation? Also, what are the best practices in documenting the "just right" amount of documentation?
There is an anti-pattern in many agile shops where they devalue useful documentation, likely due to a belief that "just read the code" is a reasonable answer.
The cognitive load for reading a few lines of code is significantly greater than the cognitive load for reading a few paragraphs of words; and as the saying goes, a picture paints a thousand words. As a programmer, I'm sure you've ran into situations where you spent hours spelunking through a code base only to finally ask someone who is able to illustrate the problem you're trying to solve with a few boxes and arrows on a whiteboard.
That said, premature documentation, like premature abstraction can be an anti-pattern. Instead, here's the process I go through when leading product and engineering teams:
it { is_expected.to return 200 }
tells you nothing about what the expected endpoint is, what it is supposed to accept, nor what it's supposed to return. I hope this helps!
Code is your most useful documentation because it's the only document that's always up to date. Ensure your code is easy to read: well structured, well named and commented where necessary.
Beyond that, create what documents you feel are necessary. There's no hard rule like "class diagrams are a must have" or "sequence diagrams aren't worth your time". Just consider the following:
This is not to say, documentation is never useful. Create documentation for the things that were really hard to figure out or nail down. Go through your notepads. Chances are you already have numerous notes on these topics from when you were wrapping your head around them the first time.
The one exception in my mind are requirements: You should always have a detailed and clear document explaining your requirements. No matter how murky the waters are where you are now you should always know where you are (supposed to be) heading.