Getting started

tombell edited this page May 16, 2011 · 9 revisions
Clone this wiki locally

Getting started

Downloading the code

There are 2 possibilities:

Using git ...

Type in the following code in git bash:

git clone https://github.com/ToJans/NerdBeers.git

... Or downloading the ZIP

Download the zip at http://github.com/ToJans/NerdBeers/zipball/master . Unzip it at a random location...

Starting the application

Boot up Visual Studio 2010 (Web Express or better), and open the file src/Org.NerdBeers.sln. Press F5, and you should be ready to go !!!

Project structure:

  • Tools
    • SqlCeToolBox => A tool to create/edit SqlCe databases (sdf files) and generate export sql scripts.
    • Machine.Specifications => A tool to create some executable specifications (think BDD/TDD)
    • AutoTest.Net => A tool that automatically runs tests once you save a file
  • src
    • Dependencies => A folder containing all the compiled dlls from the projects NerdBeers depends on
    • Org.NerdBeers => The solution file can be found here
      • Org.NerdBeers.Specs => The specs for Org.NerdBeers
      • Org.NerdBeers.Web => The application project
      • BuildNerdDb.sql => The SQL to build the database and generate some testdata (not needed if you use the included SQLCE database)

Remarks regarding the code

If you would like to verify/extend the functionality using the tests, I would suggest you to use the included AutoTest.Net. Just doubleclick AutoTest.Winforms, select the presented folder, and leave the window open. Every time you edit a file in your src folder, the specs project will automatically compile and be run. If you get a failing test, just click it and you will see the details.

Currently the code is still a bit of a mess, but I am opting for the pragmatic/lean approach here:

Quote: ** "If you’re not embarrassed when you ship your first version you waited too long!! ** ( Source )

Deploying to http://www.appharbor.com

When deploying to appharbor.com, create an account, follow their instructions, and create a Sql Server database, named NerdBeers. The Web.Config contains an empty connectionstring named NerdBeers; AppHarbor will fill this in automatically upon deploy.

In the app, I simply check wheter the NerdDb connection string is empty; if it is, I use the local SqlCE database : App_data\nerdbeers.sdf, if not, I use the connectionstring and connect to the appharbor instance. Also, do not forget to connect using a sql server tool to the appharbor sql instance, and run the file src/Org.NerdBeers/BuildNerdDb.sql