Skip to content
sihorton edited this page Nov 10, 2013 · 2 revisions

Desk Files

Files with a .desk extension will be run by deskshell when you click on them. The files are simple utf-8 text files with a json file format.

Sample .desk file:

{
	"name":"default"  
	,"version":"0.2"
	,"author":"sihorton"
	,"description":"default app shown when you start deskshell"
	,"licence":"MIT"	
 	,"frontend":"chromium-portable"
	,"main":"app.js"
	,"backend":"node"
	,"width":1024
	,"height":500
	,"defaultLocation":"index.htm"
	,"startUri":"start.htm"
	,"appSocket":true
	,"openAppWin":true
	,"exitOnAppWinClose":true
}

Description

The first set of attributes are used to describe your application to the world.

Attribute explanation
name application name
version version of your application. In the future we could add automatic updating based on version numbers.
author your name or organisations name / email
description explanation of what your application does.
licence what licence does the application have.
width width of window in pixels
height height of window in pixels
defaultLocation if you navigate to '/' then default location will be added to find the requested url. e.g. index.htm or index.php etc.
startUri Optional, if set then application will navigate to this url when starting.
appSocket true/false, if true opens a socket that the application front end can send messages from / to. Saves some time if you don't open it but it also prevents messages to the backend from working.
openAppWin true/false, if true opens the application window. Only reason to have false here is if you want to run an application with no user interface window.
exitOnAppWinClose true/false, automatically exits the backend when the application window closes.

Function

The first set of attributes are used to describe your application to the world.

Attribute explanation
frontend what should be used to display the user interface of your application. Currently you can only enter in "chromium" here. Possible values planned for the future will be "user-browser" for default browser and then "appjs" for the appjs implementation.
backend The backend ("Server") part of the application, if the application is simple html then you can enter "none" here, for nodejs enter "node" or "nodejs". In the future it is planned to add many additional backends. There will be a porting guide so if your preferred server language is not available you can write the port yourself!
main The initial backend file used to start the application. For nodejs this will be the initial javascript file to run.

Deskshell includes documentation bundled with it, if you run deskshell the default demo-docs application will open and this has a documentation section. You can also view the documentation without running deskshell at the following url: http://deskshell.org/demo-docs/docs/desk.htm

Clone this wiki locally