transparent

MindTouch


DekiWiki Collaboration Software Customization MindTouch Deki

Deki is the most sophisticated wiki-based collaboration tool on the market and offers a robust set of text, file, social, and web features for internal processes and externally-facing communities. Aaron Fulkerson, MindTouch CEO, and Steve Bjorg, MindTouch CTO and former Microsoft researcher created Deki to significantly enhance the usability and features offered by MediaWiki, the codebase best known for Wikipedia. MindTouch implemented HTTP extension services made accessible through a rich text editor to call additional components created by MindTouch and other third parties. Deki relies on a robust, open-source codebase and uses Dekiscript, REST API, and extensions to integrate components such as streaming media, SilverLight, Google Maps, Blogs, News, Yahoo search, and many others.

As a MindTouch partner, Fairway provides leading Deki experts who can recommend and develop custom solutions based on specific business needs to:

  • increase productivity,
  • encourage collaboration, and
  • improve communication.
NCSBN.org NCSBN Logo

The National Council of State Boards of Nursing (NCSBN) provides an organization through which boards of nursing act and counsel together on matters of common interest and concern affecting the public health, safety, and welfare, including the development of licensing examinations in nursing.

About 150 nurses and nursing executives in NCSBN use the DotNetNuke content management system to access information online. NCSBN also wanted to use DekiWiki's advanced collaboration tools and to integrate with third party networking sites but did not want to force users to log into each new system separately.

DotNetNuke Logo

MindTouch referred NCSBN to Fairway to implement the single sign-on solution. Fairway’s developer received requirements from NCSBN and over three months worked easily with NCSBN’s project manager, technical lead, IT system administrator, and senior developer. Team members submitted additional functionality requests in weekly and bi-weekly status updates that took place over the phone while Fairway worked entirely off-site.

Focusing on the middle tier of Deki, Fairway used the Deki-specific REST API and DotNetNuke Scheduler extension to synchronize windows profiles hourly from DotNetNuke to Deki. This allowed DotNetNuke, which authenticates against the Windows Active Directory, to administer and store the users and groups then link to Deki. A hidden module in DotNetNuke hits Deki’s login page, and Deki responds with an authentication token stored in a cookie that’s shared across both domains.

One of the main technical challenges was to map DotNetNuke’s roles to Deki’s groups. While Deki does employ both roles and groups, Fairway determined that DotNetNuke’s roles are more closely related to Deki’s groups. Fairway auto-mapped the permission levels between the two systems and set the default DotNetNuke role to be quickly managed in the configuration file.

Unit testing and mocking allowed Fairway to verify all user and role scenarios prior to release. And no source Deki code was modified, which means NCSBN can maintain their customizations and take advantage of all Deki upgrades without any additional work.

While Deki uses a MySQL backend, DotNetNuke uses SQL Server. Both of these systems are on entirely different networks but are able to communicate seamlessly. The following technologies and tools were used to implement this solution:

  • C#
  • Visual Studio 2005
  • Visual Source Safe 2005
  • Trac Defect Tracker
  • Wiki