Compost is an easy web-based way to grow consensus with your designs. Upload designs and allow your clients to annotate, rate and discuss. Easily revise comps based on feedback and get approval.
Compost is currently in version 0.8beta. Coming-soon features include email notifications, project searching, and an iPhone application.
Compost is free software, released under GPLv3. You have the freedom to:
- use the software for any purpose
- change the software to suit your needs
- share the software with your friends and neighbours
- share the changes you make
Getting Started
You can download the latest version of Compost here. Follow the README instructions to get Compost up and running in seconds.
If you have any suggestions or problems, be sure to drop us a line.
Compost Versus Alternatives
Compost differs from most feedback systems in that it is completely free and open source. Here is a chart that compares some popular feedback systems to Compost.
If you’re handy with PHP, jQuery and Code Igniter we encourage you to become a committer! Help us move Compost forward and give back to the open source community.
To get started, visit the project at Google Code – there you can familiarize yourself with the issues, checkout the source code and browse changes. You will need to be a member of the project to commit any changes – to become a member, send an email to gavin.blair at rtraction.com and I’ll add you as a committer.
If you’re not a coder you can still help out by testing Compost and providing feedback.
Coming Soon
Very soon Compost will have an iPhone app, drag-and-drop design ordering, and email notification options. What features would you like to see in Compost? Leave a comment below or at our feedback site.
When you post an article of any type on the web, it seems almost mandatory that you include “Tweet This!” and “Post to Facebook” links. Of course, you can get plugins that create sharing links automatically for most blog software (Sociable for WordPress (this is what we use); Service Links for Drupal; Sexy Social Bookmark for Blogger; I could go on), and they usually cover more networks than Twitter and Facebook. However, some circumstances require a more do-it-yourself approach.
Adding “Share on Twitter” and “Post to Facebook” functionality to your web application is a snap! In this post you will learn:
-How to prefill a tweet for your user
-How to let your users share a link on Facebook, including page thumbnails and description
-How to harness the power of bit.ly’s API for short URLs and click tracking
Share on Twitter
Use the following code to create a “Share on Twitter” link:
<ahref="http://twitter.com/home?status=Add Sharing to Your Webapps - http://www.rtraction.com/blog/devit/add-sharing-to-your-webapps"target="_blank">Share on Twitter</a>
That was easy! Try replacing your link text with a Twitter button:
<ahref="http://twitter.com/home?status=Add Sharing to Your Webapps -http://www.rtraction.com/blog/devit/add-sharing-to-your-webapps"target="_blank"><imgsrc="shareontwitter.png"alt="Share on Twitter" /></a>
Twitter can’t make it much easier than that! When the user clicks on your button, they are brought to their familiar Twitter timeline, with the next tweet prefilled for them.
Facebook Share Link
Use the following code to create a “Post to Facebook” link:
<ahref="http://facebook.com/sharer.php?u=http://www.rtraction.com/blog/devit/add-sharing-to-your-webapps"target="_blank">Post to Facebook</a>
Too easy! Now replace the text with a nifty Facebook button:
<ahref="http://facebook.com/sharer.php?u=http://www.rtraction.com/blog/devit/add-sharing-to-your-webapps"target="_blank"><imgsrc="posttofacebook.png"alt="Post to Facebook" /></a>
When the user clicks on your “Post to Facebook” button, a new window pops up, prompting them to share the link. The user can optionally update their Facebook status while they are at it.
What about Page Thumbnails?
That looks pretty good, but it could use a little more flair. Facebook attempts to add a thumbnail and a description to your link. Facebook scours your page for <img> tags, and uses those for thumbnail options, in the order that they appear on the page. If you want a screenshot of part of your webapp to be the first choice, you’ll have to put the following code near the top (before any other <img> tags) of your page:
Drupal and WordPress are two essential tools in any web developer’s backpack. Both open source content management systems allow the developer to rapidly design and build fully functional websites, however each has its own benefits for you and your client. Here are six questions to consider when deciding which one to use for a project.
We recently had the opportunity to put a cool visual technique to use: Parallax. According to Wikipedia, Parallax scrolling is a “pseudo-3D technique, [where] background images move by the ‘camera’ slower than foreground images, creating an illusion of depth in a 2D video game and adding to the immersion” [Parallax Scrolling on Wikipedia].
jQuery and the plugin ScrollTo were both used, along with several transparent PNG layers. By making “close” layers scroll faster than “far away” ones, a 3D feel was introduced to the page.
How it Works
For each layer we have a <div class=”layer”> element that has the following CSS properties:
.layer {
height: 100%;
width: 100%;
overflow: hidden;
position: absolute;
top: 0;
}
.layer div {
width: 10000px;
}
Each layer element has a <div> inside of it that has a transparent PNG background image, a forced height (the height of the image), and a really big width (as shown in the snippet above).
If we didn’t have the “overflow: hidden” on the containers, you would see scrollbars on the bottom of the page. Using this CSS property we hide the scrollbars, and later we will use the jQuery plugin ScrollTo to automatically scroll each layer.
For each layer I assign four distances, one for each “slide”. Closer layers have more difference between each distance, and far away layers only move a little. The following table shows the distances for each layer.
Layer
1st slide
2nd slide
3rd Slide
4th Slide
#clouds4
20
100
200
300
#clouds3
20
150
300
450
#clouds2
20
200
400
600
#clouds1
20
250
500
750
#fartrees
20
300
600
900
#neartrees
20
800
1600
2400
When the time comes (the user clicks on the “next slide” arrow), each layer is scrolled:
$("#clouds4").scrollTo(x, 500);
“x” is the distance determined by the table above, depending on what slide we are going to. The second parameter is how many milliseconds the animation will take.
Warning
Internet Explorer (even IE8!) renders transparent PNG’s differently than other browsers, and therefore the animation is a little choppy. To overcome this, I removed all overlapping layers in IE using conditional tags. That means that IE users won’t get the full effect, but the site is still usable, and there is still some parallax animation happening. For IE6 (yes, we still make sure our sites work in that dusty old thing) I replace the transparent PNG images with transparent GIFs.