That’s the version in the footer right now, not defined explicitly by me, but by my pushes to Heroku where the pett.io app is hosted. I ought to take a respite from it. I’ve worked far less on it the last three weeks than I did the first three weeks, but that’s still amounted to a significant chunk of time that could be better spent on a smaller project or two of more manageable scope. But the massive list of improvements will weigh on me, so I imagine I’ll try to spend a little bit of time on it everyday. I do want it to be used. I think it can still serve a purpose, even as I’ll still put that “proof-of-concept” label on it.
The project continues to serve as a teaching device for me, and the a-ha moments I get remain rewarding. I’m going to rattle off some things I’ve been working on of late. I know they won’t sound like a big deal, but I’m generally pleased to have figured some stuff out.
For instance, I’ve been grappling with the Masonry framework for displaying elements. One ongoing issue had been that the pet page montage would leave a margin on the right if the display width weren’t wide enough to accommodate another image. The usual centering techniques weren’t working. It turned out I had simply missed a simple method in the documentation.
But this was a minor issue compared to the actual loading of the images. I’m not restricting the size of images uploaded, but I was rendering the images back on the montage pages much-scaled down. I needed to store much-smaller images on the server, which for me, means on the Parse cloud. A couple of weeks ago, I figured out how to make a smaller copy via a canvas at upload time, and this helped, but I knew I needed a server-side solution. I spent a good deal of time last weekend on that, and now I’ve got a trigger on Parse that generates the smaller image. A pet page with a lot of images or the browse view of all the pets will render in a couple of seconds, instead of twenty. And the thumbnails can be clicked on to view the original image. I haven’t put any sort of elegant slider or carousel up yet because I honestly haven’t even begun to think of exactly what I want. I don’t want to just throw up some jQuery plugin, nor do I think it’s worth the time for me to come up with original code (there’s are some very nice wheels out there; I’m not going to invent anything half as nice.)
One goal for the app I had at the start was for one to be able to provide a link to a pet’s page that would not require a login. This is a single-page app, so even though I may have had an aremid.html page 10 years on my old website, having such a link to send wasn’t initially a simple task. The Backbone.js framework is still something I need to work at, and getting all routes and views to behave as desired has required some work. I believe with some fairly routine server-side routing, I could have a pett.io/aremid link that works (maybe, perhaps I’m being naive, and I’d do it right now if I thought I knew how to do it quickly). But for now, I’m happy that I can give out pett.io/#/pet/aremid or pett.io/#/pet/moksha
Major areas of focus as I move forward, at whatever rate that may be: mobile views, especially for account set-up and profile entry; profile editing; profile rendering; image slideshow. This will never be boring.