<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet type="text/xsl" href="index.xsl" ?>

<doc>
	<intro greets="Hello,">
		<p>You will find a few of my PHP/Flash (mostly) open source programs here.
		Some of them were developed while I was at uni.
		Some of them are also in Polish so a `click and hope` approach may be necessary if you want to
		click through them.</p>
		<p>Don't hesitate to <a id="contact-link" href="#contact">contact me</a>
		(to tell me, for instance, that you particulary liked something you
		found here or otherwise).</p>
		<p>Note: this is a free hosting so it tends to be offline/slow quite often. I do apologize for any
		inconvenience.</p>
	</intro>
	<contact>
		<logInit>Don't forget to write your name and contact</logInit>
		<close>close</close>
		<submit>submit</submit>
		<scrollTop>top of page</scrollTop>
		<contactDisabledMsg>I'm sorry, but due to some preposterous security reasons, you can't send me an email currently.</contactDisabledMsg>
	</contact>
	<apps>
		<app desc="Nerdy Framework (PHP)" anchor="nerdy-framework" language="english">
			<p>
				Ok, you don't have to be a nerd to think up such a nerdy name for a php framework. Or do you?
				Anyway, if you've been wondering how I did some of my previous php apps, well, don't
				wonder no longer. And that's because I'm about to share some of my ideas from writing
				these apps. And yes, that's how that framework of mine thing came about.
			</p>
			<p>
				Stay tuned for the article while I'm updating a `copy and paste` version of my
				<a href="http://kanilson.js.pdg.pl/readme.html#architecture">earlier note on this
				subject</a>. In the meantime, <a href="http://nerdy-framework.js.pdg.pl">go and see a demo</a>
				of a simple, cms like app written in the nerdy framework. And don't forget that
				as usual, there's some <a href="http://code-browser.js.pdg.pl/nerdy-framework">backstage
				stuff available for sightseeing</a> (that is &#8212; THE CODE). Or if you can't be bothered
				clicking the fancy code browser,
				<a href="http://subversion.assembla.com/svn/js_public_code/nerdy_framework"
					class="icon svnCheckoutLink">check it out from svn</a>.
			</p>
		</app>
		<app desc="Online Code Browser beta (JS, PHP)" anchor="online-code-browser" language="english">
			<a href="http://code-browser.js.pdg.pl/">
				<img class="left" title="Run this application" alt="" src="/media/code-browser.jpg" width="360" height="263" />
			</a>
			<p>
				Online Code Browser (beta) displays source code of your application in a colorful
				and nicely formatted manner.
			</p>
			<p>
				Technically speaking: the graphical user interface is based on
				<a href="http://jxlib.org/">JxLib</a>, a quite promising javascript library
				for creating GUIs. Syntax highlighting provides
				<a href="http://qbnz.com/highlighter/">GeSHi</a> (works on the server side).
				The whole thing is binded together by the indispensable MooTools.
				Online Code Browser is still beta and probably will be for
				<span class="strike">a while</span> ever (after all, everlasting betas are what
				web 2.0 is all about, right?).
			</p>
			<p>
				<a href="http://code-browser.js.pdg.pl/">See how Online Code Browser displays
				its own source code</a> or
				<a href="http://subversion.assembla.com/svn/js_public_code/online_code_browser"
					class="icon svnCheckoutLink">get a working copy from my public svn repository</a>.
			</p>
		</app>
		<app desc="Kanilson Portfolio 1.3 (Flash/AS2.0, PHP)" anchor="portfolio-kanilson" language="polish">
			<div class="figure right" style="max-width:260px">
				<a href="http://kanilson.js.pdg.pl">
					<img title="Run this application" alt="Portfolio Kanilson, public part"
						 src="/media/kanilson-portfolio-public.jpg" width="258" height="262" />
				</a>
				<p>Fig. 1: `Kanilson Portfolio`, public part</p>
			</div>
			<p>
				This is my first Flash project (from 2006, Polish language only). A bit outdated now, but it's
				been refactored and tweaked in the meantime. The main purpose was to create an easy to maintain
				portfolio with images and short blog texts.
				`Kanilson Portfolio` consists of two parts: a public (<em>fig. 1</em>) and an
				administrative (private) one (<em>fig. 2</em>).
			</p>
			<p>
				<a href="http://kanilson.js.pdg.pl" class="icon flashLink">The public part</a> was done in Flash (AS 2.0) and HTML
				(or rather DHTML since it is heavily based on JavaScript).
				<a href="http://kanilson.js.pdg.pl/admin" class="icon phpLink">The administrative part</a>
				(note: if you're interested in PHP code <em>only</em>, this is the link for you)
				was done
				using PHP (5.2), MySQL (5.0) database and HTML/CSS/<a href="http://mootools.net/">MooTools JavaScript framework</a> for presentation.
				Technically, it's a classic 3-tier (MVC) architecture
				(<a href="http://kanilson.js.pdg.pl/readme.html#architecture" class="icon textLink">read more about technical stuff</a>)
				with presentation layer completely separated
				from business and domain tiers with <a href="http://phptal.motion-twin.com/">PHPTAL</a>
				template system. As for presentation, it tries to be fancy and modern in some places with
				asynchronous requests (try for example adding some comments to an image).
			</p>
			<p>
				<a href="http://www.amfphp.org/">AMFPHP</a> facilitates communication between Flash and
				the database. The portfolio also makes use of the following JavaScript libraries:
				<a href="http://www.swfupload.org/">SWFUpload</a> (JS/Flash image upload to the server),
				<a href="http://digitarald.de/project/squeezebox/">SqueezeBox</a> (fancy, modal images display),
				<a href="http://www.frequency-decoder.com/2006/09/16/unobtrusive-table-sort-script-revisited">Table Sort</a> (client-side table sorting)
				and a small <a href="http://www.clientcide.com/docs/UI/Modalizer">modalizer plugin
				from Clientcide</a>.
			</p>
			<div class="figure left">
				<a href="http://kanilson.js.pdg.pl/admin">
					<img title="Run this application" alt="Portfolio Kanilson, admin part" src="/media/kanilson-portfolio-private.jpg" width="384" height="250" />
				</a>
				<p>Fig. 2: `Kanilson Portfolio`, admin part</p>
			</div>
			<p>
				Since this application is for testing purposes only (it's more of a playground really),
				you are free to access any part of it and play with it whatever way you wish (but I'd
				rather you didn't delete all the images and other stuff...). Access to the
				<a href="http://kanilson.js.pdg.pl/admin" class="icon phpLink">administrative part</a>:
				<em>admin/admin</em>.
			</p>
			<p>
				Tested on a PC in IE7, Firefox 2 and 3, Opera 9.6 and Google Chrome 1.0 (Flash Player 9 and 10).
				<a href="/srcs/kanilson-1.3.0-src.zip" class="icon sourceLink">Source code of the entire application is available</a> (1.2MB) though
				it's not completely in English (but mostly).
				You can also <a href="http://code-browser.js.pdg.pl/kanilson-1.3.0"
					class="icon browseCodeLink">browse the source code online</a>.
			</p>
		</app>
		<app desc="E-learning application (Flash/AS2.0)" anchor="e-learning-app" language="polish">
			<a href="http://e-learn.js.pdg.pl">
				<img class="right" title="Run this application" alt="E-learning application" src="/media/e-learn.jpg" width="333" height="250" />
			</a>
			<p>
				Simple, entirely Flash based, quickly programmed (a so-called `night programming` or
				`ambitious but rubbish` style often used by students; that's right, no source code available)
				e-learning application. Learn how to use various ports in your laptop (unless you think you
				already know that in which case you can test your knowledge). Inspired by an application from
				<a href="http://www.suddenlysmart.com/examples.htm">Suddenly Smart</a>.
			</p>
			<p>
				<a href="http://e-learn.js.pdg.pl">Run this application</a> (Polish language only).
			</p>
		</app>
		<app desc="Planets (Flash/AS2.0)" anchor="planets" language="english">
			<a href="http://planety.js.pdg.pl/en">
				<img style="margin-bottom:20px" class="left" title="Run this application" alt="Planets" src="/media/planets.jpg" width="329" height="251" />
			</a>
			<p>
				Numerical computing in Flash. This application simulates the motion of Earth and Mars around the Sun
				(but I don't think NASA would be eager to use it for their space missions).
				Initially developed in Matlab.
			</p>
			<p>
				<a href="http://planety.js.pdg.pl/en">Run this application</a>.
			</p>
		</app>
		<app desc="A Pretty Sleek Gallery 1.2 (Flash/AS2.0)" anchor="a-pretty-sleek-gallery" language="english">
			<a href="http://js.pdg.pl/pretty-sleek-gallery/">
				<img class="right" title="Run this application" alt="A Pretty Sleek Gallery" src="/media/pretty-sleek-gallery.jpg" width="330" height="298" />
			</a>
			<p>
				It started off with some tweening experiments and turned into a little gallery.
				Also based on MooTools.
			</p>
			<p>
				<a href="http://js.pdg.pl/pretty-sleek-gallery/">Try it out!</a>.
			</p>
			<p>
				You can find more information in this
				<a href="http://www.actionscript.org/forums/showthread.php3?t=186900">actionscript.org forum</a>
				(where I drop a line occasionally).
			</p>
			<p>
				<a href="/srcs/a-pretty-sleek-gallery-1.2-src.zip" class="icon sourceLink">Source code (AS2, CS3)</a> (with images, 14MB).<br />
				<a href="/srcs/a-pretty-sleek-gallery-1.2-src-no-images.zip" class="icon sourceLink">Source code (AS2, CS3)</a> (without images, 0.5MB).<br />
				<a href="http://code-browser.js.pdg.pl/a-pretty-sleek-gallery-1.2"
					class="icon browseCodeLink">Browse the source code online</a>.
			</p>
			<p>
				<a href="http://js.pdg.pl/pretty-sleek-gallery/readme.html" class="icon textLink">Read this manual</a> before downloading the source code.
			</p>
		</app>
		<app desc="Cannon (Flash/AS2.0)" anchor="cannon" language="english">
			<a href="http://js.pdg.pl/cannon/">
				<img class="left" title="Run this application" alt="Cannon Game" src="/media/cannon.jpg" width="330" height="278" />
			</a>
			<p>
				A very simple and most certainly not finished cannon shooting game. Written in
				several hours. Some basic physics applied.
			</p>
			<p>
				Use arrow keys to control the cannon or the plane and press space to fire.
			</p>
			<p>
				<a href="/srcs/cannon-0.1-src.zip" class="icon sourceLink">Source code (AS2, CS3)</a> (13KB) available for free modifications.
				<a href="http://code-browser.js.pdg.pl/cannon-0.1"
					class="icon browseCodeLink">Browse the source code online</a>.
			</p>
		</app>
	</apps>
</doc>