
Show HN: OneTool.app – One Tool to rule them all - ile
https://onetool.app
======
ile
Please try out/take a look the app that I've created:
[https://onetool.app/](https://onetool.app/)

The idea is to have a business tool that has all the most common tools
included in one package.

Current features:

\- Team communication: social networking, group chats

\- Tasks (and a calendar for them)

\- Document editing (with multiuser collaboration)

\- Helpdesk/customer support

\- Files (encrypted)

\- Commenting (threads) throughout the whole app

\- Notifications (and @mentions) throughout the whole app

\- Tagging throughout the whole app

More features will be added. Next in line would be spreadsheet/database-kind-
of-feature and slides. Maybe a CMS too. And I can think of a few others I
would like to have.

The app is in beta and has been for a while. When it's proven enough the plan
is to make it non-free, but the price should be affordable (I'm thinking about
something like $1/month/active user). A free plan for one user may or may not
happen, haven't decided yet.

The app is secure in a way that even we[1] can't access your data[2]. It's
encrypted with the user's key[3]. The encryption happens on the server though,
so it's not _as_ secure as a client side encryption would be. But it's still
much more secure than not encrypting at all.

Technical details may interest: it runs on Node.js. The framework is a fork of
Derby.js (so there is ShareDB involved also). Shortcomings: no offline support
at the moment. I've started to look for a framework that would allow offline
support. It probably involves a from OT to CRDT.

More technical details: it runs on 3 servers for fault tolerancy reasons. The
database used is ArangoDB.

Note that I haven't looked that much at similar apps, so I can't comment on
them. Comparisons are welcome though.

This may seem like a big task for one person, and it is, but it's doable. I
started on social networking and it grew from there. At some point the name
OneTool came naturally to mind, so I changed the name and the domain.
Originally the name was Project5 (for project management) [4].

If someone asks me: "why?", I would tell that "because it's there" \-- like a
mountain climber would answer. I need to climb this mountain, after having
coded all kinds of little things in my life. It also teaches a lot of the
"design" part of software making.

Feedback would be very welcome - here (obviously) or on Twitter too:
@onetoolapp.

Thank you, Ilkka

[1] It would require some hacking of the codebase (outside of my knowledge)
and "stealing" the data before it's encrypted. In a normal operation this
should not be possible.

[2] There are some exceptions: for example customer support tickets are not
encrypted, because they come from other sources than the team members
themselves, so they can't be encypted with the team's key.

[3] The key is the same for the whole team, but it's encrypted for each (team
member) user separately with the user's password.

[4] At some point I noticed that there already a project management software
named Project5, so the name change had to be done anyway.

