blog

A Month Of Upgrades

Python
Auth0
API
AWS
Astro

A month of focusing on upgrades to existing site features! Now there is more speed, efficiency, and better features throughout the site.
2/28/2025

A beautifully rare filet steak

Upgrading Recipes

Our recipes page underwent a significant upgrade in the latest version of the website. We now have over 100 recipes, which caused the page to load very slowly. The way that the page previously worked was to fetch all of the recipe posts from the WordPress blog before rendering any posts. If you had great internet, this wasn’t too bad. However, before loading the content, you had to wait for the page to return all 100+ recipes. I implemented a quick fix, which would fetch the most recent 10 recipes and the remaining ones afterward. Now content was rendering much faster, and it would fetch the rest while you were occupied with the first 10 recipes.

However, with Astro’s new content collections in Astro 5+, I wanted to implement the recipes into a content collection. Putting the recipes into a collection provides several benefits, and I can mainly take advantage of Astro’s static content feature. Astro fetches the recipes from the WordPress blog at build time and turns them into static content. Now, the real magic is that it sets the build date, and when you load the recipes page, it will make a fetch request to the WordPress site to pull anything posted after the build. Our recipes page is now hybrid, serving both server-rendered and static content for speed and network optimization! Another nice feature is that when you click the back button on a recipe, it will take you back to your previous page, not just to the first page of recipes.

Auth0 Integration Improvement

Don’t tell anyone, but my original implementation of Auth0 was a little patchwork. I used a couple of React components to handle the profile and login/logout buttons, where my issues were centered. The components were client-loaded, which began to cause problems with session management and security around the tokens. My primary issue with my original implementation was that I couldn’t get anything other than the auth0-react package to work with Astro.

Enter Cursor and the magic of $100m ARR! Also, the awesome update to Claude is now in version 3.7 with even more coding power. I was able to prompt Claude 3.7 through Cursor to get the Astro-auth package to work (finally). That allowed me to quickly implement Auth0 into my site and manage sessions. There are no longer React components for the login/logout buttons or the element on the /my-profile page. Don’t worry; all of the original functionality that I built is still there.

Learning Python

the Boot dot dev logo

Even though I love using LLMs for coding, it was time for me to start learning Python. Most of what I need to write for my AI workloads is Python, which LLMs are good at. However, I should have knowledge of the language so I can work with the LLMs better. I have tried various online coding classes, but they never stuck with me. A friend recommended I check out Boot.dev, and I am glad I did. Their gamified back-end developer course has been great for me so far.

I have completed the first 4 (out of 22) courses and their Kubernetes course. Course 5 is where they start to get into more than just the basics of Python, and I am looking forward to getting into it! I plan to continue building better web scrapers, train my own models, set up better RAG pipelines, and do whatever I can find that is cool! The AI craze still burns bright for me, and I can’t wait to have more knowledge to use to advance my skills.

Upgraded Projects Pages

A preview of a template project featuring the title, the progress bar, a summary, featured skills, and an image

The first iteration was a simple MVP (minimum viable product). In this latest site release, I significantly upgraded the pages for my project portfolio. The prominent feature is that there is now a Featured Project at the top, providing more info and sitting prominently featured. There are still all of the other—not so lesser—projects below it. The significant change is inside the projects; they don’t look just like a blog post anymore.

To make it feel more like a portfolio, I added features specific to projects to the page. You can now see the problem statement, requirements, outcome metrics, project timeline, and more! This took building a template based on research from other project/portfolio pages I found on the interwebs. My page is unique; it’s more of an accumulation of features I saw that I liked. My goal for the page was for readers to get a quick overview, but if they wanted the whole story, they could get it in the main text body. If you are still here, check out the new /projects page now!

Patch Notes for JustStewIt.com v2.9.7

  • Upgraded to Astro 5.4
  • Upgraded recipes page
    • Content Collection created
    • All current posts rendered as static content on build
    • New posts after build rendered by the server on page load
    • Basic caching added
  • Upgraded Auth0 integration
    • Removed React components
    • Created new Astro components
  • Upgrade projects page
    • Reformatted the main projects page layout to include a featured project
    • Reformatted the individual projects to have project specific layout
  • Plenty of new recipes are available on /recipes pages, and are constantly updated between versions
Blog