26 Commits

Author SHA1 Message Date
dc3106b4a4 bump: v0.0.9 -> v0.0.10 2025-03-19 00:46:21 -04:00
bc0e8c55e3 revert: use npm ci 2025-03-19 00:43:10 -04:00
124ddc20df fix: use nix packages for linting 2025-03-19 00:35:56 -04:00
218da3aef8 build(nix): updated nix hashes 2025-03-19 00:35:35 -04:00
e18457bacd build(client): updated npm dependencies 2025-03-19 00:34:26 -04:00
afb85cec88 build(nix): updated nix hashes 2025-03-19 00:33:28 -04:00
4e96ee38ca build(client): updated npm dependencies 2025-03-19 00:32:16 -04:00
89129f3495 bump: v0.0.8 -> v0.0.9 2025-03-18 23:27:02 -04:00
f8fb729c03 fix: use cachix for release workflow as well 2025-03-18 23:22:47 -04:00
b906e614ba fix: use cachix because github cache sucks 2025-03-18 23:18:30 -04:00
645faf398e fix: rely entirely on nix packages 2025-03-18 22:53:05 -04:00
add5afb17c fix: use legaly peer deps? 2025-03-18 22:38:33 -04:00
ab4ccc3d46 build(nix): updated nix hashes 2025-03-18 22:35:51 -04:00
ed7489f53d build(client): updated npm dependencies 2025-03-18 22:34:36 -04:00
94366907d8 fix: install npm packages before linting 2025-03-18 22:32:02 -04:00
ef11ac81a3 feat: lint workflow 2025-03-18 22:26:01 -04:00
73e7c563e0 bump: v0.0.7 -> v0.0.8 2025-03-18 22:14:11 -04:00
cd3da0aa8f feat: go caching 2025-03-18 22:12:56 -04:00
6706330252 bump: v0.0.6 -> v0.0.7 2025-03-18 22:07:05 -04:00
2b03164307 feat: workflow caching 2025-03-18 22:05:36 -04:00
0ffc1cd7f9 bump: v0.0.5 -> v0.0.6 2025-03-18 21:53:16 -04:00
c418792653 fix: select all build files 2025-03-18 21:52:00 -04:00
8956317197 bump: v0.0.4 -> v0.0.5 2025-03-18 21:42:25 -04:00
2361602b62 fix: use different release action 2025-03-18 21:40:43 -04:00
eba0067e1e bump: 0.0.3 -> 0.0.4 2025-03-18 21:25:42 -04:00
8d78f79fe2 fix: use nix develop in build action 2025-03-18 21:24:19 -04:00
6 changed files with 86 additions and 41 deletions

34
.github/workflows/lint.yml vendored Normal file
View File

@ -0,0 +1,34 @@
name: Lint Workflow
on:
push:
branches:
- main
pull_request:
branches:
- main
jobs:
release:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install Nix
uses: cachix/install-nix-action@v31
with:
nix_path: nixpkgs=channel:nixos-unstable
- name: Use Cachix
uses: cachix/cachix-action@v16
with:
name: trevstack
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'
- name: Install NPM Packages
working-directory: ./client
run: npm ci --legacy-peer-deps
- name: Lint
run: nix develop --command ts-lint

View File

@ -19,18 +19,18 @@ jobs:
uses: cachix/install-nix-action@v31
with:
nix_path: nixpkgs=channel:nixos-unstable
- name: Use Cachix
uses: cachix/cachix-action@v16
with:
name: trevstack
authToken: '${{ secrets.CACHIX_AUTH_TOKEN }}'
- name: Build
run: ts-build
run: nix develop --command ts-build
- name: Create release
uses: googleapis/release-please-action@v4
id: release
- name: Create Release
uses: softprops/action-gh-release@v2
with:
release-type: simple
- name: Upload release artifacts
if: ${{ steps.release.outputs.release_created }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: gh release upload ${{ steps.release.outputs.tag_name }} ./build/.
files: |-
build/**

View File

@ -4,6 +4,7 @@ pnpm-lock.yaml
yarn.lock
# Build output
build
.svelte-kit
node_modules

View File

@ -1,12 +1,12 @@
{
"name": "trevstack",
"version": "0.0.3",
"version": "0.0.10",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "trevstack",
"version": "0.0.3",
"version": "0.0.10",
"devDependencies": {
"@connectrpc/connect": "^2.0.2",
"@connectrpc/connect-web": "^2.0.2",
@ -32,7 +32,7 @@
"svelte-sonner": "^0.3.28",
"tailwind-merge": "^3.0.2",
"tailwindcss": "^4.0.13",
"tw-animate-css": "^1.2.3",
"tw-animate-css": "^1.2.4",
"typescript": "^5.8.2",
"typescript-eslint": "^8.26.1",
"vite": "^6.2.2"
@ -6184,9 +6184,9 @@
"license": "MIT"
},
"node_modules/nanoid": {
"version": "5.1.4",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.1.4.tgz",
"integrity": "sha512-GTFcMIDgR7tqji/LpSY8rtg464VnJl/j6ypoehYnuGb+Y8qZUdtKB8WVCXon0UEZgFDbuUxpIl//6FHLHgXSNA==",
"version": "5.1.5",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-5.1.5.tgz",
"integrity": "sha512-Ir/+ZpE9fDsNH0hQ3C68uyThDXzYcim2EqcZ8zn8Chtt1iylPT9xXJB0kPCnqzgcEGikO9RxSrh63MsmVCU7Fw==",
"dev": true,
"funding": [
{
@ -6486,9 +6486,9 @@
}
},
"node_modules/postcss/node_modules/nanoid": {
"version": "3.3.10",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.10.tgz",
"integrity": "sha512-vSJJTG+t/dIKAUhUDw/dLdZ9s//5OxcHqLaDWWrW4Cdq7o6tdLIczUkMXt2MBNmk6sJRZBZRXVixs7URY1CmIg==",
"version": "3.3.11",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.11.tgz",
"integrity": "sha512-N8SpfPUnUp1bK+PMYW8qSWdl9U+wwNWI4QKxOYDy9JAro3WMX7p2OeVRF9v+347pnakNevPmiHhNmZ2HbFA76w==",
"dev": true,
"funding": [
{
@ -7417,11 +7417,14 @@
"license": "0BSD"
},
"node_modules/tw-animate-css": {
"version": "1.2.3",
"resolved": "https://registry.npmjs.org/tw-animate-css/-/tw-animate-css-1.2.3.tgz",
"integrity": "sha512-G2p4jSSGH21vb/slt1iCAqPL2XmFM2/9LT/I8Z2XHUcHbLGaN7YPx3tg8PkU0QAVgG9hzkAGh0cTrCwFjbZrkg==",
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/tw-animate-css/-/tw-animate-css-1.2.4.tgz",
"integrity": "sha512-yt+HkJB41NAvOffe4NweJU6fLqAlVx/mBX6XmHRp15kq0JxTtOKaIw8pVSWM1Z+n2nXtyi7cW6C9f0WG/F/QAQ==",
"dev": true,
"license": "MIT"
"license": "MIT",
"funding": {
"url": "https://github.com/sponsors/Wombosvideo"
}
},
"node_modules/type-check": {
"version": "0.4.0",

View File

@ -1,7 +1,7 @@
{
"name": "trevstack",
"private": true,
"version": "0.0.3",
"version": "0.0.10",
"type": "module",
"scripts": {
"dev": "vite dev",
@ -38,7 +38,7 @@
"svelte-sonner": "^0.3.28",
"tailwind-merge": "^3.0.2",
"tailwindcss": "^4.0.13",
"tw-animate-css": "^1.2.3",
"tw-animate-css": "^1.2.4",
"typescript": "^5.8.2",
"typescript-eslint": "^8.26.1",
"vite": "^6.2.2"

View File

@ -15,7 +15,7 @@
let
pname = "trevstack";
version = "0.0.3";
version = "0.0.10";
pkgs = import nixpkgs {
inherit system;
@ -38,7 +38,7 @@
pname = "${pname}-client";
inherit version;
src = gitignore.lib.gitignoreSource ./client;
npmDepsHash = "sha256-xVOEO9mCQEzIAp2jFNrQMUcaU9gzeQSJNM7aSyLkxrI=";
npmDepsHash = "sha256-GQNChIR5kEInghn/W3t8BVnOv5X4pvn/SNCXyFnvLNo=";
nodejs = pkgs.nodejs_22;
npmFlags = [ "--legacy-peer-deps" ];
@ -48,6 +48,17 @@
'';
};
server = pkgs.buildGoModule {
inherit client pname version;
src = gitignore.lib.gitignoreSource ./server;
vendorHash = "sha256-sANPwYLGwMcWyMR7Veho81aAMfIQpVzZS5Q9eveR8o8=";
env.CGO_ENABLED = 0;
preBuild = ''
cp -r ${client} internal/handlers/client/client
'';
};
in
{
devShells.default = pkgs.mkShell {
@ -160,10 +171,10 @@
cd "''${git_root}"
nix-update --flake --version "''${next_version}" --subpackage client default
git add flake.nix
git commit -m "bump: ${version} -> ''${next_version}"
git commit -m "bump: v${version} -> v''${next_version}"
git push origin main
git tag -a "v''${next_version}" -m "bump: ${version} -> ''${next_version}"
git tag -a "v''${next_version}" -m "bump: v${version} -> v''${next_version}"
git push origin "v''${next_version}"
'';
})
@ -174,11 +185,17 @@
text = ''
git_root=$(git rev-parse --show-toplevel)
cd "''${git_root}"
echo "Linting protobuf"
buf lint
cd "''${git_root}/client"
echo "Linting client"
npm run check
npm run lint
cd "''${git_root}/server"
echo "Linting server"
revive -config revive.toml -formatter friendly ./...
'';
})
@ -215,17 +232,7 @@
packages = rec {
default = trevstack;
trevstack = pkgs.buildGoModule {
inherit client pname version;
src = gitignore.lib.gitignoreSource ./server;
vendorHash = "sha256-sANPwYLGwMcWyMR7Veho81aAMfIQpVzZS5Q9eveR8o8=";
env.CGO_ENABLED = 0;
preBuild = ''
cp -r ${client} internal/handlers/client/client
'';
};
trevstack = server;
trevstack-client = client;
};
}