-
Notifications
You must be signed in to change notification settings - Fork 384
2.0 goals
gregwebs edited this page Feb 17, 2012
·
10 revisions
These haven't actually been formally discussed yet. Just Greg Weber's brainstorm.
Widgets are actually one of the slowest parts of Yesod, and there is probably a lot of potential to optimize the code. However, this can only take us so far - we need an easy way to cache widget content in memory rather than having to continually regenerate it. This entire issue revolves around smartly recognizing when the cache needs to expire. Hopefully Haskell's purity can make cache expiring a little easier.
- General benchmarking & profiling. We have really only benchmarked requests/second for a simple response and worked on making that path is well optimized.
- Combining static assets as mentioned below.
- sockjs mentioned below makes communicating with the client side faster
1.0 is a great server-side framework. We have the basics for help with the client side with widgets and support for organizing and minifying javascript/css, but we need to take this further.
- technique for combining & minimizing static assets. We do this for your js/css templates, but not for existing static files.
- integration with responsive design principles. We are already getting some integration with Bootstrap, it seems like a decent default. Have the ability to automatically serve properly sized images (maybe pre-cache different sizes, maybe cache different sizes after generating them). If we go the Bootstrap route we probably need integration with LESS
- wai-sockjs for a backwards-compatible, high-level websockets interface.
- integration with Javascript. This could mean writing JS in Haskell. It could mean automatically generating backbone.js model code, automatically updating view code with knockout.js, or FRP JS code with flapjax.
- Simple & safe raw query support.
- Yesod middleware
- A more official library/plugin API
- Any other ideas?
See Wish list