README.md 2.87 KB
Newer Older
ttt's avatar
ttt committed
1
## Subscription management platform
ttt's avatar
ttt committed
2

ttt's avatar
ttt committed
3
This is my thesis project. It's a platform for managing subscriptions, it gathers data about users and subscriptions and creates visualizations to make decision making easier.
ttt's avatar
ttt committed
4
API documentation (outdated right now, I'm rewriting parts of the project at the moment and will hopefully update the docs afterwards) is here: http://docs.smp2.apiary.io/
5

ttt's avatar
ttt committed
6
#### So, what can it do?
7
8
9

It's intended for developers of various apps, web services, blogs etc. It takes care of some of the bookkeeping for you, mainly information about which users are allowed to use certain features, view certain content and so on. It logs usage information and processes it, so that it's easy to understand and explore usage patterns.

ttt's avatar
ttt committed
10
The back-end is written in Go and uses MySQL as the underlying database (another DB could be used instead, but that would require rewriting a bit of code). The website is made using Vue.js. It's possible to write a 3rd party front-end, to replace the one I wrote, using the API documentation (http://docs.smp2.apiary.io/).
ttt's avatar
ttt committed
11

ttt's avatar
ttt committed
12
You can read the **accompanying paper** if you are interested in the reasons behind some of my decisions or other details. [It's available here.](paper/smp-paper.pdf)
ttt's avatar
ttt committed
13
14
15

Note that this project is a work in progress, **is not stable** and things will most certainly break in the future.

ttt's avatar
ttt committed
16
#### The service can handle multiple apps, so you can host it on your server and let your friends use it, etc.
17
18
19
![login_picture](img/smp_login.png)
![menu_picture](img/smp_menu.png)

ttt's avatar
ttt committed
20
#### You can set up new subscription plans. They will be used to generate subscriptions for new users of your app or service.
21
![plan_picture](img/smp_plan.png)
ttt's avatar
ttt committed
22
#### You can also change the plans that already exist.
23
24
25
![plan2_picture](img/smp_plan2.png)
![plan3_picture](img/smp_plan3.png)

ttt's avatar
ttt committed
26
#### Create discounts.
27
28
![discount_picture](img/smp_discount.png)

ttt's avatar
ttt committed
29
30
31
32
#### Generate discount codes (e.g. to be sent out automatically by your other tools).
![codes_picture](img/smp_codes.png)
![codes2_picture](img/smp_codes2.png)
![codes3_picture](img/smp_codes3.png)
33

ttt's avatar
ttt committed
34
#### You can create accounts for other people to access these settings.
35

ttt's avatar
ttt committed
36
#### And of course, view the data.
37
38
![charts_picture](img/smp_charts.png)

ttt's avatar
ttt committed
39
#### For now, there's just a few different charts.
40
41
![new_picture](img/smp_new.png)

ttt's avatar
ttt committed
42
#### I tried to include the most useful ones first.
43
44
45
![attrition_picture](img/smp_attrition.png)
![revenue_picture](img/smp_revenue.png)

ttt's avatar
ttt committed
46
#### Is your free trial convincing users to buy things?
47
48
![conversions_picture](img/smp_conversions.png)

ttt's avatar
ttt committed
49
#### Are 'whales' keeping your app alive?
50
51
52
![revpay_picture](img/smp_revpay.png)
![revpay2_picture](img/smp_revpay2.png)

ttt's avatar
ttt committed
53
#### How many users with different subscriptions do you have?
54
55
![subs_picture](img/smp_subs.png)

ttt's avatar
ttt committed
56
#### How effective was your marketing campaign, aren't those new users just leaving after a few days?
57
![tag_percentage_picture](img/smp_tag_percentage.png)