2014 m. liepos 3 d., ketvirtadienis

AwareUnit - Save some time

What ?

AwareUnit is a platform which automates project setup process, makes it much easier to maintain, customise, extend multiple created projects and embraces continuous delivery.
AwareUnit saves time for developer which then can be dedicate to focus on applications domain, in other words focus on custom features.

Why ?

I have started to work on AwareUnit because I wanted to streamline the process of how I will manage my freelance projects. I needed an efficient solution that would allow me to deliver as much projects as possible without compromising quality and still offer competitive prices.

Meteor framework by itself is a huge step towards goal set above. Combined with available tools and prebuilt packages you can almost have all of that. But still I think there was some space for improvement and AwareUnit is an attempt to fill that gap and improve efficiency.

How ?

To achieve this I have set the following goals as initial requirements for such platform:
  • I want to automate everything what makes sense and could be automated 
  • I want to allow my clients be able to do as much as possible without my intervention 
  • I want that designer could work totally independent from me, be able to work directly with the client and that produced work could be integrated in project without my intervention 
  • I want to be able to maintain multiple projects so that changes would be made only once and then would just cascade down to the rest of the projects 
  • I want to be able to host projects on any hosting provider 
  • I want that code changes would be automatically deployed but only if selected so (Continuously delivery) 
  • I want to be able to make changes without setting up the whole development environment 
In plain english I was looking forward to the workflow where I would be just working on the code that is custom per client and everything else is either automated, either can be done by client or designer.

Result - real world scenario

Couple of users visits awareunit.com website. Each of them needs a different kind of project. User One wants a website where he could present his company. User Two needs a portfolio website. User Three needs a blog. But they all have one common need and that is they all have a custom requirement for their application. May it be a small tweak or a big feature it does not matter, because they know that once project is created they will be able to request me to implement that feature.

So every user by using a simple UI on website selects a blueprint that fits their need and creates a project based on it. In 5 minutes they have a fully working project ready to be used and accessible on url like this http://project_name.somedomain.com.

If user is happy with initial project and does not need any custom thing. I consider project is done. User will use project's CMS to add content and everything else is handled by the platform.

If user needs customisation, then there are two ways it can be done. First one is that client uses his own resources to customise project. Clients has full access to code base and can do whatever they want with it. All changes that are pushed are delivered automatically to live app. If user wants, he can take the project and deploy somewhere else.

Another option is that client uses a dashboard on awareunit.com to request me to do some work. Then we make a contact, clear requirements and I do the work. Client is billed only for the time I spent on implementing that custom feature.

If client needs a custom theme, template for his project, he can go through the same process. Just this time designer will be the one who will do the work. In other post I will explain the solution behind the hood but thing is that all work he does can be integrated in to the project without my intervention. So I waste no time here.

At the end of the day client pays only for the customisation and not for the whole project.

Who should be interested in AwareUnit

If you have an idea that is related to web and you will be building a prototype for it, then this is something that will save you time. You will have a solid base to start with and Meteor is one of the best frameworks when it comes to prototyping. So startups should check it out.

If you have no technical knowledge but you need to create a web application, then this is a place to do that. In 3 simple steps you will have your application up and running.

If you are Meteor developer and you want to save some time, then this will do the trick.

If you are web designer who knows HTML, CSS and a little of Handlebars template engine, this is a place where you can not only distribute your HTML templates but also allow users apply those templates straight on their project.


Next step is to make this platform open for developers and designers. Reason being that then we could transform AwareUnit in to marketplace where developers and designers could distribute their work. This would be alternative to marketplaces like "ThemeForest". Difference being that here users would purchase a whole working solution code wise and templates would be applicable straight away. This would be just so much easier.

Another cool feature is that once user creates a project based on your blueprint, you, as developer, have a lead that potentially will convert to some development time. AwareUnit has integrated dashboard that will let you communicate with clients. So essentially AwareUnit could be named as an alternative for projects like "Elance".


There are still a lot of things remaining to be done, in order to achieve all set goals and open it for public use. But as I have a working prototype, that is a prove that it is doable. You can play with it here at http://www.awareunit.com . Any feedback is more than appreciated.