I have used both of these (Python and HTML5) seperately, however I'm keen to use the full power of Python over the web using HTML5 to draw things and handle the client side of things. I guess I'm looking for avenues to go down in terms of implementation. Here are some things I'd like to do if possible:
Is there an implementation that people can recommend? I.e. would Google App Engine be any good. Django? Pyjamas?
Thanks - apologies if this seems a little vague. I'm asking before trying one path to see if there is a heads-up to save time and effort.
The HTML5 canvas has the potential to become a staple of the web, enjoying ubiquitous browser and platform support in addition to widespread webpage support, as nearly 90% of websites have ported to HTML5.
Nearly all of the HTML5 canvas examples/tutorials use JavaScript.
Yes definitely worth learning. I don't believe any AAA games could ever be created without coding. Canvas is supported in all browsers and gives the users of your website a chance to try out something without fancy installations or crashed applications.
Canvas would be better for faster things and heavy bitmap manipulation (like animation), but will take more code if you want lots of interactivity. I've run a bunch of numbers on HTML DIV-made drawing versus Canvas-made drawing.
The server side is much more developed than the client side in this case. (Rich JS libraries are a newer phenomenon, is all.) Django is an acceptable choice on the server, although I would at least consider Twisted.
My recommendation on the client side:
First choice is paper.js which is a library for manipulating canvas. Excellent performance, allows event binding, rich graphics operations, tutorials are fantastic. Seems to have a very gentle learning curve as well, compared to similar software.
Second choice would be raphael or a similar SVG library. Performance not quite as good as paper.js although it depends a lot on what will be onscreen.
Can you elaborate on what kind of things you will be doing on the client? Number of visible objects, what events will be bound to what objects, types of graphics filters you need, and so on, all inform this choice heavily.
You will probably find yourself fighting to get good graphics performance on the client, so expect to spend a lot of time on that.
Edit: Based on your comments, I think you would find either solution workable, so I would lean toward paper.js only because it's a little more fun, and if you do go somewhere unexpected it will be able to go there with you.
Since your application sounds like it has to do with a lot of charting, I would suggest you check out HighCharts or another charting library, of which there are several, both commercial and non-. HighCharts itself is free for everything except production use in a for-profit application, and reasonably priced otherwise.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With