Time for another late night update on #LAHistoricalMarkers. I’ve put the finishing touches on full screen photo viewing (with support for screen rotation) and am working on TestFlight/Play Beta builds now!
#lahistoricalmarkers #indieappdev #Louisiana #historicalmarkers #history
Multiple photo support is coming along nicely in #LAHistoricalMarkers!
I still need to create an interaction for full screen viewing (including handling of orientation). And then it’ll be time for another Android UI pass… 😅
#lahistoricalmarkers #Louisiana #history #historicalmarkers #indieappdev
Lots of work left to do, but I’m really excited about improving the experience of adding photos in #LAHistoricalMarkers! It turns out, #expo supports Apple’s Live Text Interactions, which means users on iOS could extract text from photos that they could use in their submissions!
#LAHistoricalMarkers is once again available on the #GooglePlayStore! It looks like the version that is up now is fairly behind, so I'll be working on getting that updated as soon as possible.
If there's any interest, I'd love to have some help testing the app on Android. One of my focuses for this next release is a UI/UX pass specifically targeting Android.
https://play.google.com/store/apps/details?id=com.austinwebre.lahistoricalmarkers
#lahistoricalmarkers #googleplaystore
Alright, time to see if this will appease the powers that be over at Google. Since I had to add a whole page just to link out to our new Privacy Policy, I decided to add a feedback form and make some general improvements. Not bad for a night’s work!
Backend changes are deployed, Android build is in progress and the iOS build is queued up right behind it.
#lahistoricalmarkers #indiedev
Since Google Play is insisting that my Privacy Policy be accessible from within the #LAHistoricalMarkers app itself, I decided it was time to put up an actual website for the project.
Introducing to the world for the very first time:
https://lahistoricalmarkers.com
#WebComponents + #elevent + #GitHubPages made this a pretty quick project, all things considered!
#lahistoricalmarkers #webcomponents #elevent #githubpages
I have officially entered the upside down. My latest changes to #LAHistoricalMarkers are up on TestFlight and staged to go to Apple Review, but Google Play has taken down our entry on the App Store and is refusing to allow updates until I jump through some hoops.
Going to be a fun time getting this thing cleared through their review process.
It is complete. Both the web API and queue processors for #LAHistoricalMarkers have been moved from #AzureFunctions over to #AzureContainerApps!
Next up is probably attempting to automate my #Expo build with #EAS.
Check out the code on #github!
#lahistoricalmarkers #azurefunctions #azurecontainerapps #expo #eas #github
An hour or so later, the baby is fed and fast asleep and I have fully automated deployments of the new backend. It was the Auth between GitHub Actions and Azure that tripped me up.
#AzureAD and BRAC are things I don’t touch very often in the day job. All our connections between services and azure were configured long ago.
So far this has been smoother than I could have hoped. I’m actually getting excited for the prospect of a #LAHistoricalMarkers mobile app release!
The result of this is that the photos of markers (a key feature in the app) look bad on larger devices.
So I’d like to be done with Functions. They were a fun little experiment, but they clearly aren’t ready for the most basic of web apps. And now we have container apps, which also scale to 0, include some free compute, and allow me to run full #AspNetCore.
So hopefully higher res photos are coming soon for #LAHistoricalMarkers. Although I haven’t published to the app stores in ages… 😬
#aspnetcore #lahistoricalmarkers
The biggest example of this, is the absolute silliness that is the photo upload feature in #LAHistoricalMarkers. Support for a basic file upload seems like a must for any web-based platform, but in #AzureFunctions, there is no recommended approach. (To this day I am subscribed to a GitHub issue on the topic that has seen no meaningful movement in 2 years)
So what do we do in LAHM? Encode the image as a base64 string (after compressing the hell out of it so it doesn’t reach body size limits).
#lahistoricalmarkers #azurefunctions
I have so many little side projects I want to complete, but one thing that has been bugging me lately is moving the #LAHistoricalMarkers backend off of #AzureFunctions and onto #AzureContainerApps.
#lahistoricalmarkers #azurefunctions #azurecontainerapps
I just got the first anonymous submission to #LAHistoricalMarkers in quite a while. The vast majority of markers are ones the wife and I entered ourselves, but the occasional submissions from strangers are always a little pick-me-up!
This one, Christ Episcopal Church, is in #Covington #Louisiana on the north-shore of #LakePontchartrain. According to the sign, it is the oldest public building still in use there!
#lahistoricalmarkers #covington #Louisiana #lakepontchartrain #history #historicalmarkers
The wife and I are going “sign hunting” one last time before our first child arrives. We’ll be driving along the east bank of the #MississippiRiver in #Plaquemine Parish looking for signs placed as part of #Louisiana’s #HistoricalMarkers program.
I’m kicking off this thread to record the day’s adventures. Our first stop will be down in Pointe-A-La-Hache, then we’ll work our way back towards #NOLA.
Let’s see what kind of trouble we can get into!
#mississippiriver #plaquemine #Louisiana #historicalmarkers #nola #lahistoricalmarkers #history
I know I’m about to have so much less free time (first child is rapidly approaching), but I recently got #LAHistoricalMarkers compiling and running again.
It might be fun to do some #OCR on images to auto fill the descriptions. Anybody know of any good xplat OCR libraries for #ReactNative or #Expo?
I’d like to go the “on device” route if possible. If not, does #GoogleCloudPlatform still have the cheapest OCR service?
#lahistoricalmarkers #ocr #reactnative #expo #googlecloudplatform #dotnet #azurefunctions