ISWebKit
Most of you don’t know about this one… I have been working on a PHP framework for about 4 years now. I’ve redesigned the framework many times, but I finally think I got a I final concept. ISWebKit is an Object-Oriented PHP framework, designed to make websites easy to create and maintain. It isn’t state of the art because it’s fit to my liking, but it isn’t weak like some. It has plugin support, and includes major features like a MySQL Account Manager, Dynamic Content Loading, API integration, and Data Flushing.
Dynamic content loading is probably one of the more uncommon, but useful features. Basically, there are 3 folders. apis, content, and templates. APIS contains files that should not be themed, such as AJAX responses. CONTENT contains files, that should automatically be inserted into the template they choose. TEMPLATES, contains the different templates that can be requested by the content. All three are object-oriented files that are incredibly flexible. In the end, it makes website creation very simple. For example, if you request: http://localhost/somePage/and/some/options, it will automatically find the most specific page (ex: /content/somePage/and/index.php.) It includes it, and then creates the page. It passes the complete url split as an array to the page, and the page then returns a BOOL, if it should load or not. This is to keep search listings clean, and the website running fast.
The next best part, is the content flushing. After reading through Yahoo!’s standars, I found some pretty interesting ideas. I now flush my code, after , so the user can start downloading included .js and .css files. This is nice, because some (most) browsers don’t download resources such as scripts and stylesheets at the same time. They also don’t execute JavaScript in parallel. Flushing the content early, gives the browser the opportunity to download the files, while the server is generating and transferring the remaining content. In the end, the whole site just loads a lot quicker.
I’m not sure if I’m going to release ISWebKit in the beginning, since it’s way different than other major frameworks, but i’m considering it. I think it would be a really good way to give my code more functionality, and it will end up better for everybody. If you want to help me with the framework, or have suggestions, contact me [at] ryanp.me.
Moved server to data server.
On Sunday, I was having troubles with my primary server (Which happened to be my only running DNS server.) I decided it would just be best to start clean, so I reinstalled CentOS. Well, in the end, I ended up doing more than that. My primary server is now in a data center, with 99.9999% uptime. It is running a HTTP, DNS for all of my websites, POP, IMAP, and SMTP for my less important websites, Redmine and SVN for SMC, and remote server management software. I also setup a backup server, in case the first one goes down for any reason. I plan on posting tutorials for everything I installed, as it took me a long time the first time.