With the performance of website and web apps increasingly under the spotlight, picnicc’s arrival is timely. As the site notes, developers using frameworks and plug-ins are often aware they don’t require the entire thing. Picnicc provides a “simple and intuitive API that just happens to solve this very problem”.
.net spoke to Duloz (AD) about web performance, the inspiration behind picnicc and how the project makes customisation easy.
.net: How important is it for developers to ensure their projects have good performance?
AD: It's very important for my own work, and I like the fact that the major frameworks are now becoming customisable. It’s important for me to emphasise how picnicc can help people who'd want to customise their projects for users.
.net: What was the inspiration behind picnicc? Why did you decide to create it?
.net: In a nutshell, what does picnicc do and achieve? What are the big benefits for anyone who uses it?
AD: Picnicc lets you customise anything that can be reached by an HTTP request. The nice thing is you can have a static site and still use picnicc. The project is ‘environment free’. You don't have to be a Node.js user, you don't have to install Ruby Gems, you don't have to open the terminal, and you don't even have to know a programming language. All you have to do, pretty much, is submit an HTML form to the picnicc API. Well, you do also have to understand how picnicc works, which may take a little time, but once you do, you can emulate the Twitter Bootstrap ‘Customize’ page with just two files: one .html file and one .json file!
.net: Are there any standout aspects of the project you're particularly proud of?
AD: I'm quite happy with the builder I created for the HTML5 Boilerplate. It's a demo, but it shows what picnicc can achieve. While building that demo, my main worry was about finding elegant ways to preserve copyright notices for the remote assets people would want to minify. I think picnicc users should be careful about that. You need to be humble and give credit to the libraries you're using!