The Haxe Web App

419 views
Skip to first unread message

Sergio Veg

unread,
Oct 5, 2014, 2:20:53 PM10/5/14
to haxe...@googlegroups.com
I think that Haxe has huge unused potential in web development. What potential advantages haxe has over competitors? 

1) Same strictly typed language on client and on server.
2) Ability to run on cheapest hosts (php) and then upgrade to something better. (theoretically possible NodeJS, Java Servlets and even C++ CGI)
3) Macroses, while dangerous allow frameworks to be more concise.

and others...

I think to move Haxe forward in web development we need a big hit web application. Ideally we all will use it on everyday basis. 

So what is your idea of this application?

I'll start with offering my opinion:

I think we need a simple Wordpress like CMS, with plugins but without comments/blogs in basic configuration. A lot of sites use Wordpress this way.
I think it can be done in ufront, be distributed basically for php based hosts and the advantage for end user will be the possibility to scale site to other platforms and I think basic functionality must be simpler.

Let's discusses in this thread what web application[s] we need and when we'll decide we'll open a separate thread[s] 

Ian Harrigan

unread,
Oct 5, 2014, 2:32:44 PM10/5/14
to haxe...@googlegroups.com
I agree 100%... Ive been playing around with prototyping a portlet based system based ontop of uFront (something like a cutdown Liferay in haxe). uFront itself is excellent... It took me a little while to work it out, but the haxe.org website source on github helped hugely. The idea would be that you would have pages and just drop portlets onto them. I think that the code for the portlets would have to scripted (unless anyone else knows a decent way of adding compiled modularity). The idea would be, like Liferay, that you drop a zip or whatever into a running server and that would then be available as a portlet you can drop and position on pages.

This has nothing (at all) to do with haxeui, but having a HaxePortal (or whatever) would be absolutely brilliant. If and when i get more time i might look into it even further.... At the present ive only really established that it is possible in a demo project. My main goal (if that would ever happen), would be to rewrite the haxeui.org site and have it as a portal, where all the elements are portlets. Again, time permitting.

Anyways, just wanted to +1 it.

Cheers,
Ian

Pier Bover

unread,
Oct 5, 2014, 2:48:35 PM10/5/14
to haxe...@googlegroups.com
How is Haxe to PHP workflow? Do you have to upload all your PHP files to the server on every update? It seems ok for local development, but not for a remote server.

What about Neko? Is mod_neko out of the question?

--
To post to this group haxe...@googlegroups.com
http://groups.google.com/group/haxelang?hl=en
---
You received this message because you are subscribed to the Google Groups "Haxe" group.
For more options, visit https://groups.google.com/d/optout.



--
Pier Bover
y...@pierbover.com

Sergio Veg

unread,
Oct 5, 2014, 2:55:11 PM10/5/14
to haxe...@googlegroups.com, y...@pierbover.com
I think that the best way will be to develop for neko target on localhost, then when all the functionality works to compile to PHP and upload to the server.

Rudy G

unread,
Oct 5, 2014, 3:30:33 PM10/5/14
to haxe...@googlegroups.com, y...@pierbover.com
This application could help a lot, and could help getting some web agencies to switch to Haxe from WordPress and other CMS.


> What about Neko? Is mod_neko out of the question?

I prefer using mod_neko, but you can't use it on cheap php hosts.
Targeting PHP by default while allowing to switch to neko would be the best approach here, imho. This has to be available to as many as possible.

Sam MacPherson

unread,
Oct 5, 2014, 7:48:05 PM10/5/14
to haxe...@googlegroups.com
I agree with this. My company's website - https://www.sandboxd.com/ is entirely built in Haxe specifically with my https://github.com/Blank101/haxe-dom library. Haxe has been amazing for things such as complete re-use of server/client code. Deep linking with server-side construction of all web pages. Every navigation after the first is using AJAX with no page reload AKA single page app.

Sven Bergström

unread,
Oct 6, 2014, 5:13:56 AM10/6/14
to haxe...@googlegroups.com
With official nodejs haxe externs on the haxefoundation github now I think that is also where a lot of web apps are made.
I write all my apps and services in node where I can.  To do that in haxe with the node power is a boon.

Axel Huizinga

unread,
Oct 6, 2014, 5:54:29 AM10/6/14
to haxe...@googlegroups.com

Am 06.10.2014 11:13, schrieb Sven Bergström:
With official nodejs haxe externs on the haxefoundation github now I think that is also where a lot of web apps are made.
I write all my apps and services in node where I can.  To do that in haxe with the node power is a boon.

Love that too - however there is still one piece missing - mysql support from node is considerably slower than with php - not
yet really production ready for a web app with many concurrent users I fear.

On Sunday, October 5, 2014 9:18:05 PM UTC-2:30, Sam MacPherson wrote:
I agree with this. My company's website - https://www.sandboxd.com/ is entirely built in Haxe specifically with my https://github.com/Blank101/haxe-dom library. Haxe has been amazing for things such as complete re-use of server/client code. Deep linking with server-side construction of all web pages. Every navigation after the first is using AJAX with no page reload AKA single page app.

On Sunday, 5 October 2014 14:20:53 UTC-4, Sergio Veg wrote:
I think that Haxe has huge unused potential in web development. What potential advantages haxe has over competitors? 

1) Same strictly typed language on client and on server.
2) Ability to run on cheapest hosts (php) and then upgrade to something better. (theoretically possible NodeJS, Java Servlets and even C++ CGI)
3) Macroses, while dangerous allow frameworks to be more concise.

and others...

I think to move Haxe forward in web development we need a big hit web application. Ideally we all will use it on everyday basis. 

So what is your idea of this application?

I'll start with offering my opinion:

I think we need a simple Wordpress like CMS, with plugins but without comments/blogs in basic configuration. A lot of sites use Wordpress this way.
I think it can be done in ufront, be distributed basically for php based hosts and the advantage for end user will be the possibility to scale site to other platforms and I think basic functionality must be simpler.

Let's discusses in this thread what web application[s] we need and when we'll decide we'll open a separate thread[s] 
--

Sergio Veg

unread,
Oct 6, 2014, 9:12:16 AM10/6/14
to haxe...@googlegroups.com
There are a lot of modern platforms for server side development, node js is just one of them, which we should support. But common denominator is still PHP, which is cheaper to host and has the most installed codebase. And haxe is in the great position as being the most popular solution for strict typed php development with additional ability to use the same code for multiple platforms.

Cambiata

unread,
Oct 6, 2014, 11:00:44 AM10/6/14
to haxe...@googlegroups.com

With official nodejs haxe externs on the haxefoundation github now I think that is also where a lot of web apps are made.

Yay! :-)
 
 

Tarwin Stroh-Spijer

unread,
Oct 6, 2014, 12:22:02 PM10/6/14
to haxe...@googlegroups.com
Yep, PHP backend is great. And it writes great code too! It's also very stable - we serve 15mil / month sessions on very minimal hardware. Haxe has been very powerful in being able to optimize compared to pure PHP (mostly in conditional compilation).



Tarwin Stroh-Spijer
_______________________

phone: +1 650 842 0920

Developer at Fanplayr Inc. (Palo Alto)
Original at Touch My Pixel (touchmypixel.com)
_______________________

On Mon, Oct 6, 2014 at 8:00 AM, Cambiata <jona...@gmail.com> wrote:

With official nodejs haxe externs on the haxefoundation github now I think that is also where a lot of web apps are made.

Yay! :-)
 
 

--

Pier Bover

unread,
Oct 6, 2014, 12:25:13 PM10/6/14
to haxe...@googlegroups.com
This sounds great Tarwin!

Can anyone explain to me in general term how is the workflow when targeting php?
Do you have to upload your entire php project to the server or is it possible to just upload the modified php files?
--
Pier Bover
y...@pierbover.com

Tarwin Stroh-Spijer

unread,
Oct 6, 2014, 1:56:47 PM10/6/14
to haxe...@googlegroups.com
We upload the whole "app". Generally when you're working on larger projects I'd suggest we do this anyway. We have deployment scripts that do all the staging, production etc pushes to our Amazon instances.

Regards,



Tarwin Stroh-Spijer
_______________________

phone: +1 650 842 0920

Developer at Fanplayr Inc. (Palo Alto)
Original at Touch My Pixel (touchmypixel.com)
_______________________

Marcelo de Moraes Serpa

unread,
Oct 7, 2014, 3:20:29 AM10/7/14
to Tarwin Stroh-Spijer, haxe...@googlegroups.com
Yep, PHP backend is great. And it writes great code too! It's also very stable - we serve 15mil / month sessions on very minimal hardware. Haxe has been very powerful in being able to optimize compared to pure PHP (mostly in conditional compilation).
Nice! Would you mind sharing what kind of hardware you’re using to handle that amount of load with Haxe-php?

Also, in terms of framework, did you use anything from the (limited) pool of existing Haxe web frameworks or did you guys developed something in house?

By the way, Capistrano is a very powerful deployment tool, and while it’s written in Ruby, you can use it to deploy any kind of web app. The DSL is very powerful and expressive allowing very complex setups with few lines of code. It has support for quick rollbacks too. I’ve been using it for many years, it works great.

-- 
Marcelo

Tarwin Stroh-Spijer

unread,
Oct 7, 2014, 2:12:49 PM10/7/14
to haxe...@googlegroups.com
Hardware
I think our hardware is not much more than $6k (US) a month. Not exactly sure though. It consists of machines in multiple regions behind load balancers. MySQL database, Memcache and SQS. Most machines are PHP (haxe) but some do Java data processing stuff.

Framework
It's based on Poko (https://code.google.com/p/poko/), a very simple router/model/controller/template thingo that we built at Touch My Pixel many years ago. The code here is old, but there really wasn't a lot of changes to the Framework itself. We generally use PHP as our templates. I know if we didn't we may be able to be "cross platform" but the fact that PHP itself is a great "template language" sells me on it. PHP is pretty fast, and what ends up slowing things down always seems to come down to IO (database etc). Liberal use of Memcache and queues (SQS) solves most of these problems (of course there's a lot of work involved in caching, making sure a database doesn't have to be called on each request, but still making sure your data is secure).

Deploy
We use Ant for builds and deployments. I think we have some Capistrano in there was well. And probably some Gulp (I can't remember).

---

Hope that helps.



Tarwin Stroh-Spijer
_______________________

phone: +1 650 842 0920

Developer at Fanplayr Inc. (Palo Alto)
Original at Touch My Pixel (touchmypixel.com)
_______________________

Heinz Hölzer

unread,
Oct 9, 2014, 7:46:28 AM10/9/14
to haxe...@googlegroups.com
I would find something like http://getcockpit.com/ written in Haxe much more appealing than something like wordpress ;).

Sergio Veg

unread,
Oct 9, 2014, 8:55:04 AM10/9/14
to haxe...@googlegroups.com
What are the advantages of cockpit over wordpress?

Heinz Hölzer

unread,
Oct 9, 2014, 9:35:26 AM10/9/14
to haxe...@googlegroups.com
It's a cms for editing and managing of data without dictating which kind of frontend you use. It's API-driven.

Tarwin Stroh-Spijer

unread,
Oct 9, 2014, 3:15:18 PM10/9/14
to haxe...@googlegroups.com
This is pretty damn old, and it currently only runs PHP (haxe2) but it's a purely data driven CMS.


We used it for many different kinds if sites, both HTML and Flash, and sometimes both. It includes a bunch of complex data stuff such as references (drop downs of other data lists) and sub-lists (kind of like the old MS Access sub tables I think). It also includes things such as "post saving SQL commands" or "post saving hscripts" both with things such as row IDs sent through.

It's also integrated with WYSIWYG and (I think more powerful) WYMIWYG (What you mean is what you get) editors. The second forces simple output that includes only Ps or H1s which is useful to not break your site.

It's a mess, but it does work pretty well! There is only a few "front end" commands such as "getPage" but normally we just used SQL in the front-end to grab stuff. To make it super useful a layer of caching would help, but as I said, it works and generally our users found it very easy (once we'd set it up).

Anyway, you're welcome to build on it if you'd like.



Tarwin Stroh-Spijer
_______________________

phone: +1 650 842 0920

Developer at Fanplayr Inc. (Palo Alto)
Original at Touch My Pixel (touchmypixel.com)
_______________________

--

Marcelo de Moraes Serpa

unread,
Oct 9, 2014, 4:49:01 PM10/9/14
to haxe...@googlegroups.com
Tarwin, might worth moving the code to github to make ti easier for people to find / fork / collar, this looks interesting.
-- 
Marcelo

Marcelo de Moraes Serpa

unread,
Oct 9, 2014, 4:49:38 PM10/9/14
to haxe...@googlegroups.com
Btw, does it compile with Haxe 3?
-- 
Marcelo

On October 9, 2014 at 2:15:17 PM, Tarwin Stroh-Spijer (tar...@touchmypixel.com) wrote:

Marcelo de Moraes Serpa

unread,
Oct 9, 2014, 4:52:25 PM10/9/14
to haxe...@googlegroups.com
s/ti/it
s/collar/collab
-- 
Marcelo

Tarwin Stroh-Spijer

unread,
Oct 9, 2014, 6:35:49 PM10/9/14
to haxe...@googlegroups.com
You're very welcome to take it and move it to GitHub. Sadly, haven't used it for quite a while! I think it would be pretty easy to move over to something like UFront as well? The ideas in there I think are actually quite good as a base, probably not the framework itself though haha.

It's New BSD License I think, so it's anyone's. Or at least I have no idea what I'm talking about. I'd be happy to help anyone out who wants to run with it. I could even supply some more interesting full databases so they could work out what it actually does!

I'm guessing it "may" compile to haxe 3, but I still haven't upgraded because I'm stuck on 2.x for work stuff sadly. If there IS interest I can give access for others to check out what it does. Oh, actually there is this video made like 5 years ago: https://vimeo.com/7428887 (that's Tony speaking).

Looking at the video I remember it has a bunch of stuff like "libraries" where you can use images from "galleries", or upload files using FTP (videos / audio for example) and then easily reference from CMS.

I also have a hxPHP+Mongo CMS that was build in 2 days, but who's definition files are JSON-like instead. Not as powerful, but still useful for super quick and simple backends.



Tarwin Stroh-Spijer
_______________________

phone: +1 650 842 0920

Developer at Fanplayr Inc. (Palo Alto)
Original at Touch My Pixel (touchmypixel.com)
_______________________

Sergio Veg

unread,
Oct 14, 2014, 7:19:05 AM10/14/14
to haxe...@googlegroups.com
Tarwin, how many people use poko beside yourself? Have you done any promotion for it?

Stephane Le Dorze

unread,
Oct 14, 2014, 8:18:30 AM10/14/14
to haxe...@googlegroups.com
another new & amazing API driven CMS : https://prismic.io/

Tarwin Stroh-Spijer

unread,
Oct 14, 2014, 12:29:43 PM10/14/14
to haxe...@googlegroups.com
No one really. I'm not pushing for it in any way. Just offering it up if someone needs content management.



Tarwin Stroh-Spijer
_______________________

phone: +1 650 842 0920

Developer at Fanplayr Inc. (Palo Alto)
Original at Touch My Pixel (touchmypixel.com)
_______________________

--

Michael Bickel

unread,
Oct 14, 2014, 1:32:10 PM10/14/14
to haxe...@googlegroups.com, tar...@touchmypixel.com
Hiho,

actually, I have been using poko for a website I built like 2 years ago. It was straight forward to get stuff done. Unfortunately it is no longer online but I still got the backups.

- michael

Sergio Veg

unread,
Oct 14, 2014, 2:08:26 PM10/14/14
to haxe...@googlegroups.com, tar...@touchmypixel.com
What about Beluga https://github.com/HaxeBeluga/Beluga has anybody used it? Can it be the Haxe Web App?

Cambiata

unread,
Oct 14, 2014, 2:44:03 PM10/14/14
to haxe...@googlegroups.com, tar...@touchmypixel.com
I would like to add Nicolas Juneau's Harfang (https://github.com/njuneau/Harfang) to the list of basic web frameworks (UFront, Beluga, Poko) - it has some simple but smart macro driven routing/controller stuff.
And with official Haxe NodeJS around the corner, we should soon be able to build upon that - Node Express might be the most used framework.

Tarwin Stroh-Spijer

unread,
Oct 14, 2014, 3:48:19 PM10/14/14
to haxe...@googlegroups.com
I'm not suggesting anyone takes Poko and use it as is, as the framework is quote old and there are better ways to do things.

I do think that the way that Poko CMS works is somewhat unique though and could be useful. We used to be able to make a fully data driven content managed site in a few days with it.

I'd suggest using UFront / NodeJS and then rebuilding the CMS with Angular. The front-end doesn't matter as much.




Tarwin Stroh-Spijer
_______________________

phone: +1 650 842 0920

Developer at Fanplayr Inc. (Palo Alto)
Original at Touch My Pixel (touchmypixel.com)
_______________________

On Tue, Oct 14, 2014 at 11:44 AM, Cambiata <jona...@gmail.com> wrote:
I would like to add Nicolas Juneau's Harfang (https://github.com/njuneau/Harfang) to the list of basic web frameworks (UFront, Beluga, Poko) - it has some simple but smart macro driven routing/controller stuff.
And with official Haxe NodeJS around the corner, we should soon be able to build upon that - Node Express might be the most used framework.

relax2code

unread,
Oct 15, 2014, 12:15:27 AM10/15/14
to haxe...@googlegroups.com
how bout www.haxejs.com  , angular +haxe

Benjamin Dubois

unread,
Oct 15, 2014, 1:51:03 AM10/15/14
to haxe...@googlegroups.com
Nice,

However in the overview page, the link to Dependency Injection is pointing to OOP in wikipedia.

On Wed, Oct 15, 2014 at 6:15 AM, relax2code <funbr...@gmail.com> wrote:
how bout www.haxejs.com  , angular +haxe

--

relax2code

unread,
Oct 15, 2014, 11:08:47 PM10/15/14
to haxe...@googlegroups.com

 well, I found that on twitter  , don't know if the creator is here

Sergio Veg

unread,
Oct 17, 2014, 3:39:39 PM10/17/14
to haxe...@googlegroups.com
So what web application you would like to use? As I wrote before most people use wordpress I think it has more than 50% of the world CMS share. What advantages can we provide to make people switch from Wordpress to our cms? 

Here are my ideas:

1. Internationalization, in wordpress it needs plugins to work and is not very usable, if we'll develop the CMS with built in internationalization (a site with more than one language) we might lure users to our CMS. Also I see lot of Haxe devs from all of the world who might feel the need to create sites in more than one language.

2. A/B testing, it's a very good tool from which everybody can benefit. If our CMS will automatically offer instead of just add changes to A/B test them it will be a great tool and a lot of people would like to use it.

Please tell what you think about this and offer your ideas and what would you use.

Tarwin Stroh-Spijer

unread,
Oct 17, 2014, 3:46:16 PM10/17/14
to haxe...@googlegroups.com
The biggest problem I've found when using Wordpress as a developer is that everything is page / article based. Yes you can do some horrible hacks to get around this, but, well, they're horrible.

Then there's also caching. I've never found a REALLY good cache for Wordpress that works as advertised. Especially once you've gone and hacked the hell out of it to get it to do what you want.



Tarwin Stroh-Spijer
_______________________

phone: +1 650 842 0920

Developer at Fanplayr Inc. (Palo Alto)
Original at Touch My Pixel (touchmypixel.com)
_______________________

--

Confidant

unread,
Oct 18, 2014, 12:28:41 AM10/18/14
to haxe...@googlegroups.com, tar...@touchmypixel.com
I consider myself to be an experienced Joomla developer and have a fair bit of experience with WordPress. Based on my knowledge of what those CMSs got right, these would be my ideas for a Haxe-based web framework:
  1. Strong MVC conventions like Joomla, which makes it easy to install and get running, but very versatile for overriding functions within templates.
  2. True CMS features like built-in user and permissions system, content types, and WYSIWYG editor.
  3. An extensions library as easy to browse as those used in Joomla or WordPress. Must be better than Drupal's offering.
  4. Must have ability to use a PHP/MySQL server so it can compete with PHP-based CMS systems directly.
  5. It looks like using AngularJS externs might end up being the easiest route for strong front-end data binding; perhaps integrating the server-side with that would be wise. At the same time, Haxe has some pretty strong UI libraries now and perhaps we should also think about data binding with them also.
  6. Related to the above point, ability to integrate with OpenFL-based clients or other non-HTML display. I've been finding Joomla's JSON capabilities are useful for that sort of thing.
That's all for now. Ah, 'tis fun to dream!

Axel Huizinga

unread,
Oct 18, 2014, 12:50:23 AM10/18/14
to haxe...@googlegroups.com

Am 17.10.2014 21:45, schrieb Tarwin Stroh-Spijer:
The biggest problem I've found when using Wordpress as a developer is that everything is page / article based. Yes you can do some horrible hacks to get around this, but, well, they're horrible.

Then there's also caching. I've never found a REALLY good cache for Wordpress that works as advertised. Especially once you've gone and hacked the hell out of it to get it to do what you want.


Sure flexible caching options and database access would be a good selling point.


Tarwin Stroh-Spijer
_______________________

phone: +1 650 842 0920

Developer at Fanplayr Inc. (Palo Alto)
Original at Touch My Pixel (touchmypixel.com)
_______________________

On Fri, Oct 17, 2014 at 12:39 PM, Sergio Veg <vegs...@gmail.com> wrote:
So what web application you would like to use? As I wrote before most people use wordpress I think it has more than 50% of the world CMS share. What advantages can we provide to make people switch from Wordpress to our cms? 

Here are my ideas:

1. Internationalization, in wordpress it needs plugins to work and is not very usable, if we'll develop the CMS with built in internationalization (a site with more than one language) we might lure users to our CMS. Also I see lot of Haxe devs from all of the world who might feel the need to create sites in more than one language.
Yes!
This point leads me to another one which seems essential to me:
A better editor written in Haxe able to create and keep nicely formatted content


2. A/B testing, it's a very good tool from which everybody can benefit. If our CMS will automatically offer instead of just add changes to A/B test them it will be a great tool and a lot of people would like to use it.

Please tell what you think about this and offer your ideas and what would you use.
I'd love to see a haxe.remoting based API enabling consistent client/server plugin development.
Reply all
Reply to author
Forward
0 new messages