Live data from Hacker News

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

news.ycombinator.com

21–30 of 128 posts

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

#21
post #17

When I became unhappy with Google Keep I switched to Nextcloud Notes. It arguably has some downsides compared to Keep, however it suits my needs and as a plus it supports markdown formatting. Additionally it's open source, so you might get some insights into which thoughts went into it, which might help when designing your own solution.

What are NextCloud Notes' downsides, in your opinion?

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

#22

I'm interested in this simply because Keep still, somehow, doesn't have sort by most recently edited, even tho Apple managed this as the default a decade ago. Manually dragging a note to the top every time I use the app is so painful.

Exactly. I end up pinning & unpinning notes to do this. Painful indeed.

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

#23
Start by making mockups in Balsamiq. Then pick a single screen/view of your mockups to start picking up the basics of React Native (just use the Expo framework (which is a React Native framework) for rapid prototyping).

React is hard until your understanding of it finally 'clicks' - and having a wireframed visual reference of what your app is supposed to look like actually makes it easier to think about how it should be layed out in code, imo.

I actually just started learning React Native and I re-wrote the first iteration of my app's home screen many times (and kind of aimlessly) until I had something that actually made sense and was easily maintainable - still re-factoring it into something even simpler, tbh. That said, I think that was mainly due to me not knowing what was in the library or having approached the UI components properly in the first place, so I think I will be prototyping quite a bit faster over time.

re: state management/backend, I'm also confused as to what stack would be best for what I want to do. I'm guessing Firebase with some minimal manual state management? All the state updates my app needs to do is essentially record the user ticking some checkboxes, and some timers updating in the UI, and those persisting on a user's phone but also optionally associated with their account online if they so choose.

edit: I might actually go the PouchDB route

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

#24
post #19

Google Keep is an interesting because it's hard to exactly categorize exactly what it is, or exactly what use case it attempts support. It's kind of like a crossover between a private Pinterest, a bookmarking app, and a note taking app. So it's multi-paradigm. But of you know your use case better, you can tailor your soltution to fit. You can then make better decisions on online/offline, where to store state, web vs…

Your crossover comment is a good one - especially the "private Pinterest" angle. I attach a pic to every card, because I find it much easier to scan a home page that way instead of trying to read every card's title tag. (Of course I'm killing my page loads, but I guess that's the price I pay.)

And I'm always in a browser context too. Thanks.

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

#25
I would go for a PWA! Easy sharing & collaboriation for notes without having to install an app would awesome!

I also think all the available APIs would be enough for a note-taking app. iOS improved it's support massivly in the latest beta.

You just need to keep it snappy! I take notes quickly and often.

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

#27
post #17

When I became unhappy with Google Keep I switched to Nextcloud Notes. It arguably has some downsides compared to Keep, however it suits my needs and as a plus it supports markdown formatting. Additionally it's open source, so you might get some insights into which thoughts went into it, which might help when designing your own solution.

What are NextCloud Notes' downsides, in your opinion?

One thing is that you can put one note only into 1 category. There is no "tag" system that allows multiple tags per note.

It also only supports text notes, so if you use drawings, etc in Keep a lot that might be a problem.

What I really like about it though is its simplicity and that I can easily run my own instance (of Nextcloud which I use anyways).

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

#28
Offline-first PWA using React/Vue + PouchDB

What features do you want Google to add to Keep?

I'm not satisfied with existing note-taking apps myself, and I'm currently researching/prototyping alternatives. My current prototype focuses on eliminating input friction, and I use it as my Android launcher.

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

#29
It seems to me that the frontend is pretty simple and most stacks will be fine. I would worry more about how the data is stored, backed up and other backend parts. My expectation is that most work will be done on the backend side.

Another consideration that’s independent from your frontend stack is how the user interacts with the UI. I guess that’s called UX these days. Making the right or wrong choices there will have much bigger impact on success than the framework choice.

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

#30
post #16

So for something like this I would go Mobile first and I would use this new open source technology from Google called Flutter, you can avoid JavaScript all together and go with Dart, even if you’ve never used it it’s incredily easy to learn. In my opinion is far superior technology to react native. You could get out a cross platform app with some of the basic things you describe in a few weeks. I would use AWS Lambda…

I indirectly contribute to Flutter (via one of their dependencies), but I would still say to make a web app first, so you can always access your app from a desktop.
Post reply on HN