diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..6a18722 --- /dev/null +++ b/Makefile @@ -0,0 +1,26 @@ +PROJECT_DATA=$(shell pwd) +DOCKER_CONTAINER_NAME=ava-pro-node +DOCKER_CONTAINER_IMAGE=cl00e9ment/node.js-builder + +clear-cache: + + find . -maxdepth 1 -type d -name .parcel-cache -exec rm -rf {} \+ + + rm -rf packages/webextension/dist + +attach: + docker exec -it $(DOCKER_CONTAINER_NAME) sh + +sh: + + docker run --rm --name $(DOCKER_CONTAINER_NAME) -v $(PROJECT_DATA):/srv -w /srv -p 1234:1234 -u node -it $(DOCKER_CONTAINER_IMAGE) sh + +dev: + + docker run --rm --name $(DOCKER_CONTAINER_NAME) -v $(PROJECT_DATA):/srv -w /srv -p 1234:1234 -u node -it $(DOCKER_CONTAINER_IMAGE) sh -c "pnpm install && pnpm run dev" + +build: + + make clear-cache + + docker run --rm --name $(DOCKER_CONTAINER_NAME) -v $(PROJECT_DATA):/srv -w /srv -u node -it $(DOCKER_CONTAINER_IMAGE) sh -c "pnpm install && pnpm run build" \ No newline at end of file diff --git a/README.md b/README.md index eb69846..13eaa17 100644 --- a/README.md +++ b/README.md @@ -38,16 +38,16 @@ git clone -b 0.0.2 https://github.com/guesant/ava-pro.git cd ava-pro ``` -#### Development with docker-compose (recommended) +#### Development with Docker (recommended) -We recommend the usage of docker-compose to develop the extension (~~due security reasons lol~~ [[1]](https://thehackernews.com/2021/10/popular-npm-package-hijacked-to-publish.html)). +We recommend the usage of Docker to develop the extension (~~due security reasons lol~~ [[1]](https://thehackernews.com/2021/10/popular-npm-package-hijacked-to-publish.html)). ```sh -docker-compose up dev # -> packages/webextension/dist/dev -docker-compose up build # -> packages/webextension/dist/prod +make dev # -> packages/webextension/dist/dev +make build # -> packages/webextension/dist/prod ``` -#### Development with the nodejs from your system +#### Development with the NodeJS from your system
Click to expand diff --git a/docker-compose.yml b/docker-compose.yml deleted file mode 100644 index 05a0fb2..0000000 --- a/docker-compose.yml +++ /dev/null @@ -1,19 +0,0 @@ -services: - dev: - image: cl00e9ment/node.js-builder - restart: always - container_name: ava-pro-dev - command: [sh, -c, 'su node -c "pnpm install && pnpm run dev"'] - volumes: - - .:/code - working_dir: /code - ports: - - 1234:1234 - - build: - image: cl00e9ment/node.js-builder - container_name: ava-pro-build - command: [sh, -c, 'su node -c "pnpm install && pnpm run build"'] - volumes: - - .:/code - working_dir: /code diff --git a/package.json b/package.json index e66a24c..3ab6103 100644 --- a/package.json +++ b/package.json @@ -4,10 +4,10 @@ "private": true, "scripts": { "format": "prettier --write .", - "lint": "eslint --fix --ext js,ts,tsx,jsx packages", + "lint": "eslint --ext js,ts,tsx,jsx packages", + "lint:fix": "pnpm run lint -- --fix", "dev": "pnpm run --filter @ava-pro/webextension start", - "build": "pnpm run clear:cache; pnpm run --filter @ava-pro/webextension build", - "clear:cache": "find . -type d -name .parcel-cache -exec rm -rf {} \\+", + "build": "pnpm run --filter @ava-pro/webextension build", "prepare": "husky install" }, "lint-staged": {