SalsaScript

SalsaScript is a programming language that can be deployed and executed on Salsa servers. It can be used to build customizations on top of the existing Salsa system, to build custom websites, or even completely custom tools that you can make available for lots of companies and organizations.

What does the language look like?

SalsaScript is a standard implementation of Javascript with methods for database access, emailing, user information, and web page creation. While it uses the Javascript language (more technically, ECMAScript), this is Javascript that is NOT run in the web browser. It is more similar to PHP or Python, in that it is executed prior to being delivered to a browser.

How is it deployed?

SalsaScript is written in files with a ".sjs" postfix, for Salsa Javascript, or Serverside Javascript. These files are created and developed locally, in whatever development environment you like (vim, TextWrangler, Eclipse, etc), and then copied up to the Salsa repository to be run. To speed development, you can mount the Salsa repository locally, or access it via Subversion.

What is a SalsaScript package?

A 'package' is a directory of SalsaScript files, images, CSS, Javascript files, etc. that comprise a single set of functions. A single website is a good example of a package, as is an online Petition tool. When you create a package, you have the option of deploying that package on SalsaCommons for organizations, individuals, and companies to purchase and deploy. Packages can also be integrated into the Salsa Headquarters.

Can multiple groups use the same package?

The Salsa infrastructure is designed to execute SalsaScript within the scope of an organization.

Why would you use SalsaScript instead of PHP/Perl/Java/etc?

What's a 'Node'?

Salsa is a network of organizations structured through Nodes, which are sets of companies and organizations with common attributes or missions. SalsaScript code is deployed across the whole network, not to any given node. To access or login as an organization to use the code, you must login specifically to the node that organization is on.

What can be built with SalsaScript?

SalsaScript is a full programming language built for the web. As such, it is good for building websites, web tools, CRM's, Content Management Systems, custom API's, RSS feeds, etc.

Is SalsaScript a CMS?

SalsaScript maps closer to PHP, or Python, than to a predefined way of putting content up by non-techies. There are, however, many CMS's that are built on top of SalsaScript, including Website in a Box (designed for political candidates), and others.

Is SalsaScript a CRM?

SalsaScript was built to expand and enhance the Salsa platform, which has been called a CRM. Salsa is primarily an efficient and effective way of organizing online, and SalsaScript is the language it's built on.