The Zimbra Social Platform is built on top of ASP.Net 4.5. You will therefore need at least Visual Studio 2010 or Visual Studio 2012 for development. Alternatively Visual Studio Express 2010 and 2012 work fine but should be developed upon locally. We recommend using IIS Express locally or a local install of IIS7+ instead of Visual Studio Web Server.
You must have at least SQL Server 2008 or SQL Server Express 2008. Telligent Currently supports SQL Server 2012 as well, but does not support SQL Server 2005.
- Note that data is not solely stored in the database; it is also stored in the CFS (the file system when developing locally) and the SOLR index (also local on each developer's machine). It needs to be in sync with the database, and it will not be synced if different users are sharing the same database.
- If the Job Scheduler tasks are run on a shared database, it could cause race conditions in the shared data. Therefore, each developer needs to run Job Scheduler on his/her local database.
- Sharing a database for development is generally troublesome for any sort of web development; different developers will overwrite each other or cause side effects to test cases of other developers' work - even if inadvertently. Knowing how all data interacts with each other is difficult when developing against a large third-party solution such as Zimbra Social.
- Our recommendation of development with a local database is not related to the choice of whether to use Visual Studio Web Server or not; it's related to using a local web server and a shared database. When using a local web server, IIS Express or IIS should be used if at all possible.
For these reasons, the recommendation is to use local web servers (e.g., IIS Express or IIS); local databases (SQL Server 2008 is fine), local Job Scheduler installs, and local CFS (note that the default of using the local file system would already imply this).
- Open Visual Studio.
- Go to File> New Project and create a new "ASP.Net Web Application."
- Add a class library project to your web application project, where you write any custom controls and/or code for your website. Depending on what you're doing, you may prefer to make a number of class library projects to better separate your custom extensions.
- Delete the existing files within the project.
- Copy the contents of the /web/ folder (apart from the /bin/ folder) of the web Installer into your web project. We recommend that you paste into the web project through Visual Studio rather than Windows Explorer.
- In Windows Explorer, open the location where you've created your two projects and add a new folder References.
- Into this References folder copy the contents of /web/bin/ in the Web Package download.
- In the Visual Studio Solution Explorer, right-click the on References folder in the Web Project and select Add Reference.
- In the Add References window that opens, select the Browse tab.
- Navigate to the References folder and add references to all the files in this folder. You don't have to add them one by one, you can select all the files at one time and click OK.
- In the Solution Explorer, expand the References folder in your Web Project, right click on System.Web.Routing > properties and set Copy Local to True.
- Open the Add References Window again and click on the Projects tab.
- Add a reference to the class library project(s) you created.
You have now completed setting up the project in which you can extend the Zimbra Social platform. You will now need to build your solution, set up your database, and install search.
At this point you may also want to consider checking your project into a Source Control system so you can track any changes.