Files
EWF/Projects.md
2012-07-31 00:46:23 -07:00

5.8 KiB
Raw Blame History

This page lists potential projects on EWF, this is open for contribution. If you are a student, don't hesitate to pick one, or even suggest a new project, or a project being a merge of several, in any case, you will get close support from EWF's team.


Study/Analysis/Documentation

Evaluate EWF according to the following constraints ...

Road to Hypermedia API

Build a video to demonstrate how an Hypermedia API works, and how to build it using EWF

  • Suggested by Javier
  • (maybe based on our graphviz example) or and extension to RestBucksCRUD

Works related to EWF / framework / tools

Improve EWF

  • Suggested by Jocelyn
  • Improve encoding support Better MIME handler
  • Support for configuration
  • Ready to use logging facilities
  • Smart handler for HEAD or similar
  • Adding component to ease the caching functionalities
  • Adding Session support
  • URL rewriting ?
  • Mass testing
  • ...

Eiffel Web Nino

  • Suggested by Javier & Jocelyn
  • Implement persistent connection
  • Complete implementation of Eiffel Web Nino using pool of threads
  • Complete migration of Eiffel Web Nino to SCOOP
  • Improve Nino to become a real solution to host any web services/sites
  • ...

New EWF connectors

  • Suggested by Jocelyn & Javier
  • LightHTTP connector for EWF
  • nginx connector for EWF
  • ...

Concurrenty and EWF

  • Suggested by Jocelyn
  • Make sure EWF is compliant with concurrency, provide example

Design and build something like Ruby on Rails or Grails

  • Suggested by Javier
  • i.e a conventional MVC to create Web Sites
  • Could be useful even if this is not the taste of everyone

Provide a Websocket implementation


Usage of EWF

HAL browser

Collection-JSON browser

Build a simple CMS with EWF

  • Suggested by Jocelyn
  • Build a simple CMS website with EWF
  • features:
    • user management (register, login, lost password -> send email)
    • page editing
    • blog
    • template / theme
    • persistency / storage / ...
    • extension at compilation time
  • The result should be used by any user to build his own CMS, and extend it easily.

Build P2P connector

  • Suggested by Jocelyn
  • Imagine you want to publish a website running on your machine (behing firewall). One would need to initiate the connection via a public website, this is common for P2P software such as remote assistance (i.e: join.me, teamviewer, showmypc, ...)

Libraries

Hypermedia API library to work with XHTML

Add support for Mediatype such as RSS, ATOM, ...

  • Suggested by Jocelyn
  • Being able to generate, and also consume RSS, ATOM, ...
  • Suggested by Jocelyn
  • OAuth: consumer and provider
  • OpenID
  • Google Connect
  • Facebook Connect
  • ...

Design a state machine to serve response

  • Suggested by Jocelyn
  • example: multipage web form

library: Template engine

library: Wikitext, markdown parser and renderer

  • Suggested by Jocelyn
  • Support reading of wikitext, and markdown, and provide HTML rendering
  • extension: render wikitext and markdown into Vision2 widget (not related to EWF, but could be useful to build editor)

library: Web component to build HTML5 widget

  • Suggested by Jocelyn
  • Build set of Eiffel component to ease development of websites
    • table widget (with sorting ...)
    • suggestive typing widget
    • tab ...
    • WYSIWYG textarea widget (could reuse existing JS solution ...)
    • ...

Clients

Libraries: Reusable Client Design based on J.Moore Presentation

Create a Client Cache based on Apache commons Client Cache.

Add SSL support to Eiffel Net

  • Suggested by Jocelyn
  • Currently Eiffel Net does not provide any support to SSL (thus no HTTPS). For now Eiffel application often use the Eiffel cURL wrapper, but it would be more convenient to use directly Eiffel Net.
  • Suggested by Jocelyn & Javier
  • Requirement: OAuth client eiffel component
  • Google Discovery APIs
  • Twitter
  • Facebook
  • Github
  • Flickr
  • ... etc
  • This should reuse and improve the "http_client" provided by EWF. Eventually also write the EiffelNet implementation to be independant from cURL

Feel free to add new idea below this line