204 comments

[ 3.0 ms ] story [ 254 ms ] thread
Really neat idea. I'm sad that the site requires JavaScript, but I don't know how this would work otherwise.
Glad you like the idea. Yes, it would of been hard to build without javascript. But if you use android you can get the app :)
Why are you sad that an interactive calendar app requires JavaScript?
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.

Please leave me a comment :)

Can it be self hosted by users? Is it open source?
Haven't thought of that, but maybe self hosting could be done. I intend to make the app free, but it isn't open source.
Why free if not open source? Because the latter would be a prime requirement for me; the former is not.
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.

In any event, looks fantastic and best of luck.

Don't make it free, charge for it. If it's valuable, people will pay for it.
Very clever! Good job!
Wait, are you Peter Molyneux the game designer of Fable fame, or do you just happen to have the same name?
Considering it says "By Peter Molyneux, Sweden", I'd say he just has the same name. Peter Molyneux the game designer, is from the UK.
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.
'of Fable fame' is practically blasphemous.
Different generations different games. Not everyone played Populous.
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.
Same here. I'm on Android phone as well.
As long as I can download it direct and not be tied to the playstore I'd love to try it out. I'm currently using the free version of acalendar atm.
I could give you the apk. Send me an email and we'll do it that way.
Whatever. I got your email and it gave me a playstore link. Forget it.
This is awesome, I have multiple "linear calendar" mockups on my laptop right now that I never actually started up.
Very inspiring. Cheers!
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!
Oh, Sorry friend I know that feeling. We should of teamed up ;)
The execution is awesome. So smooth. What are you using for the nice animations and transitions? Is it available on iOS?
Well if you ever need help with the iOS version, we still could. :-)
Love the animation that resolves the home icon into the menu icon.
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).
Me neither anymore, but I was concerned with week's "parity" in school. I.e. whether the week was even or odd.
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
Are you sure you didn't get heavily inspired by Moleskine's Timepage?
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 :)
The demo locked up my machine while trying to add an event.
(comment deleted)
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!

I absolutely NEED this as a widget on my Android phone screen! Congrats to amazing job Peter:)
Really cool! makes me want to use a calendar app and plan my life! :D
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.

Cheers, and good job, it looks good

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.
It’s scroll-jacking to let users without a touchpad to zoom in and out. I expect the mobile/touch version to be way more sensible.
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.
Managing both is very difficult, at least until we get pointer events supported (http://caniuse.com/#feat=pointer)
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:

http://caniuse.com/#search=pointer%20events

For a traditional PC interface, there isn't such a natural way of handling this interface.

As I said in another comment, I was developing something incredibly similar many years ago. I really believe it’s the best UI for a calendar.

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.

CoffeeScript is still popular today even if it's not as "hyped" as it used to.
Unfortunately the CoffeeScript project seems to be in maintenance mode, and hasn't had a release for ~9 months.

Probably something to do with the ad hoc compiler and lack of ES6 support.

See https://github.com/jashkenas/coffeescript/graphs/contributor...

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.
Same here. Personally I prefer ES6 for a few reasons:

- 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])

Maybe the language is just stabilized and works very well already, but it's still active: https://github.com/jashkenas/coffeescript/pulse (last commit is 6 days ago).

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

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.

seriously good job with the demo page.
Very cool -- nice work!

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.
This is totally awesome. Do you already have plans to build it as a mobile app?

Do you have someone to build it? I'd totally be willing to give it a go.

    Uncaught TypeError: Cannot read property 'populateCalendars' of undefined
    Uncaught ReferenceError: moment is not defined
http://app.oneviewcalendar.com/ works.

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.

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 :)
The demo is really slick. The app does feel better than Google calendar. What was it built with? :)
Very clever design, looks great.

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.

I like it. I've been working in a similar view.

How do I get rid of all your items?

Well your looking at the demo calendar. You'll have to switch to your google account to get total control. Hope that helps /Peter
Ah, got it. It would be nice to have a standalone option, though. I don't necessarily want to be integrated with Google.
Really nice design! I think the simplicity compared to Google Calendar could suit a lot of people.
This app looks very similar to Timepage by Moleskin – which has been around for a while.
Beautiful UI, very intuitive!

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.

Hope that helps.

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.
Double-clicked on the left side bar and it locks it without being able to re-open it.
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?
There's something existentially terrifying about being able to quickly zoom out from out from a view of 5 minute intervals to one of several decades.
Terrifying yet inspiring! Must make the best of such short existence :)
I'm not trying to be negative, but I disagree. It's deeply unsettling.
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.

Respice post te. Hominem te memento.
Translation for us lesser humans: "Look after you [to the time after your death] and remember you're [only] a man.
(comment deleted)
Exactly my thoughts too! Might be humbling and perspective shifting.
This could be a nice UI to show a facebook timeline for example.
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.

Interesting idea, though.

Very, very good! Works dandy on my mobile browser. May I ask what js framework, if any, are you using?
Give me a place for my email so you can tell me when it's iOS ready, please!
Sorry, I should have done that. For now could you use the contact form? Cheers Peter
Love the pinch-to-zoom on this touch-screen Chromebook. It reminds me of Google Photo's!
Awesome UI!

Does it support CalDAV?

+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!

the main view is all rendered in a <canvas> element... wow!
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.
Are you planning an iOS native app? I would love this and would pay for it
Hi, glad you like it. Yes IPhone version is planned. But will be a few months yet. You could send me an email and I'll put you on the list.
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.

Beautiful. How do you build something like this? Coding language? Stack? Dev environment?
Yes, all of those don't really matter. You just fire up whatever and start building the damn thing.
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.
Interesting. Do you repaint the entire canvas on every update?