Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
9496b25
migrate to greenwood
thescientist13 Nov 24, 2023
11dbf65
posts API with mysql2 local dev support
thescientist13 Nov 25, 2023
ff9d1e3
add artists and albums APIs
thescientist13 Nov 25, 2023
e3525a6
add favicon
thescientist13 Nov 25, 2023
1118fbf
add events resource API endpoint
thescientist13 Nov 25, 2023
4c7f06e
contentful cache busting webhook
thescientist13 Nov 25, 2023
5d06b9c
clean up console log
thescientist13 Nov 25, 2023
62e4ccc
patch changes to protect POST publish endpoint
thescientist13 Dec 11, 2023
eed23c4
capture observed behavior for Node 20
thescientist13 Dec 11, 2023
3e7ed69
upgrade greenwood v0.31.0-alpha.0
thescientist13 Dec 6, 2024
3e39af8
upgrade contentful deps
thescientist13 Dec 6, 2024
cd6f3ff
tweak actions
thescientist13 Dec 6, 2024
a921fe8
move contentful to a dependency
thescientist13 Jan 9, 2025
abd7c4f
move contentful to a dependency
thescientist13 Jan 9, 2025
000985e
move contentful to a dependency
thescientist13 Jan 9, 2025
7d6e386
patch support for rollup workspace id resolving
thescientist13 Jan 10, 2025
bcb1c9c
refactor build workflow
thescientist13 Jan 10, 2025
5a07105
bump libsql version and move to dependencies
thescientist13 Jan 10, 2025
e032202
move AWS SDK to dependencies and optimize package ranger walking
thescientist13 Jan 10, 2025
4ecdaec
upgrade to ESLint 9
thescientist13 Jan 10, 2025
1ecec1a
remove undefined npm script
thescientist13 Jan 10, 2025
8bdb5d0
refactor event handlers
thescientist13 Jan 15, 2025
80bad65
patch support for rollup resolving directories
thescientist13 Jan 15, 2025
eb0ccd6
unpin contentful dependency
thescientist13 Jan 15, 2025
e4ebd77
patch support for recursive package.json walking
thescientist13 Jan 17, 2025
e9cedfe
document patch support for handling built-in modules
thescientist13 Jan 18, 2025
81f4eb7
bump to v0.31.0-alpha.5 and bump to Node 22
thescientist13 Jan 19, 2025
3923403
adopt basic TypeScript support for resource based APIs
thescientist13 Jan 24, 2025
5436330
adopt basic TypeScript support for resource based APIs
thescientist13 Jan 24, 2025
a2b4201
upgrade greenwood v0.31.0-alpha.6
thescientist13 Jan 26, 2025
b786a81
bump to greenwood v0.31.0
thescientist13 Jan 27, 2025
1312332
restore Arc with AWS adapter
thescientist13 Feb 21, 2025
93d0b47
upgrade to latest Greenwood with built-in TS support and AWS adapter
thescientist13 Mar 14, 2025
4f204c5
upgrade Lambdas to Node 22
thescientist13 Mar 14, 2025
000f741
upgrade latest architect
thescientist13 Mar 14, 2025
a476b63
patch support for missing API route rollup chunks
thescientist13 Mar 14, 2025
68a91f7
add debug logging
thescientist13 Mar 14, 2025
2faab46
add debug logging
thescientist13 Mar 14, 2025
348898c
patch test for request.json
thescientist13 Mar 14, 2025
73d2333
remove comment
thescientist13 Mar 21, 2025
0e17282
patch support for actual single file bundles
thescientist13 Mar 21, 2025
1119469
bump to alpha.8
thescientist13 Mar 30, 2025
f89b859
remove debug logging
thescientist13 Mar 30, 2025
0210752
bump alpha.9
thescientist13 Apr 5, 2025
72cfbf0
bump to v0.32.0
thescientist13 Apr 13, 2025
96d7670
restructure nested API route
thescientist13 May 17, 2025
4ced586
validated Prisma studio
thescientist13 May 17, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
220 changes: 0 additions & 220 deletions .eslintrc.js

This file was deleted.

20 changes: 10 additions & 10 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -1,20 +1,20 @@
name: Continuous Integration
name: Staging

on: [pull_request]

jobs:

build:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest

strategy:
matrix:
node: [18]
node: [22]

steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node }}
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node }}
- name: Installing project dependencies
Expand All @@ -23,12 +23,12 @@ jobs:
- name: Lint
run: |
npm run lint
# - name: Test
# run: |
# yarn test
- name: Deploy Staging
- name: Build
run: |
npm run build
- name: Deploy Preview
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
run: |
npm run arc deploy -- --staging
npm run deploy:staging
15 changes: 9 additions & 6 deletions .github/workflows/master.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Main Integration
name: Production

on:
push:
Expand All @@ -8,24 +8,27 @@ on:
jobs:

build:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest

strategy:
matrix:
node: [18]
node: [22]

steps:
- uses: actions/checkout@v1
- uses: actions/checkout@v4
- name: Use Node.js ${{ matrix.node }}
uses: actions/setup-node@v3
uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node }}
- name: Installing project dependencies
run: |
npm ci
- name: Build
run: |
npm run build
- name: Deploy Production
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
run: |
npm run arc deploy -- --production
npm run deploy:prod
6 changes: 5 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
.aws-output/
.env
.greenwood/
node_modules/
preferences.arc
.env
public/
sam.*
1 change: 1 addition & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
legacy-peer-deps=true
2 changes: 1 addition & 1 deletion .nvmrc
Original file line number Diff line number Diff line change
@@ -1 +1 @@
18.12.1
22.13.0
20 changes: 14 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,12 +35,12 @@ For running Prisma Studio.
|----------------------------------|-----------------|-------------------------------|
|`DATABASE_URL` | Local SQLite | All APIs except Events |


### Install

1. Clone the repo
1. Run `npm ci`
1. Run `npm run arc env`
1. Run `npm run prisma db push`
1. Run `npm start` to use the local Architect sandbox for development
1. Make a copy of _.env.local_ and rename it to _.env_

Expand All @@ -50,7 +50,7 @@ To use [Prisma Studio](https://www.prisma.io/studio), run `npm run studio`

### Albums

Data sourced from [**Turso**](https://turso.tech) for the **Album** resource type. Available at `/albums` internally and publicly as `/api/v2/albums`.
Data sourced from [**Turso**](https://turso.tech) for the **Album** resource type. Available at `/api/albums` locally and publicly as `/api/v2/albums`.

_Options:_
- `?id=xxx` - Filter by the `id` of the album
Expand All @@ -60,14 +60,14 @@ _Options:_

### Artists

Data sourced from [**Turso**](https://turso.tech) for the **Artist** resource type. Available at `/artists` internally and publicly as `/api/v2/artists`.
Data sourced from [**Turso**](https://turso.tech) for the **Artist** resource type. Available at `/api/artists` locally and publicly as `/api/v2/artists`.

_Options:_
- `?id=xxx` - Filter by the `id` of the artist

### Events

Structured events content sourced from [**Contentful**](https://contentful.com/) for the **Event** resource type. Available at `/events` internally and publicly as `/api/v2/events`.
Structured events content sourced from [**Contentful**](https://contentful.com/) for the **Event** resource type. Available at `/api/events` locally and publicly as `/api/v2/events`.

_Options:_
- `?id=xxx` - Filter by the `id` of the event
Expand All @@ -77,7 +77,15 @@ _Options:_

### Posts

Data sourced from [**Turso**](https://turso.tech) for the **Post** resource type. Available at `/posts` internally and publicly as `/api/v2/posts`.
Data sourced from [**Turso**](https://turso.tech) for the **Post** resource type. Available at `/api/posts` locally and publicly as `/api/v2/posts`.

_Options:_
- `?id=xxx` - Filter by the `id` of a post
- `?id=xxx` - Filter by the `id` of a post

## Release Management

With the appropriate AWS environment variables in place (either locally `export`ed, in GitHub Actions, or configured through Arc / AWS), the follow workflows are available and integrated into GitHub Actions

- `npm run deploy:sandbox` - Build the project and test with Arc's local sandbox
- `npm run deploy:staging` - Build and deploy for staging environment (runs on PRs)
- `npm run deploy:production` - Build and deploy for production environment (runs on merge into mainline)
Loading