ALM - dgrebb/dgrebb.com GitHub Wiki
Application Lifecycle Management
All JavaScript portions of the project are managed via pnpm. The project requires Node 20, but will likely run on 16 and 18 with some tweaks.
Frontend
Vite, Svelte, and SvelteKit. Some component packages. A lot of marked use to output static HTML via SSG when run in production.
The project was set up with the assumption that one day SSR and Docker will be used to run real-time rendering and requests to the API.
For now, GitHub Actions run the SSG, sync them static site to S3, manipulates robots.txt (if deploying to production), cachebusts CloudFront, and runs BackstopJS after deployment for visual regression (if a production release this already happened in STG).
Backend
Strapi CMS. Nothing else to it really. PostgreSQL and Sharp are hard dependencies.
Docker
Docker houses Strapi and its dependencies. The image runs on ECS Fargate and is deployed via publish to AWS ECR.
Running/Testing Local Docker
The Docker image has a local configuration, which connects to PostgreSQL via host.docker.internal.
Utility scripts set the proper environment configuration based on args passed in. To build a local Docker image, run dg d b l, or dg docker build l - the l is for local.
After that, run dg d r l or dg docker run l. You should see:
❯ dg d r l
____ ___ ____ ____ ____ ____
( \ / __)( _ \( __)( _ \( _ \
) D (( (_ \ ) / ) _) ) _ ( ) _ (
(____/ \___/(__\_)(____)(____/(____/
v3.16.1
Setting Strapi .env...
Setting Docker environment variables...
Running local container...
[+] Running 2/0
✔ Network dgrebb-com_default Created 0.0s
✔ Container dgrebb-com-back-1 Created 0.0s
Attaching to back-1
back `|
back | > [email protected] start /app
back | > strapi start
back |
back |
back | Project information
back |
back | ┌────────────────────┬──────────────────────────────────────────────────┐
back | │ Time │ Sun Jan 21 2024 07:13:10 GMT+0000 (Coordinated … │
back | │ Launched in │ 1480 ms │
back | │ Environment │ development │
back | │ Process PID │ 33 │
back | │ Version │ 4.17.1 (node v20.11.0) │
back | │ Edition │ Community │
back | │ Database │ postgres │
back | └────────────────────┴──────────────────────────────────────────────────┘
back |
back | Actions available
back |
back | Welcome back!
back | To manage your project 🚀, go to the administration panel at:
back | http://localhost:1337/admin
Open up the CMS. Images won't work, FYA.