{"@attributes":{"version":"2.0"},"channel":{"title":"juftin","link":"https:\/\/juftin.com\/","description":"Recent content on juftin","generator":"Hugo -- gohugo.io","language":"en","lastBuildDate":"Tue, 09 Jan 2024 00:00:00 +0000","item":[{"title":"hatch's missing lockfile capability","link":"https:\/\/juftin.com\/posts\/2024-01-09-hatch-pip-compile\/","pubDate":"Tue, 09 Jan 2024 00:00:00 +0000","guid":"https:\/\/juftin.com\/posts\/2024-01-09-hatch-pip-compile\/","description":"I&rsquo;m a huge fan of using hatch to manage my Python projects. It lets me define my projects with a single pyproject.toml file and define all of my extra environments and scripts in the same place (i.e testing \/ linting \/ docs). One big thing it&rsquo;s missing though is an integration with lockfiles.\nThe tool&rsquo;s author, @ofek, has been very clear this feature will eventually be added to hatch, but in the meantime I&rsquo;ve created a plugin that adds this functionality today: hatch-pip-compile."},{"title":"Chat with LLMs from the command line","link":"https:\/\/juftin.com\/posts\/2023-09-26-llm-term\/","pubDate":"Tue, 26 Sep 2023 00:00:00 +0000","guid":"https:\/\/juftin.com\/posts\/2023-09-26-llm-term\/","description":"llm-term Chat with LLM models directly from the command line.\nScreen Recording Your browser does not support the video tag. Installation pipx install llm-term Usage Then, you can chat with the model directly from the command line:\nllm-term llm-term works with multiple LLM providers, but by default it uses OpenAI. Most providers require extra packages to be installed, so make sure you read the Providers section below. To use a different provider, you can set the --provider \/ -p flag:"},{"title":"API starterpack with zoo","link":"https:\/\/juftin.com\/posts\/2023-08-23-zoo\/","pubDate":"Wed, 23 Aug 2023 00:00:00 +0000","guid":"https:\/\/juftin.com\/posts\/2023-08-23-zoo\/","description":"zoo The zoo project \ud83e\udd81\ud83d\udc3c\ud83d\udc28, an asynchronous zoo API powered by FastAPI, SQLAlchemy 2.0, Pydantic v2, and Alembic. zoo is a simple yet robust API example that allows you to manage a zoo. It utilizes modern tools and practices, including a production-ready server (Uvicorn), modern SQL ORM (SQLAlchemy 2.0), data validation (Pydantic v2), and database migrations (Alembic). This project serves as an excellent starting point for building your own API, outlining the basic structure of an API project and providing examples of implementing common features."},{"title":"a friendly file browser for your terminal","link":"https:\/\/juftin.com\/posts\/2023-05-03-browsr\/","pubDate":"Wed, 03 May 2023 00:00:00 +0000","guid":"https:\/\/juftin.com\/posts\/2023-05-03-browsr\/","description":"browsr browsr \ud83d\uddc2\ufe0f is a pleasant file explorer in your terminal. It&rsquo;s a command line TUI (text-based user interface) application that empowers you to browse the contents of local and remote filesystems with your keyboard or mouse.\nYou can quickly navigate through directories and peek at files whether they&rsquo;re hosted locally, in GitHub, over SSH, in AWS S3, Google Cloud Storage, or Azure Blob Storage. View code files with syntax highlighting, format JSON files, render images, convert data files to navigable datatables, and more."},{"title":"My Personal Cookiecutter Template","link":"https:\/\/juftin.com\/posts\/2022-08-17-cookiecutter-template-intro\/","pubDate":"Wed, 17 Aug 2022 00:00:00 +0000","guid":"https:\/\/juftin.com\/posts\/2022-08-17-cookiecutter-template-intro\/","description":"cookiecutter-python Creating a new Python project can be a daunting task, especially when it comes to setting up all the necessary development and deployment tools. This is where my Cookiecutter Python template comes into play. This template simplifies the process of setting up a new Python project, allowing developers to focus on writing code rather than wrestling with configuration.\nWhat is Cookiecutter? Cookiecutter is a command-line utility that creates projects from project templates."},{"title":"Let's talk about camply","link":"https:\/\/juftin.com\/posts\/2022-05-03-lets-talk-about-camply\/","pubDate":"Tue, 03 May 2022 00:00:00 +0000","guid":"https:\/\/juftin.com\/posts\/2022-05-03-lets-talk-about-camply\/","description":"If you don&rsquo;t already know, camply is an open-source Python project that I created a little while ago that helps people to find and snag last minute cancellations at campgrounds all around the USA.\nI got the idea for camply when my partner and I took a road trip last summer. When we started planning campgrounds to stay at inside of National Parks during our trip, we quickly discovered that campsites at busy destinations like Yellowstone and Glacier are a hot commodity and totally booked out."},{"title":"I guess I have a blog now","link":"https:\/\/juftin.com\/posts\/2022-02-08-welcome\/","pubDate":"Tue, 08 Feb 2022 00:00:00 +0000","guid":"https:\/\/juftin.com\/posts\/2022-02-08-welcome\/","description":"When I was setting up my portfolio site I realized that it also has some pretty nifty blogging capabilities too. Well&hellip; I guess I have a blog now.\nI&rsquo;m not typically one to channel my energy through writing so I don&rsquo;t expect to be extremely active on here but it&rsquo;s nice to have a venue where I can record my thoughts from time to time.\nIn the meantime I&rsquo;ll begin to work on putting together some more content to showcase some of my open source work."},{"title":{},"link":"https:\/\/juftin.com\/design\/","pubDate":"Mon, 01 Jan 0001 00:00:00 +0000","guid":"https:\/\/juftin.com\/design\/","description":"design by juftin Residential design by juftin. Let&rsquo;s talk about freshening up your space.\nWelcome to my world of interior design, where creativity meets functionality. With a passion for transforming spaces into personalized havens, I am dedicated to bringing your vision to life through innovative and timeless design solutions. Let&rsquo;s collaborate to create a home that reflects your unique style and enhances your everyday living experience."},{"title":{},"link":"https:\/\/juftin.com\/links\/","pubDate":"Mon, 01 Jan 0001 00:00:00 +0000","guid":"https:\/\/juftin.com\/links\/","description":"Project Links In no particular order, here are some links to my various open source projects.\ncamply browsr cookiecutter-python llm-term dotfiles hatch-pip-compile dotfiles lunchable lunchable-pushlunch lunchable-primelunch lunchable-splitlunch media-center textual-universal-directorytree zoo ridbPy recdotgov-client FastApp "},{"title":{},"link":"https:\/\/juftin.com\/work\/","pubDate":"Mon, 01 Jan 0001 00:00:00 +0000","guid":"https:\/\/juftin.com\/work\/","description":"Interested in working together? If you&rsquo;re interested in my work as a software engineer: get in touch and\/or learn more on my LinkedIn.\nWhat I&rsquo;m Working On In my free time I try to build tools and software that spark joy \u2728. Below are a few of my more public facing GitHub repositories and some details about the projects.\ncamply camply, the campsite finder \u26fa\ufe0f, is a tool to help you book an online campground."},{"title":"who's juftin?","link":"https:\/\/juftin.com\/about\/","pubDate":"Mon, 01 Jan 0001 00:00:00 +0000","guid":"https:\/\/juftin.com\/about\/","description":"Hey, I&rsquo;m juftin (Justin Flannery) \ud83d\udc4b I&rsquo;m a software engineer and Python developer with a focus on platform engineering and machine learning operations - based out of Denver, Colorado, USA.\nMy work with data has spanned from being on the front lines as an analyst and data scientist, building out data platforms, architecting machine learning recommendation systems, and working on scalable applications as a backend and platform engineer. Currently, I work as part of an engineering team building clinical software products with AI and machine learning."}]}}