Skip to content

Tour of Code

Sam Slate edited this page Jul 22, 2016 · 1 revision

Welcome to a tour of the code! Below is an explanation of the file structure of the website and how to find what you need on the Github repository.

#Branches

There are five branches currently but the only one that really matters is develop. The latest version of the platform code lives here. This is the main development branch where all the changes are being applied.

#develop

Within the develop branch there are several files and folders:

###data

Contains data on concessions that was gathered from http://portals.flexicadastre.com/Namibia/. This is only part of the data on the website and is linked with the company data stored in the CartoDB database.

###mockups

Contains the mockups (definition here) for the site.

###public

Contains the css, fonts, and js folders.

  • css: contains the styling files for the front-end
  • fonts: contains icons and fonts for the front-end
  • js: contains helper files that process data on the front-end. display-concessions-map.js is used to process the JSON file into a visual map using the CartoDB API.

###views

Contains the pages and partials folders, which contain all of the front-end files (in html and javascript) for displaying data on the webpages.

  • pages: contains the main page (home page)
  • partials: contains the rest of the pages

###wiki

Contains the files used in the wiki, including a folder for images.

###.gitignore

Specifies intentionally untracked files that Git should ignore.

###README.md

Contains information about the current state of the code and how to contribute.

###data-service.js

Pulls all the data from the CartoDB backend and writes it to a JSON file, which is then used to feed the website company data, license data, and the geo referenced data so that it can create the maps. It creates a file called GeoData.json.

###package.json

Contains descriptions for the JSON file (not very important).

###server.js

Initializes the webserver (based on the node.js framework). The main configuration here is the port numbers which can be changed.