Hi all.
Just wanted to show you my latest side project (been working on it for a couple of years now). It's a calendar app with a twist.
It's developed as a web app, thats wy it could be integrated directly on the landing page. It can also be run on any device directly from http://app.oneviewcalendar.com
Instead of the traditional monthview and day view I have used a timeline that is zoomable and scrollable.
Give it a try, it's quite a different experience.
I'd love to know as well, in particular your stance with regard to the UI concept itself — which is a very interesting take on a common problem.
Is it your intention to proselytise this particular UI concept (i.e., “Everyone should use this type of calender view! It makes calendering better for everyone. Get inspired and go implement it in your own software!”) or to test the waters for a commercial product?
For me, at least, being able to personally audit, contribute, and maintain the software (even in a case where you stop caring about it) is very important to me.
You're right on the money. It's not the British Molyneux of game design fame but rather a fellow from Sweden. The whois of oneviewcalender.com shows he's definitely from Sweden & lives in Sweden. I won't go any further with the doxxing though. He also owns slidecalender.com too - which I is a less apt name than oneviewcalender.
I like it! On my Android phone, I tried connecting my calendar - went through the Google with screen but then got some error message ("could not connect"?), and a spinning circle that never went away.
Beautifully done. I have had this exact idea for years as well and you basically took the dream app I was going to build "Some Day" and seem to have nailed the execution. Bittersweet feeling for me. ;-) Hope this becomes hugely successful!
This is awesome! I find Fantastical's presentation to be very poor (though love their input), Sunrise is now on the way out... The UX you came up with is amazing!
I'd pay as much as I paid for Fantastical for your native iOS app with CalDAV support, right now. Even more, to make sure you keep developing it.
If you're certain it has to stay free, please consider open sourcing it. Shopping for critical Apps every three years 'cause authors got bored of it is painful.
I like the zoomable/scrollable view that's a UI improvement. The add event form could do with some UI tweaks. I'm not the biggest slider fan, but that might be a better control for the reminders (with sticky graduations) (instead of a dropdown) and reduce the length of the form.
Some autocompleteness on the 'Where's could be good. Can you make time input easier?
Shifting between calendars needs to be very easy. I used to use Gcal, and I was forever putting events in the wrong calendar.
I don't like the working name/domain name. 'One View' itself isn't that bad. But I end up thinking of: "One's view", which sounds more like a comment board or Virtual reality app.
Nicely done. One comment: It took me a while to realize the numbers on the top right triangles are week numbers in the year. Typically I am not concerned with that, not sure if there are general use cases for the week number.
Week numbers are used a lot in my experience. Features are often promised by week X. Events, work schedules and even vacations are also often referenced by week.
It could vary by country as well, when I grew up and went to school it was used a whole lot. I don't remember the last time I saw it though, and since moving abroad I definitely haven't seen it.
It varies a lot by trade and profession. Any place where complex scheduling is part of the job tends to use them (e.g., schools, manufacturing plants, accounting).
Week numbers are important in scrum and release plannings, and in university (someone mentioned "parity" - some courses happen in odd weeks, others in even weeks). Keep them, I miss them :D
I like Moleskine's design and I have noticed the similarity. But their app is escentially different and if it matters the answer to your question is no :)
How do I add an event for next year januari? I can't seem to scroll down to that date. But OK, you can add a new event, drag it to today, then change the date? Apparently not. If I add a new event, I want to be able to change the date in the event details.
Furthermore, scrolling in the details doesn't work properly. (Firefox on OSX) Really nice app for the phone!
Peter: you could add it as an offline Apache Cordova app as well, although you would have to be on the lookout for:
- Synching between apps (a fairly straightforward process, but still has to be done, given enough interest on the app [which it looks like you might have])
- System Webviews != Chrome or Safari (depending on iOS/Android version).
I would be happy to hunt this on ProductHunt as well, hit me up on twitter http://twitter.com/joantune if you want to schedule a date or simply reply here and I'll post it there.
I like the idea but semantically, this is confusing. If I want to scroll, it zooms in/out. Even that, it doesn't keep the focus making me wanting to really scroll. Now I'm really confused how to scroll. (I know how but I'm giving you the cognitive load that's necessary here). What would be cool is to use zoom gestures to ....zoom . That is completely intuitive. Aside from that, vertical bars take too much screen space without adding much information. Perhaps they could be translucent or some such.
I know, but users without touchpad had zoom functionality (like ctrl+wheel or ctrl+scroll) for years. Don't get me wrong I like the zoomability of a calendar, it is an excellent way to visualise information.
I'm confused by what is difficult. In this case I would make the UX allow the native scroll trigger to operate and then add a zoom trigger. If you make the zoom triggers to be both ctrl+click and two finger pinch then it will work across all devices (ie. mobile/desktop/touchpad/mouse).
I agree that it will be great to be able to target touch pads or mouse/keyboards but I believe it is pretty simple to fix the UX on this app.
It's an excellent idea to have a calendar that can be zoomed without steps. You just got to think of a way to make it easier for user to know how to scroll and zoom. Maybe two finger swipe should be scrolling and one finger swipe zoom? I don't know, but please keep up the good work.
The zoom and touch gestures are there on mobile. Ideally the same would be available for laptops that have the same gestures on their touchpad. Presumably this would require something like Pointer Events:
It’s written in Coffee Script (sorry, it was all the rage in 2012) but if you create an HTTP server in the root of the project everything should work out of the box because I checked in the compiled sources. To zoom in and out use shift-drag.
Wow that's crazy. I saw your comment and thought "no way." I'm not the most tied into open source development but it is very surprising to me that something that is so embedded inside Rails is not being actively developed. I wonder if Rails is going to move away from it now as it probably should anyway?
This is such a bummer to me. I was a late-comer to CoffeeScript (just joined a project at a company that's been using it for years), and I absolutely love it. I was really skeptical ("JavaScript works just fine! Why change the syntax for no reason?"), but it's so slick.
Really cool. I'd love to hear about what technologies you used and what issues you encountered in getting it to the fast/smooth state it is today. Really great work, thanks.
The demo is great. I hope that the tech used to make the demo is also used in the app to reduce duplication of effort and make the two more similar than different.
UX preference: I would rather swipe sideways to scroll between days preserving time of day than scroll vertically through 24h to get to yesterday/tomorrow.
If I want to actually use this thing, how does it persist data? Is there a way to create an account, or do I have to never ever clear my browser cookies (or localStorage)? Accessing across different devices? Etc.
(Not sure if this is just a UI proof of concept or an actual app you expect people to use).
Suggestion: don't shade alternate weeks (whether a week is odd or even is meaningless). Instead, shade the weekends, to allow you to easily identify days of the week even when day labels aren't visible.
Thanks for the feedback. I Haven't got the same error as you, but I will have to find out what has gone wrong. Better than Googles calendar was nice to hear :)
A few thoughts on navigation:
I'm on a mac and I felt that the zoom using the "scroll wheel" (i.e. track pad) was pretty disorienting. I was expecting it to scroll. Having to click and hold down to scroll doesn't feel right.
I also instinctively thought the arrow keys would work but they didn't. I'd suggest up/down (obvious) and left = zoom out, right = zoom in.
One issue I ran into (on a MacBook Pro, OSX El Cap) was that scrolling wouldn't work on my (external) trackpad. It interpreted 2-finger scroll as pinch (down) and zoom (up). Had to use trackball to scroll.
Hi, glad you liked it!! On the trackpad scrolling and zooming is done as on google maps. That is a two finger scroll does zooming and a single finger pressed and dragged does scrolling.
This looks awesome! Would you consider Google maps style mobile zoom too? In particular their one finger zoom is really great on mobile.
Two typographic things on the recurrence settings: frequence should read frequency, "week days" is a bit confusing, I'd probably change it to "on these days"
This is a cool demo, but why would someone want to have all these long running events on the screen at all times? It makes the UI cluttered and less clear what the next thing is you need to be doing. For example, do I really need the fact that I'm on vacation to be taking space at the side of the screen at all times? I'm not going to forget. This kind of design makes it easier for me to miss things I need to remember to do, perhaps defeating the point of using a calendar app
I like it, because I have things like "parents in town", "partner in Canada" or "no soda challenge" that are relevant to any specific decision I make for a few weeks. Do I really want to see that movie with friends while my parents are here, or should I keep that evening free? If he's out of town then I won't plan a date night then.
I do mark events like vacation, etc so that I see them coming up and for planning. That keeps me from putting events in the middle of my multi-week vacation.
> For example, do I really need the fact that I'm on vacation to be taking space at the side of the screen at all times?
That is a very "now" view of time.
I like my calendar to act as an archive, a diary that writes itself simply through living.
In the moment I may want to only see the beginning and end of a long-running event, but on the whole I want to see what happened/is happening at the given time frame in the past/future.
Good point. One solution I can think of would be to have a button or tab that would turn the longer running events on/off. You could also have the app only display the beginning and ending of an event when you zoom out past a certain point, say 3 days or so. In that situation, you could also use a vertical dotted line to connect the beginning and end, like with message board comments. Another thought would be to have those ongoing events snap to the top and bottom of the screen when you go into the individual day view.
Very nice. I was meaning to implement something like this in JS (this summer hopefuly if I dont get busy) as a fun project for my website but something much smaller. Got any ideas?
I wouldn't go so far as to call it deeply unsettling, but it does seem odd. For me, I think the reason is that I now have the desire to try and fill in all of those empty decades. And if you have only a few reoccurring tasks (go to gym), then that's all that appears year after year. That was a little odd too.
People don't do well when confronted with planning at that scale. Not only that, but when looking at decade scale, you probably don't want to see daily tasks bleeding in. It's one thing to see a five or ten year plan. It's another to see that you're still planning on going to the gym at 8:30, June 7th, 2026.
Hard to scroll down and read the stuff about this app of yours, since the "app" itself captures my scroll wheel. Had to use the scrollbar instead, which was a bit lame.
+1 for CalDav support, currently it looks like it only works with Google Calendar.
I've moved away from Google Calendar to self-hosted CalDAV, but there's a frustrating lack of good Calendar apps that support it. I'd like to give this a try!
Honestly it was probably way easier (and more performant) to implement it that way. I would hate to wrangle DOM elements and CSS to get it to perform that smoothly and lay out in an expected and consistent way. I think most game developers would likely agree.
Really awesome app! My only advice would be to move the sidebar to the top when possible because horizontal real estate is important, especially if you have lots of long term events.
Other thing I'd love to see in a calendar app is prompting me to track the exact amount of time I spend on each thing in my calendar. Having contextual reminders and a split (planned/reality) view would be really interesting. It would help spot those people who are habitually late.
well in this case I think it does.. Animating this many DOM elements in a performant way would be really hard. Looks like the webapp is rendered in a <canvas/> element. I think its a better discussion than 'which js framework should I use?'
Thanks for your interest.
Performance has been har to get good enough.
Basically it is a javascript app on a canvas. Thats why it can be integrated on the landing page.
You seem to have accidentally invented a really slick UI library for canvas. I have been working off and on on something like that for the last 3 years, but yours is actually factually working. I really hope you publish it.
204 comments
[ 3.0 ms ] story [ 254 ms ] threadIt's developed as a web app, thats wy it could be integrated directly on the landing page. It can also be run on any device directly from http://app.oneviewcalendar.com
Instead of the traditional monthview and day view I have used a timeline that is zoomable and scrollable. Give it a try, it's quite a different experience.
Please leave me a comment :)
Is it your intention to proselytise this particular UI concept (i.e., “Everyone should use this type of calender view! It makes calendering better for everyone. Get inspired and go implement it in your own software!”) or to test the waters for a commercial product?
In any event, looks fantastic and best of luck.
What?
I'd pay as much as I paid for Fantastical for your native iOS app with CalDAV support, right now. Even more, to make sure you keep developing it.
If you're certain it has to stay free, please consider open sourcing it. Shopping for critical Apps every three years 'cause authors got bored of it is painful.
Some autocompleteness on the 'Where's could be good. Can you make time input easier?
Shifting between calendars needs to be very easy. I used to use Gcal, and I was forever putting events in the wrong calendar.
Furthermore, scrolling in the details doesn't work properly. (Firefox on OSX) Really nice app for the phone!
- Synching between apps (a fairly straightforward process, but still has to be done, given enough interest on the app [which it looks like you might have])
- System Webviews != Chrome or Safari (depending on iOS/Android version).
I would be happy to hunt this on ProductHunt as well, hit me up on twitter http://twitter.com/joantune if you want to schedule a date or simply reply here and I'll post it there.
Cheers, and good job, it looks good
I agree that it will be great to be able to target touch pads or mouse/keyboards but I believe it is pretty simple to fix the UX on this app.
http://caniuse.com/#search=pointer%20events
For a traditional PC interface, there isn't such a natural way of handling this interface.
I hope to help you somehow, I opensourced that small thing I built then: https://bitbucket.org/yuchi/dirt-testing-1
It’s written in Coffee Script (sorry, it was all the rage in 2012) but if you create an HTTP server in the root of the project everything should work out of the box because I checked in the compiled sources. To zoom in and out use shift-drag.
Probably something to do with the ad hoc compiler and lack of ES6 support.
See https://github.com/jashkenas/coffeescript/graphs/contributor...
- Future compatible, more interoperable
- ES6 classes can extend each other in a standards compliant way
- CS arrow functions feel verbose compared to ES6
- Constants
- More tooling support
- More features
- Upcoming features, like ES7 async/await have polyfills that you can use today (as opposed to CS - https://github.com/jashkenas/coffeescript/pull/3813)
Though I do miss a couple of things:
- The last expression in a block is implicitly returned (nice sugar for functional programming)
- Ranges ([1..10])
It doesn't say anywhere that it's in "maintenance" mode.
But it's true that it could be more active: http://coffeescript.org/#changelog
https://github.com/ruby/ruby/graphs/contributors
https://github.com/golang/go/graphs/contributors
https://github.com/scala/scala/graphs/contributors
https://github.com/Microsoft/TypeScript/graphs/contributors
UX preference: I would rather swipe sideways to scroll between days preserving time of day than scroll vertically through 24h to get to yesterday/tomorrow.
If I want to actually use this thing, how does it persist data? Is there a way to create an account, or do I have to never ever clear my browser cookies (or localStorage)? Accessing across different devices? Etc. (Not sure if this is just a UI proof of concept or an actual app you expect people to use).
Do you have someone to build it? I'd totally be willing to give it a go.
I like it a lot. Feels much better than Google Calendar, for its simplicity (although in the browser it feels kinda odd).
I won't use it because I don't like calendars.
A few thoughts on navigation: I'm on a mac and I felt that the zoom using the "scroll wheel" (i.e. track pad) was pretty disorienting. I was expecting it to scroll. Having to click and hold down to scroll doesn't feel right.
I also instinctively thought the arrow keys would work but they didn't. I'd suggest up/down (obvious) and left = zoom out, right = zoom in.
How do I get rid of all your items?
One issue I ran into (on a MacBook Pro, OSX El Cap) was that scrolling wouldn't work on my (external) trackpad. It interpreted 2-finger scroll as pinch (down) and zoom (up). Had to use trackball to scroll.
Hope that helps.
Two typographic things on the recurrence settings: frequence should read frequency, "week days" is a bit confusing, I'd probably change it to "on these days"
cool idea making it a web app
That is a very "now" view of time.
I like my calendar to act as an archive, a diary that writes itself simply through living.
In the moment I may want to only see the beginning and end of a long-running event, but on the whole I want to see what happened/is happening at the given time frame in the past/future.
People don't do well when confronted with planning at that scale. Not only that, but when looking at decade scale, you probably don't want to see daily tasks bleeding in. It's one thing to see a five or ten year plan. It's another to see that you're still planning on going to the gym at 8:30, June 7th, 2026.
Interesting idea, though.
Does it support CalDAV?
I've moved away from Google Calendar to self-hosted CalDAV, but there's a frustrating lack of good Calendar apps that support it. I'd like to give this a try!
Other thing I'd love to see in a calendar app is prompting me to track the exact amount of time I spend on each thing in my calendar. Having contextual reminders and a split (planned/reality) view would be really interesting. It would help spot those people who are habitually late.