Setup project with devenv instead of docker
This commit is contained in:
3
.envrc
Normal file
3
.envrc
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
source_url "https://raw.githubusercontent.com/cachix/devenv/82c0147677e510b247d8b9165c54f73d32dfd899/direnvrc" "sha256-7u4iDd1nZpxL4tCzmPG0dQgC5V+/44Ba+tHkPob1v2k="
|
||||||
|
|
||||||
|
use devenv
|
14
.gitignore
vendored
14
.gitignore
vendored
@@ -1 +1,15 @@
|
|||||||
|
# eleventy output
|
||||||
dist
|
dist
|
||||||
|
|
||||||
|
# Devenv
|
||||||
|
.devenv*
|
||||||
|
devenv.local.nix
|
||||||
|
|
||||||
|
# direnv
|
||||||
|
.direnv
|
||||||
|
|
||||||
|
# pre-commit
|
||||||
|
.pre-commit-config.yaml
|
||||||
|
|
||||||
|
# NodeJS
|
||||||
|
node_modules/
|
100
devenv.lock
Normal file
100
devenv.lock
Normal file
@@ -0,0 +1,100 @@
|
|||||||
|
{
|
||||||
|
"nodes": {
|
||||||
|
"devenv": {
|
||||||
|
"locked": {
|
||||||
|
"dir": "src/modules",
|
||||||
|
"lastModified": 1735883199,
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "devenv",
|
||||||
|
"rev": "d67d04ae2dd3bc3723e615003034ba752e8db8c3",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"dir": "src/modules",
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "devenv",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"flake-compat": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1733328505,
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"rev": "ff81ac966bb2cae68946d5ed5fc4994f96d0ffec",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "edolstra",
|
||||||
|
"repo": "flake-compat",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"gitignore": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"pre-commit-hooks",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1709087332,
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "gitignore.nix",
|
||||||
|
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "gitignore.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"nixpkgs": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1733477122,
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "devenv-nixpkgs",
|
||||||
|
"rev": "7bd9e84d0452f6d2e63b6e6da29fe73fac951857",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "cachix",
|
||||||
|
"ref": "rolling",
|
||||||
|
"repo": "devenv-nixpkgs",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"pre-commit-hooks": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-compat": "flake-compat",
|
||||||
|
"gitignore": "gitignore",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1735882644,
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "pre-commit-hooks.nix",
|
||||||
|
"rev": "a5a961387e75ae44cc20f0a57ae463da5e959656",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "cachix",
|
||||||
|
"repo": "pre-commit-hooks.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": {
|
||||||
|
"inputs": {
|
||||||
|
"devenv": "devenv",
|
||||||
|
"nixpkgs": "nixpkgs",
|
||||||
|
"pre-commit-hooks": "pre-commit-hooks"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"root": "root",
|
||||||
|
"version": 7
|
||||||
|
}
|
20
devenv.nix
Normal file
20
devenv.nix
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
{ pkgs, lib, config, inputs, ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
# https://devenv.sh/packages/
|
||||||
|
packages = [
|
||||||
|
pkgs.git
|
||||||
|
pkgs.yaml-language-server
|
||||||
|
pkgs.typescript-language-server
|
||||||
|
pkgs.nodePackages.prettier
|
||||||
|
];
|
||||||
|
|
||||||
|
# https://devenv.sh/languages/
|
||||||
|
# languages.rust.enable = true;
|
||||||
|
languages.javascript = {
|
||||||
|
enable = true;
|
||||||
|
npm.enable = true;
|
||||||
|
npm.install.enable = true;
|
||||||
|
};
|
||||||
|
languages.nix.enable = true;
|
||||||
|
}
|
15
devenv.yaml
Normal file
15
devenv.yaml
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
# yaml-language-server: $schema=https://devenv.sh/devenv.schema.json
|
||||||
|
inputs:
|
||||||
|
nixpkgs:
|
||||||
|
url: github:cachix/devenv-nixpkgs/rolling
|
||||||
|
|
||||||
|
# If you're using non-OSS software, you can set allowUnfree to true.
|
||||||
|
# allowUnfree: true
|
||||||
|
|
||||||
|
# If you're willing to use a package that's vulnerable
|
||||||
|
# permittedInsecurePackages:
|
||||||
|
# - "openssl-1.1.1w"
|
||||||
|
|
||||||
|
# If you have more than one devenv you can merge them
|
||||||
|
#imports:
|
||||||
|
# - ./backend
|
@@ -1,8 +0,0 @@
|
|||||||
FROM node:latest
|
|
||||||
|
|
||||||
WORKDIR /opt/app
|
|
||||||
|
|
||||||
RUN npm init -y
|
|
||||||
RUN npm install @11ty/eleventy
|
|
||||||
|
|
||||||
CMD [ "npx", "@11ty/eleventy" ]
|
|
33
justfile
33
justfile
@@ -1,34 +1,21 @@
|
|||||||
set shell := ["bash", "-c"]
|
set shell := ["bash", "-c"]
|
||||||
|
|
||||||
HOST_PORT := "1280"
|
PORT := "1280"
|
||||||
|
|
||||||
# List just commands by default
|
# List just commands by default
|
||||||
default:
|
default:
|
||||||
@just --list
|
@just --list
|
||||||
|
|
||||||
# Build the docker image
|
# Update development environment
|
||||||
docker-build:
|
update:
|
||||||
docker buildx build \
|
devenv update
|
||||||
-f ./docker/Dockerfile \
|
|
||||||
--tag 11ty:latest \
|
|
||||||
.
|
|
||||||
|
|
||||||
# Run development server
|
# Run development server
|
||||||
dev: docker-build
|
dev:
|
||||||
docker run \
|
npx @11ty/eleventy \
|
||||||
-it \
|
--serve \
|
||||||
-p {{HOST_PORT}}:8080 \
|
--port={{ PORT }};
|
||||||
-v ./src:/opt/app/src \
|
|
||||||
-v ./.eleventy.js:/opt/app/.eleventy.js \
|
|
||||||
11ty:latest \
|
|
||||||
npx @11ty/eleventy --serve
|
|
||||||
|
|
||||||
# Build static site files
|
# Build static site files
|
||||||
build-site: docker-build
|
build-site:
|
||||||
docker run \
|
npx @11ty/eleventy
|
||||||
-it \
|
|
||||||
-v ./src:/opt/app/src \
|
|
||||||
-v ./dist:/opt/app/dist \
|
|
||||||
-v ./.eleventy.js:/opt/app/.eleventy.js \
|
|
||||||
11ty:latest \
|
|
||||||
npx @11ty/eleventy
|
|
2448
package-lock.json
generated
Normal file
2448
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
5
package.json
Normal file
5
package.json
Normal file
@@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"dependencies": {
|
||||||
|
"@11ty/eleventy": "^3.0.0"
|
||||||
|
}
|
||||||
|
}
|
Reference in New Issue
Block a user