Projects/Summer of Code/2007/Projects/KOffice collaborative editing: Difference between revisions

From KDE TechBase
 
Line 28: Line 28:
===What will not be done===
===What will not be done===
* Only integration with KWord is planned.
* Only integration with KWord is planned.
* Probably, reach-text communication (different fonts and paragraph
* Probably, rich-text communication (different fonts and paragraph
styles) will not be implemented.
styles) will not be implemented.
* Specific techniques for NAT traversal or UPnP/PMP-enabled firewall/router configuration will not be implemented.
* Specific techniques for NAT traversal or UPnP/PMP-enabled firewall/router configuration will not be implemented.

Latest revision as of 10:52, 25 May 2007

NEW: KOffice -- collaborative editing

Name: Igor Stepin

Mentor: Cyrille Berger

I plan to implement real-time collaborative editing for KWord. This would allow the owner of the document to invite people via IM or other ways to work with him/her on the document. I'm planning implementation of KWord support only (support of other applications will be also implemented, after work on KWord is complete).

What is collaborative editor?

From Wikipedia: A collaborative editor is a software application that allows several people to edit a computer file using different computers. There are two types of collaborative editors, real-time and non-real-time. Real-time collaborative editors allow users to edit the same file at anytime, including editing at the same time. Non-real-time collaborative editors do not allow editing of the same file at the same time. Non-real-time collaborative editors are similar to revision control systems.

Planned functionality

This is the list of collaboration functionality that should be implemented.

  • Publish local documents.
  • Session initiation via IM or zeroconf.
  • Collaborative plain-text editing in a shared document.
  • Possible collaborative rich-text (fonts, styles, etc.) editing in a shared document.
  • Disconnect users.

Project plan

  • Investigate current implementations. Write prototypes for some of them. Evaluate at least libobby, MateEdit, and DrawPile. Choose base for implementation. (1 week)
  • Define draft of interfaces for the collaboration API. Make prototype of UI. Show them to mentor and KOffice developers. (1 week)
  • Write unit tests for API. Configure test environment for KWord (to speed-up testing). (0,5 week)
  • Implementation of main features. Integration with KWord. (3 weeks)
  • Bug fixes and reserved time. (3 weeks)

What will not be done

  • Only integration with KWord is planned.
  • Probably, rich-text communication (different fonts and paragraph

styles) will not be implemented.

  • Specific techniques for NAT traversal or UPnP/PMP-enabled firewall/router configuration will not be implemented.
  • Images, tables and other complex 'objects' in the document will not be supported.

Links

Link to the Google's page of project: http://code.google.com/soc/kde/appinfo.html?csaid=1F1FBA0ECFDF0877

Link to the detailed description: http://www.stepin.name/soc2007/

Link to the project's blog: http://www.stepin.name/category/soc/