I think it’s fair to say I love building things on the web. You only have to look at my GitHub profile to see some of the many side projects I’ve built and released over the last seven years of my career. I’ve even written about several of them on this blog. I learned some time ago that I’m the kind of developer that loves to build new things. There is something special about starting with a blank canvas and crafting something which is genuinely useful.
There is a bit of a running joke at Delicious Brains that I tend to exhibit the characteristics of a robot, particularly when it comes to my work rate when building new side projects. The first question I’m always asked is “where do you find the time?”. How to be highly productive is a whole other topic in itself, but in this article I’m going to share some tips on just a small part of the process of building a good side project: how to get a launch site up and running quickly.
For the purposes of this article I’m going to assume that you already have a project that you want to launch, and you’re at the stage of building the launch site for this project (not just a coming soon page but the actual site you will launch with).
Choosing a Site Builder
The first thing to decide is how you want to build your site. To do this you need to answer a few questions:
- What is the purpose of the site? (i.e. to collect leads, sell a product etc.)
- How complex does the site need to be? (i.e. do I need a blog)
- Do I need the site to be dynamic? (i.e. do I need to process forms)
- How do I want to manage the site content? (i.e. do I need a CMS)
The answer to these questions will help you choose which tools you need to build your launch site. But be careful! The choices you make at this stage have long term implications, and you don’t want to spend more time maintaining your site than you do actually building your project. For example, some potential options are outlined below.
If you’re a developer working on a single person project and you only need a simple landing page, then your site could be as simple as a single HTML file. This is very easy to maintain and can be committed to a version control system such as GitHub (you could even use GitHub Pages to host the site). If you don’t mind spending a bit of cash you could even look at using landing page builders such as Leadpages or Unbounce.
Static Site Generator
If your site needs to be a bit more complex but doesn’t need to be dynamic you could look at using a static site generator which converts your templates and content into static HTML files. If you’re looking for static site generator recommendations (as there are lots of them) then I would recommend looking at StaticGen which lists static site generators by language and sorts them by popularity. GitHub’s own Jekyll is a good example of a static site generator.
Simple (flat-file) CMS
If you want the simplicity of a static site generator but need your site to be dynamic, then a good solution might be to use a simple CMS. A “flat-file” CMS is like a regular CMS but it doesn’t need a database to store content (it stores content in “flat-files” instead). Some popular examples of flat-file CMSs include Statamic (not free) and Grav (psst: my latest side project is also a flat-file CMS).
If you foresee your site becoming more complex in its needs, or if you have multiple people who want to manage the content on your site, then going for a full blown CMS might make more sense. WordPress is the obvious choice but there are good alternatives available these days, such as Craft CMS and October CMS. There are even some CMS plugins, such as SeedProd for WordPress, that are specifically designed to help you build landing/coming soon pages. Although I would warn against using a full CMS unless it is absolutely necessary, as you may end up spending more time customizing and maintaining your CMS than actually building your project.
What Would Gilbert Do?
I tend to stick to static site generators and flat-file CMSs as they offer the best of both worlds. Managing your content can be as simple as committing Markdown files to GitHub, they require very little maintenance, and they have less moving parts making them more secure.
Picking a Design
Now that you have decided how you are actually going to build your site, the next thing you need to decide is how you are going to design your site. Again there are a range of options to consider here.
The first option is to just DIY it. Pick a good CSS framework (such as Bootstrap and design the site yourself. With the rise in popularity of good front-end frameworks, the ease with which you can build a good-looking, responsive site by yourself has risen dramatically. One downside to this approach is that it may take longer than some of the other options depending on your skill and experience. Also, by using a popular front-end framework your site may end up looking very similar to many other sites built using the same framework. Although there are themes specifically built for some frameworks, like Bootstrap Themes, to help make your site look less like the default style of the framework.
A very quick way to get a good looking design for your site is to use a theme marketplace such as ThemeForest and HTML5 UP. Most good marketplaces have a range of designs to pick from and will have options from simple HTML templates to full blown CMS themes. Again there is always the chance your site won’t have that unique quality when you use a marketplace theme, but it’s not as obvious as using a popular front-end framework.
If you decided to build your site with an established CMS you may find that there is already a place where you can pick themes designed specifically for that CMS (e.g. the WordPress Theme Directory). For more established CMSs, such as WordPress, there are even entire companies dedicated to selling premium themes for a CMS, such as ArrayThemes and ElegantThemes. You may need to spend a bit more money if you choose to go this route, but the quality in general will be better.
Hire a Designer
The last option, if you have some cash to burn and want something truly unique, is to hire a designer to create a completely custom design for your site. However, this could end up being a huge time (and money) sink and I would tend not to recommend getting a custom design for a site unless it’s a huge project or your project has been established for some time and is growing in popularity.
What Would Gilbert Do?
In the past I’ve usually picked a theme from ThemeForest and then customized it to my needs but sometimes I’ll pick up Bootstrap and give it a go myself.
Crafting the Copy
Now that you have chosen how you are going to build your site and how it is going to be designed you need to actually write the copy for your site and make it work with your chosen design (often easier than it sounds). I often find this is the hardest part of the process and can end up becoming a bit of a slog. If you’re struggling for inspiration, one tip is to have a look at competitors or similar products to see what angle and language they are using (although be careful not to plagiarize other people’s copy).
Below are some things to consider when crafting the copy of your launch site.
Pick a Niche
When trying to get your project in front of the right people it’s important to first consider who those people are and what they might be looking for in your project. The way you might promote your project to developers, for example, is going to be totally different to the way you might promote your project to, say, dog lovers or fitness coaches etc. It’s worth spending time getting your messaging right for your target audience and spending the time picking a niche that you can get some traction in.
I’m not going to cover the whole massive topic of marketing here, but I can recommend Justin Jackson’s “Marketing for Developers” book if you want a good place to get started.
When building your site it’s also worth taking the time to do some basic SEO to make sure your site has the best possible chance of getting ranked by search engines. There are plenty of helpful SEO checklists on the interwebs (here’s one) but I’d recommend taking some time to learn some good SEO practices and apply them to your launch sites.
As with all things, the details matter and there are some things that you really shouldn’t forget when building your launch site.
Install some kind of visitor tracking script (e.g. Google Analytics) so you can measure how much traffic your launch site is getting, see which other sites are sending you referrals and gain some insights into how you can improve your site down the line. This may also help you determine if your project is a success or a failure.
Email marketing is still one of the best ways to communicate with your audience, so it’s important to capture the email addresses of potential users who land on your site. There are many ways to do this but I recommend being as up-front and not-spammy as possible when asking for a user to give you their email. Apps such as MailChimp allow you to build your own email subscription forms and embed them on your site.
Over to You
By now you should have a good idea of your options when it comes to getting a launch site up and running quickly. One thing I’ve found is that over time you get better at making the right decisions based on the project and you get quicker at making it happen.
Sometimes the biggest hurdle to getting a launch site out quickly is ourselves. It’s tempting to get caught in the trap of being a perfectionist. Or worse, being paralyzed because of fear of what people might think and say about your new site. But these mental hurdles are often self-imposed and are never as bad as we expect them to be. Sometimes, in order to “ship it”, you have to accept the fact that it’s not perfect and you can improve it later. What you launch is never your final product.
Do you have any tips for building a launch site for your projects? Know of any services to make building a launch site quick and easy? Let us know in the comments.