A strange thing, sometimes it seems that every month there are at least a dozen new GTD-like task managers. At the same time, there are very few good applications for efficiently managing daily tasks. I think a rare reader has found a suitable tool for himself and uses it every day.
We are not out of lazy, and you guessed it, we also
made our own , with ... everything that is right.
Below I will talk about our paradigm and features that distinguish us from our competitors. Because many are already tired of the abundance of posts about personal productivity on Habré, in my story I will focus on web technologies, and not on gtd-methodology. In the meantime, the picture to attract attention:

There is a perception that web services and desktop applications are incompatible things, that each of these technologies is good for solving only its own tasks. This is so ingrained in our minds that there are no questions why the mouse cursor is in the shape of a finger above the button on the web, and in the form of an arrow in the rest of the desktop world. We were not going to put up with the poverty mentality of the Old Web and set out to design and develop an application that combines the flexibility and availability of a web service with the speed and convenience of a desktop application. Not being frantic startups for the sole purpose of selling something to someone, it took me and my friends more than two years of slow, but painstaking work to get the first public version to see the light. Below I will briefly talk about our approach and the possibilities of our tudushki, allowing myself to delve into the technical details.
So, despite the fact that
Smthngs is a web service, its entire client part is completely executed in the browser. That is, in general, all; we do not have any server scripts that form web pages. Instead, we completely implement a client-server architecture, the server role in which is assigned only to provide a simple RESTful API for a completely independent client, which in this case is a bunch of Javascript and CSS code. If you look at the source code of a web page, you will not see anything except a few lines that draw a preloader.
This approach gives a lot of advantages!
First, the application is loaded only once, after which, on subsequent visits, only user data is updated on the client. The client itself is updated only if a new version has appeared on the server.
Secondly, the application always reactively responds to user actions, because To display the changes, you do not need to wait for a response from the server, the changes are sent to the cloud regardless of the interface response. We have only two buttons in the whole project that require a response from the server, this is the
exit and
change the password .
Thirdly, the application can work offline without sacrificing functionality. In general, there is no difference between storing data right now or next week, in any case, the data first gets into the local storage and only then is sent to the server. And yes, if you close the browser, and then open it for example in a train, you will not immediately notice that the Internet has stayed at home. We used to use Gears for this, but now all modern browsers support this new web magic on their own.
Fourth, such dynamism does not create difficulties for us in implementing an excellent desktop-style interface. Buttons, sockets, lights, total drag-n-drops, full keyboard navigation, modal dialogs (where they
are needed ), lack of modal dialogs (where they are
not needed ), the lack of a “
send form to save ” concept - everything is done with our warmth and love in the best desktop traditions.
Fifth, it is convenient to administer such an architecture, since almost the entire load is shifted to the browser.
')
Despite all this, we have kept the spirit of the web. For example, browser buttons
Forward and
Back work everywhere and always. To realize this, we had to invent and drag the concept of states (which are stored in the # hash-part of the url) through the entire UI building system, it was not easy. The work of this system can be observed by duplicating in the browser an open tab with our application and trying to find the differences.
Finally, talk a little about the application itself. As I said before, this is a task manager for managing personal tasks in order to increase personal productivity. We support all the goodies for efficiently maintaining a to-do list, organizing and sorting it, such as: tricks, projects, subtasks of any nesting level, tags, full-text search, several types of list views, and so on. Despite all this, we tried to make the interface as simple and intuitive as possible; Perhaps the lion's share of time we spent on it. And yes, we have an arrow cursor over the buttons.
As I said, our main goal is not the fastest enrichment, but the development of a revolutionary application, so the service is free and will remain so at least in its current form. We are looking for like-minded people who can help us in our work by any means, for example, feedback or developing a mobile client. Or even if you have free financial resources, we are also ready to talk about it.
To use the service, you must
register . We do not support retro browsers. If you use Chrome, you can
install Smthngs as an App from the WebStore. To be always up to date with our plans, subscribe to our
twitter and join our community on
facebook .