This depends a lot on who you’re going to show the portfolio to.
The first thing to consider is the general idea of a portfolio: a collection of projects that demonstrates your capabilities. In that sense, every project can be part of your portfolio no matter how basic and incomplete. Even if you don’t show it to anyone, at the very least it can provide you with a sense of progression and you can see and appreciate the steps, big or small, you took to get to where you’re now.
But if you want to show it to an employer, then yeah, maybe a project that’s basic might not be the right choice to put in a portfolio. Depending on the jobs you are applying too, the complexity the employees require might differ.
Yet, focusing on how basic the code or project is can be the wrong way to look at things. What matters is not the complexity, but how well your code is able to solve problems. If you can solve problems with basic and simple code, well, that’s super great. There’s this article that illustrates clearly how simplicity is an advantage:
Another thing is relevance. How basic or complex the project is doesn’t matter to the employer if it’s not relevant to them. Because of this, it might be better to curate the topics you choose for projects to be more in line with what domain you expect to jump into. It’s fine to be eclectic and have multiple disparate domains, but having a focus is the minimum. Maybe something like the T-shaped person:
With that said, whether the project is basic or complex, when the portfolio is for a future employer, it should be somewhat complete and polished. That’s on you to decide though. Sometimes you might have completed half of what you intended to do, but that half is good enough to be considered a full project on its own; if that’s case, then put it in the portfolio.
Maybe the case can be made that a portfolio changes a lot depending on who’s going to read it. If we consider all our projects as a portfolio, then the portfolio that we show to potential employers will be a subset of that main portfolio because not all projects will be relevant them.
And speaking of portfolios, I recently read this interesting article:
It could be helpful.