Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
101 commits
Select commit Hold shift + click to select a range
a0d24aa
Events Table, Create/Edit Routes MVP (#1)
RileyChampion Jan 2, 2025
85ca5f9
Rename to lsd, cleanup
foltik Jan 2, 2025
9920a5e
Use release instead of prod profile
foltik Jan 2, 2025
5c29de5
more upgrades (#2)
foltik Jan 3, 2025
ae8506c
markdown post editor
foltik Jan 5, 2025
c6008bd
fix not logging full url
foltik Jan 5, 2025
e626e59
refactor data layer
foltik Jan 5, 2025
f8caac2
set server timezone to America/New_York
foltik Jan 5, 2025
92b5b44
use utc datetimes, add local tz config
foltik Jan 5, 2025
8452021
fix prod config.toml
foltik Jan 5, 2025
90419a3
update to axum 0.8
foltik Jan 6, 2025
e48a5ae
add smtp auth
foltik Jan 6, 2025
20cd8cd
add auth extractor
foltik Jan 6, 2025
bcd1c5e
add smtp credentials to deploy gha
foltik Jan 6, 2025
cb2afe6
add migrations table
foltik Jan 6, 2025
9ea78bb
add content_rendered to posts
foltik Jan 6, 2025
c39dbd1
add lists
foltik Jan 18, 2025
eec0dce
email tracking and post sending
foltik Jan 21, 2025
0b7f562
downgrade gha to ubuntu-22.04
foltik Jan 21, 2025
94a1e66
email unsubscribe links, markdown images with links, style tweaks
foltik Jan 21, 2025
f43cb73
style tweaks
foltik Jan 21, 2025
a3c5d8c
homepage tweaks
foltik Jan 21, 2025
2ec7166
tracking tweaks
foltik Jan 21, 2025
a222ab0
email ratelimit, skipping
foltik Jan 21, 2025
172641a
post: remove content_rendered
foltik Mar 4, 2025
1df5ab4
post-edit: validate title, url, author
foltik Mar 4, 2025
850b76b
add post list page
foltik Mar 10, 2025
908b057
post-edit: toggleable preview
foltik Mar 10, 2025
3d2bab7
post-edit: improved markdown tools
foltik Mar 10, 2025
4a88736
post-edit: ajax saving
foltik Mar 10, 2025
44fa49b
clippy
foltik Mar 10, 2025
d57591d
posts: WYSIWIG editor
foltik Mar 29, 2025
2e1777c
posts: errata
foltik Mar 29, 2025
edb48a4
Use built-in sqlx migration support instead of custom solution
swlody Mar 31, 2025
3a5d637
use sqlx macros for compile-time validity checks
swlody Mar 29, 2025
807586d
update readme
swlody Mar 31, 2025
7e5ff58
automate transition to new migrations method
swlody Mar 31, 2025
2cc4ad4
prepared SQLx to fix CI
swlody Mar 31, 2025
ecae655
Remove .env file from VC to force SQLx offline compilation
swlody Mar 31, 2025
99ddb48
Merge pull request #13 from swlody/sqlx_migrations
swlody Apr 1, 2025
e8a2dd9
fix date formatting (#14)
swlody Apr 1, 2025
3e6196c
more detailed logs (#16)
swlody Apr 3, 2025
ce8e7f8
basic database seeding functionality (#15)
swlody Apr 3, 2025
ad1a7ec
doc: Update README with sqlx instructions (#17)
hiamani Apr 3, 2025
3fe4829
checkin .env and enable SQLX_OFFLINE in CI (#18)
swlody Apr 3, 2025
df35e8b
Add TailwindCSS (#19)
hiamani Apr 4, 2025
b072566
Found a bug resetting up project with the dev.toml using seed_data.js…
RileyChampion Apr 4, 2025
f0ba6fc
add prettier formatting and consolidate frontend resources (#21)
swlody Apr 5, 2025
e032a59
random tweaks
foltik Apr 5, 2025
e883361
fix prettier actions
foltik Apr 5, 2025
eb969bb
Use node in GHA
foltik Apr 5, 2025
ed50a9a
editor: sticky toolbar
foltik Apr 7, 2025
53d2319
editor: disable formatting on paste
foltik Apr 7, 2025
e1aa147
editor: save local changes in localStorage
foltik Apr 7, 2025
f700c5f
posts: rename routes
foltik Apr 7, 2025
f5977dd
migrate templating engine to askama (#22)
swlody Apr 8, 2025
b7f3e1c
enable deploy on workflow dispatch
foltik Apr 8, 2025
aa8df98
convert templating engine to askama take 2 (#26)
swlody Apr 8, 2025
5445ab6
Add admin route and page with basic view. Looking to expand on what a…
RileyChampion Apr 9, 2025
cb5146e
update query cache
RileyChampion Apr 10, 2025
9a65b66
Testing fix for cross-compile
RileyChampion Apr 10, 2025
53fd908
Fix for error in cross test when installing arch-linux (#31)
RileyChampion Apr 10, 2025
290e48a
Bug/fix cross compile apt install error (#32)
RileyChampion Apr 10, 2025
d33657e
error pages (#27)
swlody Apr 11, 2025
469f051
temp: fix broken 'View this post on the web' links in posts/email.html
foltik Apr 16, 2025
10e388e
Fix broken email.html styles
foltik Apr 16, 2025
4031e0e
More logging in email send route
foltik Apr 16, 2025
f4e4ee6
Unsubscribe via POST request
foltik Apr 16, 2025
a127b5a
Fix email.html post URL
foltik Apr 16, 2025
b7e1a3f
Make User first_name and last_name nullable
foltik Apr 16, 2025
2b0bf04
Add list signup form
foltik Apr 17, 2025
4742062
Fix list edit JOIN
foltik Apr 17, 2025
2643847
Fix sqlx
foltik Apr 17, 2025
6975037
Merged in main, added styling to the admin view, added UserView to al…
RileyChampion Apr 18, 2025
2d28cd8
Fixed prittier, lint and clippy formatting
RileyChampion Apr 18, 2025
b3909b3
more changes to overview dashboard, added users dashboard, styling to…
RileyChampion Apr 20, 2025
c3dbd18
Actually run migrations
swlody Apr 17, 2025
a4ba2df
?
swlody Apr 17, 2025
1f211e9
await
swlody Apr 17, 2025
b34c138
Added middleware layer to have only admin users access dashboard, cha…
RileyChampion Apr 25, 2025
01f10fb
Fix css
RileyChampion Apr 25, 2025
e223997
Refactor Styles (#30)
hiamani Apr 26, 2025
bf28fdc
feat: posts/send styles
hiamani Apr 26, 2025
47a69ff
Better confirmation page
foltik Apr 26, 2025
3ace71a
Simplify routing, views, imports
foltik Apr 27, 2025
086588e
Fix unsubscribe button
foltik Apr 27, 2025
56e8322
fix: Actually confirm post delete button
hiamani Apr 27, 2025
701f2da
Fixes to the graph and styling and have the links on the side link to…
RileyChampion Apr 30, 2025
671f808
Add reply_to email config option
foltik May 1, 2025
9b176ab
Inital styling for the users table
RileyChampion May 1, 2025
71ab73f
Merge main and fix admin route
RileyChampion May 2, 2025
4cc4fb6
Restyling user table and buttons
RileyChampion May 2, 2025
634bdfa
Misc cleanup
foltik May 3, 2025
4a2c396
Improved email sending progress UX
foltik May 29, 2025
cb86f1d
Add query string to bust css cache
foltik May 29, 2025
421d7f2
feat: Add Ctrl/Cmd + i/b/u shortcuts to posts editor
hiamani May 8, 2025
14e0917
chore: Formatting
hiamani May 9, 2025
83071a4
Simplify email sending code
foltik May 29, 2025
3cb93ee
Add functionality to give users roles, delete users and pagination ch…
RileyChampion Jun 2, 2025
986d4ad
Merge branch 'main' into rchamp/admin-portal
RileyChampion Jun 6, 2025
75f8464
prepared additional sql queries
RileyChampion Jun 6, 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
1 change: 1 addition & 0 deletions .env
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
DATABASE_URL=sqlite://db.sqlite
29 changes: 21 additions & 8 deletions .github/workflows/deploy.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,12 @@ name: Deploy
on:
push:
branches: [main]
workflow_dispatch: {}

jobs:
deploy:
name: Deploy
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
permissions:
contents: read
steps:
Expand All @@ -16,14 +17,26 @@ jobs:
targets: aarch64-unknown-linux-gnu
- uses: Swatinem/rust-cache@v2
- name: install gcc-aarch64-linux-gnu
run: sudo apt install -y gcc-aarch64-linux-gnu
- uses: webfactory/ssh-agent@v0.9.0
run: sudo apt update && sudo apt install -y gcc-aarch64-linux-gnu

- uses: actions/setup-node@v4
with:
ssh-private-key: ${{ secrets.SSH_KEY }}
- name: ssh-keyscan
node-version: 23
- run: npm ci
- run: npm run build:styles.min

- name: Setup SSH key
run: |
mkdir -p ~/.ssh
ssh-keyscan wlsd.lightandsound.design > ~/.ssh/known_hosts
mkdir ~/.ssh
chmod 700 ~/.ssh
echo "${{ secrets.ROOT_SSH_PRIVKEY }}" > ~/.ssh/id_ed25519
chmod 600 ~/.ssh/id_ed25519
ssh-keyscan beta.lightandsound.design > ~/.ssh/known_hosts
chmod 600 ~/.ssh/known_hosts

- name: deploy
run: scripts/deploy.sh ec2-user@wlsd.lightandsound.design
run: scripts/deploy.sh ec2-user@beta.lightandsound.design
env:
SMTP_USERNAME: ${{ secrets.SMTP_USERNAME }}
SMTP_PASSWORD: ${{ secrets.SMTP_PASSWORD }}
SQLX_OFFLINE: true
31 changes: 24 additions & 7 deletions .github/workflows/test.yaml
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
name: Test
on:
pull_request:
push:
branches: ["*"]

jobs:
test:
name: Test
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
permissions:
contents: read
env:
SQLX_OFFLINE: true
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
Expand All @@ -18,19 +18,34 @@ jobs:

rustfmt:
name: Format
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
permissions:
contents: read
env:
SQLX_OFFLINE: true
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
- run: cargo fmt --check

prettier:
name: Format frontend
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 23
- run: npm ci
- run: npm run format:check

clippy:
name: Lint
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
permissions:
contents: read
env:
SQLX_OFFLINE: true
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
Expand All @@ -39,15 +54,17 @@ jobs:

cross:
name: Cross-compile
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
permissions:
contents: read
env:
SQLX_OFFLINE: true
steps:
- uses: actions/checkout@v4
- uses: dtolnay/rust-toolchain@stable
with:
targets: aarch64-unknown-linux-gnu
- uses: Swatinem/rust-cache@v2
- name: install gcc-aarch64-linux-gnu
run: sudo apt install -y gcc-aarch64-linux-gnu
run: sudo apt update && sudo apt install -y gcc-aarch64-linux-gnu
- run: cargo build --target aarch64-unknown-linux-gnu
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,7 @@
Cargo.lock
*.sqlite
*.sqlite-*
.DS_Store
node_modules
frontend/static/dist
deno.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading