You don't have a lot of collaborative work (read: contributions to existing projects) or original work that others are using, which is one of the things I look for in candidates. I'm not just interested in a candidate's ability to write code, but in how they write code in the context of large projects, how they produce deliverables for consumption by other developers and stakeholders. Your Github profile isn't just a chance to showcase your ability to write code, but a chance to showcase how you write code with other people involved. A candidate who is actively contributing pull requests to other projects is very interesting to me, because they demonstrate an ability to collaborate with other people on a codebase they didn't originate, which is obviously necessary in business.
Your commits are clean, though, which is very good. I see way too many candidates with message after commit message like "stuff" and "changes" (anecdotally, I've found this to be pervasive in newly-minted CS majors and academic repositories). That's a major negative for me, because it suggests a lack of desire or ability to communicate the essence of your work.
A strong history of open source participation and/or a strong history of development of a personal project that is actively used somewhere are the biggest things I look for, because they speak not just to your ability to write code, but your ability to ship deliverables. After that, I look at code quality (cleanliness/use of idioms/lack of obvious bugs or errors) and commit quality (how disciplined are you in your commits, how well do you communicate what each change is for). The lack of those things isn't a "no" for me, but their presence is a big "yes".
This is definitely true. I generally put up small one off projects where I implement an idea I'm interested in, as opposed to long-term libraries or applications that are intended to be used by others. For the longest time I wasn't technically skilled enough to contribute to other people's code, but now I think it's more about a lack of time and interest for me. I'll definitely make a deliberate effort to collaborate and work on other people's projects going forward. I'm curious to know though, what do you mean when you say that I "show an understanding of some important concepts in [my] work"?