Software

Following is the list of my expectations on software. Some of them are more opinionated then others. Keep in mind these are only recommendation.

Use version control

You must use a version control software. Commit small functional changes with meaningful messages. There are plenty of posts about this on the internet. You may draw inspiration from How to Write a Git Commit Message.

Repository

Made your code available to the public. You can use GitHub or GitLab. You may even consider setting up personal profile page and adding the thesis repository to your portfolio.

In addition, your repository should contain a license, like the MIT. You should put the license into LICENSE file in root of the repository.

It is best to setup the repository at the start of the project.

Deployment

When possible use Docker to distribute your application. You can utilize GitHub Packages to host your images.