Show HN: Appliku – Deployment PaaS for Python/Django

71 points by appliku 13 days ago

Hey everyone.

I have dedicated 4 years of my life to building a solution for easy deployment of [primarily] Python and Django apps.

Think of it as an equivalent of Laravel Forge/Hatchbox but for Python apps.

For those who are not familiar – Platform as a service on your cloud or on-prem servers.

I have posted here 2 years ago and a lot has changed since then.

What's new: - New great and easy to use dashboard - backups for databases - cronjobs - stats resources of servers and apps - tons of stability improvements.

debarshri 13 days ago

Hey there. Firstly, Congratulations on the progress. From the screenshot, I can tell you the UI/UX is great. I have been maintaining Awesome PaaS [1]. Overtime, I have started feeling this space has become commoditised. Because of containers, kubernetes etc. this has been an explosion in the number of tools in the space, however in your case, because of the django/python niche you might have something. In my opinion, very few early stage apps fit into PaaS model, most of the orgs have so much customization that it hard to fit them into your platform. I guess with Django as framework specialization this won't be a problem. Goodluck, with your endeavours.


  • appliku 12 days ago

    Hey, Thank you for your kind words.

    Interestingly, when I started building Appliku, there was only Forge and Hatchbox, and that was enough of a validation for this type of service.

    In the second year, a few more services popped up.

    In the third year, the market was flooded with various services in this space. All of them were and still are generic for all languages and frameworks. The most popular niche I've observed is on top of AWS, but still – for any programming language.

    Back to Appliku and Python/Django niche: The reason I picked this niche and STAYED in this niche is that not only I can build the service for them, but I also can support users of the Python/Django stack better, answer most of their questions, and help with problems from on top my head very fast and help them achieve their goals quickly. I also know NodeJS stack and NextJS, and we have a small number of such apps deployed as well. Appliku's dashboard is NextJS too.

    But I can't do such support for other programming languages and frameworks.

    Regarding customizations and trying to fit all cases into one platform: With a focus on Django comes a narrowing down on the expectations and requirements for the deployment process. Django projects are monoliths that, most of the time, either fit the standard Dockerfile or need a few tweaks to one.

    The biggest category of requested customization so far was adding different types of databases. Thanks to docker, this is relatively easy to add.

    And thanks to this low variety, the whole service is pretty easy to use as we don't need to offer/allow a million ways to configure your app compared to what other PaaS are trying to do(especially VC-backed) because they need to cater to everyone.

    Thanks again, TGIF, and have a great upcoming weekend!

    • debarshri 12 days ago

      Answer makes lot of sense. Success with everything and Keep building!

ritzaco 13 days ago

I've looked at this before and there just isn't enough information for me to even consider it.

Does Appliku essentially get root to any server I put under its control? What happens to the server if I stop paying the monthly installment? How does it work, and how do you guarantee security?

  • appliku 13 days ago

    Hey! Yes, it takes root and sets up everything needed. Nothing happens to server if you stop paying, I will be just emailing you and asking what we could do better :) You won’t be able to create apps or add more servers until you resume payments though, but nothing gets locked out breaking your apps etc.

    In fact you can add a server through custom server option, then remove it from appliku and remove appliku keys. Free approach to quick server setup :) Appliku doesn’t leave any trace or back door or additional software on your your server. Only ssh authorized keys.

    Also none of your data except for build logs and everything related to configuration is stored on our servers either.

    • sixhobbits 13 days ago

      Would be amazing to see that information formally documented on the website somewhere!

      • appliku 13 days ago

        Fair point, adding a TODO. Thank you!

fakedang 13 days ago

I was just breaking my head over deploying my simple stupid Django app last weekend over Render and other PaaS. While I eventually deployed it, it took quite a bit of time and it's still super slow.

That being said, it's unbelievable that you managed to do this alone. The site looks very well built, at least for my non-developer, noob-programmer eyes. I'll definitely give it a try.

  • appliku 13 days ago

    Thanks for all kind words.

    I am curious what makes it tough to deploy on render?

    I didn’t do it alone, the marketing website, illustrations, logo, testing and a lot of product work was done by my cofounder @krisindev

    But all of the coding of the app itself yes - that’s me :)

    Would you like to join our discord and so I can ask you a million questions about your struggles with deployments? Always curious to hear what other devs are doing.

    Have a great day!

    • fakedang 13 days ago

      Just slid in. I'm still exploring the platform, and I found the onboarding process a bit wonky - usually we just Github login into another PaaS, so when I did follow through the instructions to create a Github token (albeit with restricted access), Appliku detected all repositories except the Github repo (:edited:) that I had granted access to.

      Now I'm in the DO process. The onboarding could be much smoother than that.

      • appliku 13 days ago

        Understood. Thanks a lot for your time documenting this. Super valuable!

turtlebits 13 days ago

If I'm bringing my own server, who manages load balancing for high availability? How are databases handled if you have more than one server, do you replicate amongst them all?

  • appliku 13 days ago

    No load balancing, although planned. Can put cloud flare or other CDN on top of it.

    Databases. Our database offering doesn't try to compete with other managed DB providers where they have tons of people busy with databases alone. And we have only me to code everything. So super durable and high availability databases is not our game at least for now.

    We provide backups and few tools around databases. That's usually quite enough for smaller project, staging environments, but for High Availability best to pick RDS and stuff like that.

ksajadi 13 days ago

Looks great! Does it run Docker / Kubernetes under the hood? Its approach is very similar to Cloud 66: bring you own cloud and we turn it into a PaaS

  • appliku 13 days ago

    Hey! Cloud66 looks cool.

    Ping me via live chat or our discord, I am sure it will be interesting to chat/talk!

    Pure docker under the hood.

    There are some plans for clusters, but there is plenty of work ahead even without them.

drchiu 13 days ago

Looks like a very good product for Django deployments. I know how hard it is to get such a platform stable.

  • appliku 13 days ago

    Thanks for kind words.

    It is indeed never-ending work of improvements, and catching up with versions of pieces of software.

    Even when I have done something and I like it, 2 weeks later I come back and find how it can be massively improved

    Feedback from happy users reminds me why I am into that and fuels my enthusiasm to keep going =)

orliesaurus 13 days ago

What about plugins for Appliku? I.e. I wanna add a specific monitoring service, how does it work?

  • appliku 13 days ago

    That's actually I am curious to hear about. What monitoring service are you interested in?

    I have a guide about DataDog setup in progress. What else?

    • orliesaurus 13 days ago

      I have to read that guide, I was thinking stuff like monitoring usage/traffic i.e. if there are spikes, how should I be alerted?

      • appliku 12 days ago

        For this case, Django apps usually pick services like Sentry, and it is the app's responsibility to integrate with them anyway, so there is nothing we need to offer.

        Although the idea around some built-in analytics is still on my mind. But it can easily become a huge pain for high-load projects, so I am not rushing this feature.