From cc665596c48c460a3cd29d6f80fd37bc7f90a023 Mon Sep 17 00:00:00 2001 From: kellervater Date: Sat, 12 Apr 2025 13:38:51 +0200 Subject: [PATCH] docs: setup --- Gemfile | 7 +++ Gemfile.lock | 154 +++++++++++++++++++++++++++++++++++++++++++++++++++ Makefile | 17 +++++- README.md | 32 ++++++----- 4 files changed, 196 insertions(+), 14 deletions(-) create mode 100644 Gemfile create mode 100644 Gemfile.lock diff --git a/Gemfile b/Gemfile new file mode 100644 index 0000000..82aab5c --- /dev/null +++ b/Gemfile @@ -0,0 +1,7 @@ +# frozen_string_literal: true + +source "https://rubygems.org" + +# gem "rails" + +gem "jekyll" diff --git a/Gemfile.lock b/Gemfile.lock new file mode 100644 index 0000000..25e1926 --- /dev/null +++ b/Gemfile.lock @@ -0,0 +1,154 @@ +GEM + remote: https://rubygems.org/ + specs: + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + base64 (0.2.0) + bigdecimal (3.1.9) + colorator (1.1.0) + concurrent-ruby (1.3.5) + csv (3.3.3) + em-websocket (0.5.3) + eventmachine (>= 0.12.9) + http_parser.rb (~> 0) + eventmachine (1.2.7) + ffi (1.17.1) + ffi (1.17.1-aarch64-linux-gnu) + ffi (1.17.1-aarch64-linux-musl) + ffi (1.17.1-arm-linux-gnu) + ffi (1.17.1-arm-linux-musl) + ffi (1.17.1-arm64-darwin) + ffi (1.17.1-x86-linux-gnu) + ffi (1.17.1-x86-linux-musl) + ffi (1.17.1-x86_64-darwin) + ffi (1.17.1-x86_64-linux-gnu) + ffi (1.17.1-x86_64-linux-musl) + forwardable-extended (2.6.0) + google-protobuf (4.30.2) + bigdecimal + rake (>= 13) + google-protobuf (4.30.2-aarch64-linux) + bigdecimal + rake (>= 13) + google-protobuf (4.30.2-arm64-darwin) + bigdecimal + rake (>= 13) + google-protobuf (4.30.2-x86-linux) + bigdecimal + rake (>= 13) + google-protobuf (4.30.2-x86_64-darwin) + bigdecimal + rake (>= 13) + google-protobuf (4.30.2-x86_64-linux) + bigdecimal + rake (>= 13) + http_parser.rb (0.8.0) + i18n (1.14.7) + concurrent-ruby (~> 1.0) + jekyll (4.4.1) + addressable (~> 2.4) + base64 (~> 0.2) + colorator (~> 1.0) + csv (~> 3.0) + em-websocket (~> 0.5) + i18n (~> 1.0) + jekyll-sass-converter (>= 2.0, < 4.0) + jekyll-watch (~> 2.0) + json (~> 2.6) + kramdown (~> 2.3, >= 2.3.1) + kramdown-parser-gfm (~> 1.0) + liquid (~> 4.0) + mercenary (~> 0.3, >= 0.3.6) + pathutil (~> 0.9) + rouge (>= 3.0, < 5.0) + safe_yaml (~> 1.0) + terminal-table (>= 1.8, < 4.0) + webrick (~> 1.7) + jekyll-sass-converter (3.1.0) + sass-embedded (~> 1.75) + jekyll-watch (2.2.1) + listen (~> 3.0) + json (2.10.2) + kramdown (2.5.1) + rexml (>= 3.3.9) + kramdown-parser-gfm (1.1.0) + kramdown (~> 2.0) + liquid (4.0.4) + listen (3.9.0) + rb-fsevent (~> 0.10, >= 0.10.3) + rb-inotify (~> 0.9, >= 0.9.10) + mercenary (0.4.0) + pathutil (0.16.2) + forwardable-extended (~> 2.6) + public_suffix (6.0.1) + rake (13.2.1) + rb-fsevent (0.11.2) + rb-inotify (0.11.1) + ffi (~> 1.0) + rexml (3.4.1) + rouge (4.5.1) + safe_yaml (1.0.5) + sass-embedded (1.86.3) + google-protobuf (~> 4.30) + rake (>= 13) + sass-embedded (1.86.3-aarch64-linux-android) + google-protobuf (~> 4.30) + sass-embedded (1.86.3-aarch64-linux-gnu) + google-protobuf (~> 4.30) + sass-embedded (1.86.3-aarch64-linux-musl) + google-protobuf (~> 4.30) + sass-embedded (1.86.3-arm-linux-androideabi) + google-protobuf (~> 4.30) + sass-embedded (1.86.3-arm-linux-gnueabihf) + google-protobuf (~> 4.30) + sass-embedded (1.86.3-arm-linux-musleabihf) + google-protobuf (~> 4.30) + sass-embedded (1.86.3-arm64-darwin) + google-protobuf (~> 4.30) + sass-embedded (1.86.3-riscv64-linux-android) + google-protobuf (~> 4.30) + sass-embedded (1.86.3-riscv64-linux-gnu) + google-protobuf (~> 4.30) + sass-embedded (1.86.3-riscv64-linux-musl) + google-protobuf (~> 4.30) + sass-embedded (1.86.3-x86_64-darwin) + google-protobuf (~> 4.30) + sass-embedded (1.86.3-x86_64-linux-android) + google-protobuf (~> 4.30) + sass-embedded (1.86.3-x86_64-linux-gnu) + google-protobuf (~> 4.30) + sass-embedded (1.86.3-x86_64-linux-musl) + google-protobuf (~> 4.30) + terminal-table (3.0.2) + unicode-display_width (>= 1.1.1, < 3) + unicode-display_width (2.6.0) + webrick (1.9.1) + +PLATFORMS + aarch64-linux + aarch64-linux-android + aarch64-linux-gnu + aarch64-linux-musl + arm-linux-androideabi + arm-linux-gnu + arm-linux-gnueabihf + arm-linux-musl + arm-linux-musleabihf + arm64-darwin + riscv64-linux-android + riscv64-linux-gnu + riscv64-linux-musl + ruby + x86-linux + x86-linux-gnu + x86-linux-musl + x86_64-darwin + x86_64-linux-android + x86_64-linux-gnu + x86_64-linux-musl + +DEPENDENCIES + jekyll + +BUNDLED WITH + 2.6.7 diff --git a/Makefile b/Makefile index ed45acf..2175693 100644 --- a/Makefile +++ b/Makefile @@ -5,7 +5,6 @@ help: .DEFAULT_GOAL := help - .PHONY: asdf-plugins asdf-plugins: ## Install asdf plugins # @@ -22,3 +21,19 @@ asdf-install: asdf-plugins ## Install tools with asdf # # Install tools via asdf. @asdf install + + +# Jekyll +JEKYLL_CMD = bundle exec jekyll + +.PHONY: serve +serve: + $(JEKYLL_CMD) serve + +.PHONY: build +build: + $(JEKYLL_CMD) build -s src -d target + +.PHONY: new_post +new-post: + $(JEKYLL_CMD) new post diff --git a/README.md b/README.md index 759ff9f..4d07a20 100644 --- a/README.md +++ b/README.md @@ -1,20 +1,19 @@ -# home-racker - +# :building_construction: HomeRacker - The universal modular rack building system +[![forthebadge](data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNTcuOTUzMTM2NDQ0MDkxOCIgaGVpZ2h0PSIzNSIgdmlld0JveD0iMCAwIDE1Ny45NTMxMzY0NDQwOTE4IDM1Ij48cmVjdCB3aWR0aD0iMTA2LjYyNTAwNzYyOTM5NDUzIiBoZWlnaHQ9IjM1IiBmaWxsPSIjZjZhYTRhIi8+PHJlY3QgeD0iMTA2LjYyNTAwNzYyOTM5NDUzIiB3aWR0aD0iNTEuMzI4MTI4ODE0Njk3MjY2IiBoZWlnaHQ9IjM1IiBmaWxsPSIjZmY4ZjAwIi8+PHRleHQgeD0iNTMuMzEyNTAzODE0Njk3MjY2IiB5PSIyMS41IiBmb250LXNpemU9IjEyIiBmb250LWZhbWlseT0iJ1JvYm90bycsIHNhbnMtc2VyaWYiIGZpbGw9IiNGRkZGRkYiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGxldHRlci1zcGFjaW5nPSIyIj5ET1dOTE9BRDwvdGV4dD48dGV4dCB4PSIxMzIuMjg5MDcyMDM2NzQzMTYiIHk9IjIxLjUiIGZvbnQtc2l6ZT0iMTIiIGZvbnQtZmFtaWx5PSInTW9udHNlcnJhdCcsIHNhbnMtc2VyaWYiIGZpbGw9IiNGRkZGRkYiIHRleHQtYW5jaG9yPSJtaWRkbGUiIGZvbnQtd2VpZ2h0PSI5MDAiIGxldHRlci1zcGFjaW5nPSIyIj5GM0Q8L3RleHQ+PC9zdmc+)](https://makerworld.com/en/@kellervater) ![HomeRacker Assembly](./img/assembly_basics_4.png) HomeRacker is a fully modular rack building system for virtually any "racking needs" (Server Rack, shoe rack, book shelf, you name it). -This repo though contains the respective `scad` files for all fully customizable models as well as the documentation for the entire project. +This repo contains the respective `scad` files for all fully customizable models as well as the documentation for the entire project which seeds the page https://homeracker.org. -Everyting else (like the `HomeRacker - Core`) you can find on my [Makerworld Page](https://makerworld.com/en/@kellervater)). There I provide all all models (which I didn't transpile into `scad`) as f3d files. - -# Development +You can find all parametric and non-parametric models as well as the `f3d` files (like the `HomeRacker - Core`) on [Makerworld](https://makerworld.com/en/@kellervater)). +# :woman_technologist: Development >[!NOTE] > Everything Jekyll-related has been tested using debian-based distros (in my case Ubuntu and WSL2 Ubuntu). -## Prerequisites -### System Dependencies +## :toolbox: Prerequisites +### :pushpin: System Dependencies Install following system dependencies for debian-based OSs: ```bash # required for asdf utilities in this repo @@ -22,14 +21,14 @@ sudo apt install make # required ruby dependencies sudo apt install autoconf patch build-essential rustc libssl-dev libyaml-dev libreadline6-dev zlib1g-dev libgmp-dev libncurses5-dev libffi-dev libgdbm6 libgdbm-dev libdb-dev uuid-dev ``` -### asdf +### :robot: asdf You need to install [asdf](https://asdf-vm.com/guide/getting-started.html). You can do so by running the install script: ```bash chmod +x install-asdf.sh && ./install-asdf.sh ``` This will add `asdf` and bash completion to your path. -### Plugins +### :electric_plug: Plugins Now you can install all plugins: ```bash make asdf-install # due to some bug you might need to run it twice before it works @@ -37,10 +36,17 @@ make asdf-install # due to some bug you might need to run it twice before it wor > [!NOTE] > Since renovate is activated on this repository, this step might be reocurring due to regular udpates to plugin versions. -## Feedback? +## :seedling: Bootstrapping +I basically followed the Step-by-Step Guide: https://jekyllrb.com/docs/step-by-step/01-setup/ + +All necessary Jekyll commands have been already prefixed appropriately. Just use `make` with the respective jekyll command and you should be good to go. + +# :speech_balloon: Feedback? Open an issue here rather than at Makerworld. I can track feature requests and bugs way easier here in Github. - -## Licensing +# :scroll: Licensing * The source code in this repository is licensed under the `MIT License` (see [LICENSE](./LICENSE)). * All 3D models and creative assets (in /models/) are licensed under the `CC BY-NC 4.0 License` (see [/models/LICENSE](./models/LICENSE)). + +# :memo: Todos +* [ ] freeze Gemfile dependencies and make renovate work on it