Progress on Snap! C++

Feeling like I need to write a note about the progress on the project.

If you have been around a little bit, you may have noticed that we added Projects on the website. The tarballs are actually available from (which offers much bigger pipes for download!)

As we are moving forward, we are nearing a point were our basic installation will be available. We'll offer Snap! v0.1 once we get a full set of source packages that install properly in our Debian environment (we're actually using Ubuntu.)

At this point, we can receive requests from Apache and spit out a page, but we need to drive the page using data saved in our Cassandra environment. This is what we're doing right now. Once that is in place, we'll have accomplish our first goal. At that point we probably will start sharing our work.

Next will be to make the core complete. That means having all the features marked as [core] features available in the system. That is the second goal. Once the core is available, we can start creating real websites, although a little limited, that will work.

As I progress on the system, I can see that Qt is really good. Many of the features are programmed using Qt instead of re-writing our own code. Especially, Qt can be used to access HTTP and that is very valuable to many reasons, including the possibility to create snapshots of website pages (something useful to represent a website along its name.)



Re: Progress on Snap! C++

Hi Daniel,

I would be delighted to have some help with Snap! C++. 8-)

I'm not too sure were we could start. The project is pretty big already so I suppose I could get an svn or git on and then you would gain access to all the source code.

There 2 main parts: the projects that are already available here (all of them except Snap C++ itself) and then there is snap which makes use of most of those projects and handles the Apache request via a CGI "script" (the CGI is written in C++ as well and sends the data to the Snap C++ server which allows us to have any number of Snap servers--in case your website grows you can add such servers to make sure no speed issue start to appear.)

You can contact me at this address alexis [at] m2osw <dot> com.


Progress on Snap! C++


First of all, I'd like to excuse for my bad english, I'm spanish and my english could not be good enough for a normal conversation, but it is good enough to understand all the technical concepts exposed in that website.

I'm a software developer and Drupal lover (even when makes me mad ;) and I'm maintaining some projects with Drupal. One of those projects is high performance so I experienced some of Drupal problems that you exposed here (for example, when using a lot of views in a page). We solved some of those problems by using memcached and implementing specific views filters, but when you are under a lot of traffic it's just not enough.

That's why I started to think how should Drupal work to be the perfect high performance CMS and my conclusions were close to yours, but it wasn't possible for me to start a development like that by myself (and with my enterprise it was harder). So, after reading your notes, I think that Snap! is a fantastic project.

I'm waiting anxiously for the day that the basic installation is available, so I can start to collaborate with the project. I also want you to know that I'd love to help you moving the development forward to basic installation. That would be great :).

I have some experience with Cassandra (in a low level) and I have a lot of experience with C++ and with much of concepts that we need for that project. I'm also a GNU/Linux user (I usually work with Gentoo, CentOS and OpenELEC and I'm familiar with a lot of more distros).

If you think that my help could be useful or you need more details, you can contact me with my e-mail address. I would only work on the project in my spare time so I'm not asking for a job or something like that (just to make itn clear :P) and I'm sure that I can help you for a faster development since I can enjoy some spare time most of the days.

Thank you for your time,
Regards, Daniel.

Snap! Websites
An Open Source CMS System in C++

Contact Us Directly