Service note: if you want to get started with VueJS, take a look at https://vueschool.io, where all the training videos are freely available for 48 hours (and good luck finding the right one to start with, there are so many).
Note de service : si vous voulez vous mettre à VueJS faites un tour sur https://vueschool.io qui propose l'intégralité de ses vidéos de formation en accès libre pendant 48h (et bon courage pour trouver celle par quoi commencer tellement y en a).
Previously, I wrote about my idea to use the GitHub API to create a photo blog with its content completely in Git commits. Later, I tweaked the idea to replace the API with CI/CD actions. Since then, I have tried many things that didn’t work. I finally declared it done for now, though. If you want to check out the code behind JWS Pictures, it is all available on GitHub.
What worked
I started the process with three goals:
The design meets those three goals, but I had to figure out what would be a bridge too far for the APIs.
There are six static data files:
There is a “photos” folder in the project, and separate year sub-folders are inside of that. When you commit an image file into a year sub-folder, it starts a GitHub Actions (just a CI/CD Pipeline) workflow that:
The workflow has limitations. You can only commit and push one image file at a time and can’t batch them.
The Interface
When I wrote the site, I used Vue.js because “why not?” and PrimeVue because I hadn’t used it before. It uses “dark mode” or “light mode,” depending on the user’s system preferences. I also made it a Progressive Web App (PWA), so you can install it onto your device. The large images are 80% of the original, the medium-sized photos are 25% of the original, and the small image images are 10% of the original. The image displayed at the top of the page uses one of the three depending on the size of the user’s device.
I used Leaflet (a pretty cool library for generating mobile-friendly interactive maps) for the map at the bottom of the page. I’ll need to do a dedicated post about it at some point.
What didn’t work
A lot of things didn’t work. I tried using web mentions to allow people to comment on images. I attempted to use createWebHistory() to get rid of the # in the URL but had to use a hack with the 404 handler to do it. I tried to use a fediverse account and a Blusky account using Bridgy to auto-post photos, but I couldn’t get the bridge to work.
Some of these issues are due how I am hosting the site and some of it is due to the fact that I’m trying to use GoToSocial with it.
What do I want to do with it next?
I built this to have reasonably good APIs, so I have a few plans for it.
Have any questions, comments, etc? Please feel free to drop a comment.
https://jws.news/2024/the-final-form-for-my-photo-blog/
Ejemplo de Vuex con Nuxt https://myblog.clonbg.es/ejemplo-de-vuex-con-nuxt/ #Programación #VueJs https://clonbg.es
Manuales de VueJS https://myblog.clonbg.es/manuales-de-vuejs/ #Programación #VueJs https://clonbg.es
Update on UMU and Bottles Next
We’ve received many questions about UMU in Bottles and the current development of Bottles Next. In this brief article, we’ll try to answer these questions.
https://usebottles.com/posts/2024-09-24-umu-next/
Ejemplo de Vuex con Nuxt https://myblog.clonbg.es/ejemplo-de-vuex-con-nuxt/ #Programación #VueJs https://clonbg.es
🚀 Le cours "Débuter sur Vue.js" est en ligne !
Envie de maîtriser la création d'interfaces dynamiques et réactives avec Vue.js ? Rejoignez le cours dès aujourd'hui et commencez votre apprentissage !
Inscription ici 👉 https://formations.nouvelle-techno.fr
#VueJS #DéveloppementWeb #JavaScript #Apprentissage #Formation #Code #WebDev #Frontend #Informatique
Time to sum up the evaluation of #AlpineJS, #VueJS, #HTMX, and #Vaadin by a comparison and a decision tree to choose the best according to your needs.
https://blog.frankel.ch/ajax-ssr/7/
🚀 Introducing Stunning UI (Beta), A collection of interactive Tailwind CSS components built for Vue and Nuxt, 100% free. 100% open source.
https://x.com/robert_shaw_x/status/1847189626630689064
Discussions: https://discu.eu/q/https://x.com/robert_shaw_x/status/1847189626630689064
Manuales de VueJS https://myblog.clonbg.es/manuales-de-vuejs/ #Programación #VueJs https://clonbg.es
Ejemplo de Vuex con Nuxt https://myblog.clonbg.es/ejemplo-de-vuex-con-nuxt/ #Programación #VueJs https://clonbg.es