Loading [MathJax]/extensions/MathZoom.js

Thursday, 8 October 2015

GitHub, and the SupermarketPlanner

I've not yet used GitHub so I thought I'd get familiar with it by setting up a repository with an old .NET project of mine, the Supermarket Planner.

The SupermarketPlanner is a WPF app that allows me to build a shopping list from a list of common meals.

When you start a new list you can choose the number of days to plan ahead.


Next, you can drag and drop meals onto the list (as well as other staples)


Finally print out the list and you're ready to go.

The project was interesting because I wanted to use 2-way binding on the WPF grid as well as drag and drop between different grids. There is also some hierarchical binding to XML in there! I might go into detail on some of these in a future post.

While it's functionally complete, there are a few downsides. One is that it's too much work to get the printer out when you might as well just write the list down. I'm thinking that creating a mobile phone client that can sync the list would make it much more usable and would save paper!

So, on to GitHub.

First I set up an account and followed the instructions to install the GitHub desktop. These were fairly self explanatory

Once installed, open the desktop and create a repository. I clicked on on the +  and create the name of the repository and path to my project locally.


You should create a README.md and LICENSE.md text file with appropriate contents. The README appears on the GitHub Repository page so it's especially important to include this.

Next, select the files to commit and enter the Summary and Description before the Commit to Master button can be clicked.

Then Sync to get this uploaded to the server.

Finally, I didn't want the binary and obj files to be included in the list whenever I wanted to make an update, so I added the following to my .gitIgnore file. (This is created automatically alongside .gitattributes)

# Dot NET folders
bin/
obj/
*.suo

The URL to clone this project is https://github.com/jscott7/SuperMarketPlanner.git

GitHub seems very easy to use, making updates is simple and there is support for issue tracking. Also, as future Robot Arm posts are likely to include increasingly lengthy code I'll set up a GitHub project instead of pasting it all in the blog.



No comments:

Post a Comment