Portfolio for all things Jim. Please enjoy yourself.
This project uses asdf for version management. The .tool-versions file specifies the required Node.js and pnpm versions.
Install asdf and the required plugins:
# Install asdf (see https://asdf-vm.com/guide/getting-started.html)
# Add plugins
asdf plugin add nodejs
asdf plugin add pnpm
# Install versions from .tool-versions
asdf installInstall dependencies:
pnpm installStart the development server:
pnpm run devThen navigate to the route provided in console (usually http://localhost:5173).
# Build for production
pnpm run build
# Preview production build locally
pnpm run preview
# Run linter
pnpm run lint
# Format code with Prettier
pnpm run prettier
# Check Prettier formatting without making changes
pnpm run check-prettier
# Install dependencies (frozen lockfile for CI)
pnpm run ciYou can view up to date main branch changes at https://jimsegal.com
I have had the domain and putting up interesting (to me) projects here since 2013 (maybe longer, but that was the oldest commit I could find). In true software tradition, I had built a frankenstien of a website and supporting services.
The following was the daily driver of jimsegal.com from Aug 28, 2013.
- landing page and some others - vanilla html, javascript, css, deployed through aws s3 bucket
- projects.jimsegal.com - react SPA, javascript, deployed through github pages
- api.jimsegal.com - node, express, javascript, deployed through heroku
- railway-admin.jimsegal.com - headless cms by strapi.io, deployed through railway.app
I knew this was a mess and needed to be consolidated. I knew this had to be rewritten.
Previous attempts to rewrite:
-
One of my attemps to was actually a long running feature branch:
-
Additional rewrite in elixir until I realized I don't need all the overhead of a full server and database for what I'm doing with the site now.