Skip to content
This repository has been archived by the owner on Jul 10, 2024. It is now read-only.

Commit

Permalink
Adding gh-pages site
Browse files Browse the repository at this point in the history
  • Loading branch information
karllhughes committed Aug 5, 2017
1 parent f8738bd commit 095cb93
Show file tree
Hide file tree
Showing 20 changed files with 420 additions and 58 deletions.
4 changes: 2 additions & 2 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ source "https://rubygems.org"
# Happy Jekylling!
gem "jekyll", "3.5.1"

# This is the default theme for new Jekyll sites. You may change this to anything you like.
gem "minima", "~> 2.0"
# Theme
gem "jekyll-whiteglass"

# If you want to use GitHub Pages, remove the "gem "jekyll"" above and
# uncomment the line below. To upgrade, run `bundle update github-pages`.
Expand Down
14 changes: 11 additions & 3 deletions Gemfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -17,20 +17,28 @@ GEM
pathutil (~> 0.9)
rouge (~> 1.7)
safe_yaml (~> 1.0)
jekyll-archives (2.1.1)
jekyll (>= 2.4)
jekyll-feed (0.9.2)
jekyll (~> 3.3)
jekyll-paginate (1.1.0)
jekyll-sass-converter (1.5.0)
sass (~> 3.4)
jekyll-sitemap (1.1.1)
jekyll (~> 3.3)
jekyll-watch (1.5.0)
listen (~> 3.0, < 3.1)
jekyll-whiteglass (1.3.0)
jekyll (~> 3.3)
jekyll-archives (~> 2.1)
jekyll-paginate (~> 1.1)
jekyll-sitemap (~> 1.0)
kramdown (1.14.0)
liquid (4.0.0)
listen (3.0.8)
rb-fsevent (~> 0.9, >= 0.9.4)
rb-inotify (~> 0.9, >= 0.9.7)
mercenary (0.3.6)
minima (2.1.1)
jekyll (~> 3.3)
pathutil (0.14.0)
forwardable-extended (~> 2.6)
public_suffix (2.0.5)
Expand All @@ -51,7 +59,7 @@ PLATFORMS
DEPENDENCIES
jekyll (= 3.5.1)
jekyll-feed (~> 0.6)
minima (~> 2.0)
jekyll-whiteglass
tzinfo-data

BUNDLED WITH
Expand Down
17 changes: 2 additions & 15 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,25 +59,12 @@ If you have ideas that I _haven't_ included or you think you could improve the l

## Contributing

As with any open source project, I welcome contributors. Submit an [issue](https://github.com/karllhughes/side-project-marketing/issues) or [pull request](https://github.com/karllhughes/side-project-marketing/pulls) with your improvements or suggestions. All contributors will be fully credited.

### Contributors

Submit a PR to get your name and link listed here.

- [Karl L. Hughes](https://www.karllhughes.com/)
See [contributing.md](contributing.md).


## Credits

Below are just a few of the blog posts and resources I've found helpful in compiling this list. I'm no marketer, so be sure to check these people out:

- [ProBlogger's 31 Days to Build a Better Blog](https://problogger.com/31dbbb-workbook/)
- [Matt McCaffrey's List of Places to Post Your Startup](https://github.com/mmccaff/PlacesToPostYourStartup/blob/master/README.md)
- [Tomáš Ondrejka's "Ultimate Startup Marketing Checklist"](https://blog.markgrowth.com/the-ultimate-startup-marketing-checklist-31666bd56e41)
- ["The Startup Marketing Checklist" by Elie Mourad](https://medium.com/@Elie_1582/the-startup-marketing-checklist-fb6ac43fc5cb)
- [The Online Marketing Checklist by Visibly Better Marketing](https://trello.com/b/2WfXtByI/the-online-marketing-checklist)
- [An Epic List of 100 Growth Hacks for Startups by Justin McGill](https://www.searchenginejournal.com/epic-list-100-growth-hacks-startups/118690/)
See the [resources page](resources.md).


## Local Development
Expand Down
23 changes: 19 additions & 4 deletions _config.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
title: Side Project Marketing Checklist
title: Side Project Marketing
email: [email protected]
author: Karl Hughes
description: > # this means to ignore newlines until "baseurl:"
A comprehensive, chronologically ordered list of marketing tactics and ideas you can try with
your next side project.
Expand All @@ -9,6 +10,20 @@ github_username: karllhughes/side-project-marketing

# Build settings
markdown: kramdown
theme: minima
plugins:
- jekyll-feed
theme: jekyll-whiteglass
gems:
- jekyll-archives
- jekyll-paginate
- jekyll-sitemap

permalink: /:year/:title/
paginate_path: /posts/:num/
paginate: 5
comments: false

jekyll-archives:
enabled:
- categories
layout: category_archives
permalinks:
category: /categories/:name/
9 changes: 9 additions & 0 deletions _data/navigation.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# If you want to link only specific pages in your header, add the path to the
# pages in order as they should show up.
main:
- title: "The Checklist"
url: /marketing-checklist/
- title: "Blog"
url: /blog/
- title: "GitHub"
url: https://github.com/karllhughes/side-project-marketing
25 changes: 25 additions & 0 deletions _includes/footer_content.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{% assign feed_path = "/feed.xml" %}
{% if site.feed and site.feed.path %}
{% assign feed_path = site.feed.path %}
{% endif %}
<p>
&copy; {{ site.author }} - Powered by <a href="https://jekyllrb.com">Jekyll</a> &amp; <a href="https://github.com/yous/whiteglass">whiteglass</a>
</p>
<p>
<a href="/marketing-checklist">Marketing Checklist</a> |
<a href="mailto:[email protected]">Contact</a> |
<a href="/Contributing">Contributing</a> |
<a href="/resources">Resources</a> |
<a href="{{ feed_path | absolute_url }}">RSS</a>
</p>
<p>
<!-- Watch -->
<a class="github-button" href="https://github.com/karllhughes/side-project-marketing/subscription" data-icon="octicon-eye" data-show-count="true" aria-label="Watch karllhughes/side-project-marketing on GitHub">Watch</a>
<!-- Star -->
<a class="github-button" href="https://github.com/karllhughes/side-project-marketing" data-icon="octicon-star" data-show-count="true" aria-label="Star karllhughes/side-project-marketing on GitHub">Star</a>
<!-- Fork -->
<a class="github-button" href="https://github.com/karllhughes/side-project-marketing/fork" data-icon="octicon-repo-forked" data-show-count="true" aria-label="Fork karllhughes/side-project-marketing on GitHub">Fork</a>
</p>

<!-- Place this tag in your head or just before your close body tag. -->
<script async defer src="https://buttons.github.io/buttons.js"></script>
8 changes: 8 additions & 0 deletions _includes/github_cta.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<div style="margin: 10px 0;">
<!-- Watch. -->
<a class="github-button" href="https://github.com/karllhughes/side-project-marketing/subscription" data-icon="octicon-eye" data-size="large" data-show-count="true" aria-label="Watch karllhughes/side-project-marketing on GitHub">Watch</a>
<!-- Star. -->
<a class="github-button" href="https://github.com/karllhughes/side-project-marketing" data-icon="octicon-star" data-size="large" data-show-count="true" aria-label="Star karllhughes/side-project-marketing on GitHub">Star</a>
<!-- Fork -->
<a class="github-button" href="https://github.com/karllhughes/side-project-marketing/fork" data-icon="octicon-repo-forked" data-size="large" data-show-count="true" aria-label="Fork karllhughes/side-project-marketing on GitHub">Fork</a>
</div>
24 changes: 24 additions & 0 deletions _includes/signup_1.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
<div style="margin: 0 0 20px 0; padding: 20px; background: #e4e4e4; border-bottom: 2px solid #999;">
<h2>Weekly Updates</h2>
<p>If you'd like to be notified of updates and get weekly side project marketing tips delivered to your inbox, sign up for the newsletter:</p>

<!-- Begin MailChimp Signup Form -->
<link href="//cdn-images.mailchimp.com/embedcode/horizontal-slim-10_7.css" rel="stylesheet" type="text/css">
<style type="text/css">
#mc_embed_signup{ clear:left; font-family: Arial, "Helvetica Neue", Helvetica, sans-serif; width:100%;}
#mc_embed_signup_scroll input.email, #mc_embed_signup_scroll input.button {height: 48px;}
.button#mc-embedded-subscribe {background: #1d508f;}
</style>
<div id="mc_embed_signup">
<form action="//karllhughes.us15.list-manage.com/subscribe/post?u=4eba8b205fc13380cd3e6f3fc&amp;id=cc13b917ec" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank" novalidate>
<div id="mc_embed_signup_scroll">

<input type="email" value="" name="EMAIL" class="email" id="mce-EMAIL" placeholder="email address" required>
<!-- real people should not fill this in and expect good things - do not remove this or risk form bot signups-->
<div style="position: absolute; left: -5000px;" aria-hidden="true"><input type="text" name="b_4eba8b205fc13380cd3e6f3fc_cc13b917ec" tabindex="-1" value=""></div>
<div class="clear"><input type="submit" value="Subscribe" name="subscribe" id="mc-embedded-subscribe" class="button"></div>
</div>
</form>
</div>
<!--End mc_embed_signup-->
</div>
24 changes: 24 additions & 0 deletions _layouts/checklist_page.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
layout: default
---
<article class="post">

<header class="post-header">
<h1 class="post-title">{{ page.title | escape }}</h1>
</header>

{% include github_cta.html %}

<div class="post-content">
{{ content }}
</div>

{% if site.comments != false and page.comments != false %}
<div class="post-comments">
{% include custom_comments_provider.html %}
</div>
{% endif %}

</article>

{% include signup_1.html %}
85 changes: 85 additions & 0 deletions _layouts/home.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
---
layout: default
---
<style>
a.btn,.btn {
font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
background: #1d508f;
color: #fff;
margin-right: 1em; /* remove this while use*/
margin-bottom: 1em; /* remove this while use*/
display: inline-block;
outline: none;
*zoom: 1;
text-align: center;
text-decoration: none;
font-weight: 300;
letter-spacing: 1px;
vertical-align: middle;
border: 1px solid;
transition: all 0.2s ease;
box-sizing: border-box;
text-shadow: 0 1px 0 rgba(0,0,0,0.01);
border-radius: 3px;
}
.btn-large {
font-size: 1.0625em;
padding: 0.5625em 1.5em;
line-height: 36px;
}
</style>

<div class="home">

{{ content }}

<p><a href="/marketing-checklist"><img src="/banner.jpg" alt=""></a></p>

{% include github_cta.html %}

<h1>Why?</h1>
<p>
I've been building little software side projects for years, but <a href="{% post_url 2017-08-05-why %}">I've always been terrible at marketing them</a>. I come up with some ideas, forget those ideas, do some random stuff, then lose interest. The goal of this project is to fix that by making marketing as simple as a checklist.
</p>

<p style="text-align: center;">
<a href="/marketing-checklist" class="btn btn-large">View In Browser</a>
<a href="https://raw.githubusercontent.com/karllhughes/side-project-marketing/master/marketing-checklist.md" download="marketing-checklist.md" class="btn btn-large" style="background: #999;">Download Markdown</a>
</p>

<p>Not sure how to use this checklist? <a href="{% post_url 2017-08-05-how-to-use %}">Click here to learn more</a>.</p>

<h1>Contributing</h1>
<p>This project is free and open source, so contributions are welcome! If you have an idea for improving the project, please see the <a href="/contributing">Contributing page</a>.</p>

{% include signup_1.html %}

<h2>Latest Blog Posts</h2>

{% capture site_lang %}{{ site.lang | default: "en" }}{% endcapture %}

<ul class="post-archives">
{% for post in site.posts %}
{% capture post_lang %}{{ post.lang | default: site_lang }}{% endcapture %}
{% capture lang %}{% if post_lang != site_lang %}{{ post_lang }}{% endif %}{% endcapture %}

<li>
<span class="post-meta">{{ post.date | date: "%b %-d, %Y" }}{% if post.categories != empty %} • {% include category_links.html categories=post.categories %}{% endif %}</span>

<h2>
<a class="post-link" href="{{ post.url | relative_url }}"{% if lang != empty %} lang="{{ lang }}"{% endif %}>{{ post.title | escape }}{% if post.external-url %} &rarr;{% endif %}</a>
</h2>

<div class="post-content">
{{ post.excerpt }}
</div>
{% if post.content contains site.excerpt_separator %}
<p class="post-continue">
<a href="{{ post.url | relative_url }}">Read on &rarr;</a>
</p>
{% endif %}
</li>
{% endfor %}
</ul>

</div>
27 changes: 27 additions & 0 deletions _layouts/post.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
---
layout: default
---
<article class="post" itemscope itemtype="http://schema.org/BlogPosting">

<header class="post-header">
{% if page.external-url %}
<h1 class="post-title" itemprop="name headline"><a href="{{ page.external-url }}">{{ page.title | escape }} &rarr;</a></h1>
{% else %}
<h1 class="post-title" itemprop="name headline">{{ page.title | escape }}</h1>
{% endif %}
<p class="post-meta"><time datetime="{{ page.date | date_to_xmlschema }}" itemprop="datePublished">{{ page.date | date: "%b %-d, %Y" }}</time>{% if page.author %} • <span itemprop="author" itemscope itemtype="http://schema.org/Person"><span itemprop="name">{{ page.author }}</span></span>{% endif %}{% if page.categories != empty %} • {% include category_links.html categories=page.categories %}{% endif %}</p>
</header>

<div class="post-content" itemprop="articleBody">
{{ content }}
</div>

{% if site.comments != false and page.comments != false %}
<div class="post-comments" itemprop="comment">
{% include custom_comments_provider.html %}
</div>
{% endif %}

</article>

{% include signup_1.html %}
25 changes: 0 additions & 25 deletions _posts/2017-08-04-welcome-to-jekyll.markdown

This file was deleted.

37 changes: 37 additions & 0 deletions _posts/2017-08-05-how-to-use.markdown
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
---
layout: post
title: "How to Use the Side Project Marketing Checklist"
date: 2017-08-05
author: Karl Hughes
categories:
- tutorials
- use cases
---

I've been trying to make marketing my side projects as simple as checking a few boxes off a list every week. While I realize that this isn't going to make my side projects market leaders, it is a **lean way to build traction and gain users.**

The reason I've failed at marketing in the past is that I made it too complicated, so the [side project marketing checklist](/marketing-checklist) I created aims to fix that. Here's how I've been using it to market my side projects:

## 1. I Copy the [checklist](/marketing-checklist) to a new [Github Gist](https://gist.github.com)

Gists are great because they're just a simple way to store markdown files and you can make checklists in them, share them, and keep a revision history of them. When I started marketing this project, I copied the [raw markdown file of the checklist](https://raw.githubusercontent.com/karllhughes/side-project-marketing/master/marketing-checklist.md) into [a Gist](https://gist.github.com/karllhughes/56153edea80f2c735a0b8f57ff0eba94#file-1-side-project-marketing-checklist-md).

## 2. Customize the checklist

Next, I removed some things that weren't relevant. For example, the [section on social media](http://localhost:4000/marketing-checklist/#social-media) wasn't relevant to this project because I didn't want to set up Twitter and Facebook accounts for it yet.

![](http://i.imgur.com/eWmN1fD.png)

I then modified some of the items that were applicable. For example, instead of making a list of tech blogs for my [PR preparations](http://localhost:4000/marketing-checklist/#pr-preparations), I am making a list of startup and small business marketing blogs. I'm subscribing to them, and later I'll pitch some of them for guest posts or leave comments on them.

Finally, I started adding some custom lists like the huge list of [places to post this project](https://gist.github.com/karllhughes/56153edea80f2c735a0b8f57ff0eba94#file-2-places-to-post-md) and some early [blog post ideas](https://gist.github.com/karllhughes/56153edea80f2c735a0b8f57ff0eba94#file-3-blog-ideas-md). I like Gists because you can have multiple files without needing to set up a whole new repository for them.

## 3. Get to work!

Every week I try to knock one or two big items off my list. I'm also starting to break some of the recurring items up into things I want to do daily and monthly. Eventually I'll put reminders in my calendar so that these things become automatic.

## 4. Monitor performance and optimize

As I start to get a little traction for my project, I'll come up with a few KPIs - important metrics that I want to track and improve. It's silly to start obsessing over these before you have any users, but once you get some traction, optimization can lead to huge gains.

![](http://i.imgur.com/yRbS7e1.jpg)
Loading

0 comments on commit 095cb93

Please sign in to comment.