feat: authentication with OAuth
All checks were successful
ci / ci (push) Successful in 19m53s

This commit is contained in:
2025-12-07 21:27:23 +01:00
parent 4e9b4a19b8
commit ea28a87860
25 changed files with 3143 additions and 1468 deletions

View File

@@ -1,13 +1,17 @@
{
inputs,
pkgs,
self,
...
}:
inputs.devenv.lib.mkShell {
inputs.devenv.lib.mkShell
{
inherit inputs pkgs;
modules = [
({pkgs, config, ...}: {
({
pkgs,
config,
...
}: {
packages = with pkgs; [
rustywind
nodePackages.prettier
@@ -16,6 +20,7 @@ inputs.devenv.lib.mkShell {
# Node
nodejs_24
nodePackages.pnpm
playwright-driver.browsers
pocketbase
];
@@ -32,6 +37,31 @@ inputs.devenv.lib.mkShell {
dev.exec = "${nodePackages.pnpm}/bin/pnpm dev";
};
env = let
browsers = (builtins.fromJSON (builtins.readFile "${pkgs.playwright-driver}/browsers.json")).browsers;
chromium-rev = (builtins.head (builtins.filter (x: x.name == "chromium") browsers)).revision;
in {
PLAYWRIGHT_BROWSERS_PATH = "${pkgs.playwright.browsers}";
PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS = true;
PLAYWRIGHT_NODEJS_PATH = "${pkgs.nodejs}/bin/node";
PLAYWRIGHT_LAUNCH_OPTIONS_EXECUTABLE_PATH = "${pkgs.playwright.browsers}/chromium-${chromium-rev}/chrome-linux/chrome";
};
scripts.intro.exec = ''
playwrightNpmVersion="$(pnpm show @playwright/test version)"
echo " Playwright nix version: ${pkgs.playwright.version}"
echo "📦 Playwright pnpm version: $playwrightNpmVersion"
if [ "${pkgs.playwright.version}" != "$playwrightNpmVersion" ]; then
echo " Playwright versions in nix (in devenv.yaml) and pnpm (in package.json) are not the same! Please adapt the configuration."
else
echo " Playwright versions in nix and npm are the same"
fi
echo
env | grep ^PLAYWRIGHT
'';
enterShell = ''
echo "🚀 Nuxt.js development environment loaded!"
echo "📦 Node.js version: $(node --version)"
@@ -39,6 +69,7 @@ inputs.devenv.lib.mkShell {
echo ""
echo "Run 'pnpm install' to install dependencies"
echo "Run 'pnpm dev' to start the development server"
intro
'';
})
];