Live data from Hacker News

Ask HN: What tech stack would you use to build an open-source Google Keep clone?

news.ycombinator.com

101–110 of 128 posts

Re: Ask HN: What tech stack would you use to build an open-source Google Keep clone?

#101
Since you want to produce documents (notebooks and notes) I would use a doucment format for storage, that allows for light and shallow relations: XML with XQuery on the backend (eXistDB or BaseX, I can recommend BaseX). REST and websockets are a welcome addition, these XML database/XQuery processors can satisfy. They can convert to many JSON formats, which then you may consume on the client side.

As for the client side: I tend not to think about that too much, since it is often quicker and easier to create your own DOM manipulation than learning any of these, highly opinionated, frameworks. I like to use jQuery, because of the huge community, the large number of plugins and since many other frameworks try to stay compatible.

Re: Ask HN: What tech stack would you use to build an open-source Google Keep clone?

#102
post #90
post #79

Earlier quoted context omitted.

For me it shows the [Reddit logo] and [Safari logo], since I'm on IOs. So it seems like it pulls the standard browser...

> standard browser Why would Chromium be the standard browser for Android? I have never had that installed on my phone. Edit: Yes I know Google develops the Chrome products. Down-voting my post without discussion is pretty useless, no?

Because it is the standard browser that comes with OEM Android. Google phone, Google browser.

Re: Ask HN: What tech stack would you use to build an open-source Google Keep clone?

#103
I would use, Datomic for revisioning, horizontal scaling, and flexible schema (whilst still being relational)

Clojure(Script) for the ability to use same language front and back, for it's very good interoperability CSP and expressions

Datascript for my client side database, I'd probably try and achieve a real time app based on something like hyperfiddle

Re: Ask HN: What tech stack would you use to build an open-source Google Keep clone?

#104
The answers in here are just going to be a big mish mash of people promoting whatever bespoke languages/libraries they’ve recently discovered.

Use what you know. Choose stability over cuteness. The app you’re building doesn’t dictate any specific stack.

Re: Ask HN: What tech stack would you use to build an open-source Google Keep clone?

#105
Preact and Hoodie/PouchDB. Frontend hosted on Netlify, backend on literally anywhere ($5 Dokku one-click installation on a DigitalOcean VM, Heroku, whatever). Hoodie/PouchDB gets you a pretty easy fix for the "whole DB on page load" issue and pretty good realtime sync across clients.

Re: Ask HN: What tech stack would you use to build an open-source Google Keep clone?

#106
post #90

Earlier quoted context omitted.

> standard browser Why would Chromium be the standard browser for Android? I have never had that installed on my phone. Edit: Yes I know Google develops the Chrome products. Down-voting my post without discussion is pretty useless, no?

Because it is the standard browser that comes with OEM Android. Google phone, Google browser.

Is that true? I've always seem Chrome but never Chromium.

Re: Ask HN: What tech stack would you use to build an open-source Google Keep clone?

#107
post #38

Earlier quoted context omitted.

If you're goal is to get the app done and published rather than learning a new tech then go with your default stack. I've never worked with Rails but it seems like a totally valid choice for the product. You can always bolt on a more modern frontend later if you need it.

Thanks. It's Rails' frontend performance stigma that made me hesitate. I suppose bolting a better FE is an option, but I won't know it until I benchmark it.

I’ve been going through the same thought process on a similar project in Django. Every way I look at it, the SPA route is slower and far more complicated.

I don’t know much about Rails’ perf, but by and large “SPAs are faster” only seems to hold up if you’re only measuring actions after the first page load AND your pages are very dense with heavy assets.

Re: Ask HN: What tech stack would you use to build an open-source Google Keep clone?

#109
post #81

Earlier quoted context omitted.

Is it completely open source + optional paid hosting (I spent a few minutes reading but wasn't sure.) FWIW: Open Source client + server with optional paid hosting is my favourite. And it is not just words: I've been paying a few hosting services, both commercial and open source, for a few years. I like the assurance of open source but I often prefer to pay the people who make it to host it.

A bit OT, but honest question: would it bother you if it was almost-open-source, that is, if license forbid leechers (other cloud providers selling competitive offering)? I am thinking of releasing a product under Apache + Common Clause, Zero License, Business Source License or similar, maybe with GPL timebomb. Basically, feel free to use, improve and share, but don't sell or offer it as a service to 3rd parties. I w…

No the OP, but as someone who is happy to pay for hosting, with free software, I would not be happy at all with your suggestion. In fact the original topic is really the reason I would not be happy. The original poster is asking how to build a new service since their service provider has become unresponsive. This is really the last straw. Ideally, as a consumer, you want to be able to potentially move to a new provider of the service using the same software. If you have to change software to change providers, then you are always having problems trying to get matching features, matching workflows, matching data stores, etc, etc. Interestingly, this is also why I don't generally use "open core" unless I only use the "open core" part and pay for hosting. Having the source code is useless because if the user wanted to host their own, they could use free software to begin with. They want hosting.

I think as a service provider, you have to think pretty hard about the service you are providing. Having a cloud based server and keeping it up is pretty basic work. This is exactly why SaaS is so popular -- the actual day to day service is extremely small and cheap. The problem, as you very correctly perceive, is that larger providers can undercut you, very, very easily (because you are buying the actual service from them). They can cut out the middle man.

So for a full free software service, you need to provide something other than hosting as the service. To be honest, one of the really attractive things about SaaS is that you go back to a model where you have an upfront, single time development cost for the software and then you sell it over and over and over again. In other words, you have a constant price with near infinite scaling.

I think this is impossible with free software. I might be wrong, but I've thought through it for a number of decades and I can't see a way to do it :-). With free software (that has no intrinsic hardware or extensive person-oriented service involved) I think you have to charge for actual development time. I think there are inventive ways to do this (many of which have not been tried), but there is no way around it.

I think what you are intending to offer has very little benefit for the user. Certainly, as someone who wants source code, I would not touch something with that license with a ten foot pole. If I were you, I would just go with SaaS or Open Core and be done with it. If you are really intent on providing useful source code for the user, then I think you have to come up with something that they want to buy. That thing has to be something that other people will have trouble competing against. For most programmers, that means development services.

Post reply on HN