diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 0000000..5282280
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,7 @@
+*.csv filter=bom_csv
+*.html filter=bom_html
+*.gbr filter=gerber
+*.gbrjob filter=gbrjob
+*.xml filter=xml
+*.kicad_pcb filter=kicad_pcb_f
+*.net filter=net_filter
diff --git a/.gitconfig b/.gitconfig
new file mode 100644
index 0000000..1238a5e
--- /dev/null
+++ b/.gitconfig
@@ -0,0 +1,20 @@
+[filter "bom_csv"]
+ clean = sed -E 's/^BoM Date:.*$/BoM Date:Date/'
+ smudge = sed -E \"s/BoM Date:Date/BoM Date:,`date +\\\"%a %d %b %Y %X %:::z\\\"`/\"
+[filter "bom_html"]
+ clean = sed -E 's/^
| BoM Date<\\/td> | .*$/ |
| BoM Date<\\/td> | Date<\\/td><\\/tr>/'
+ smudge = sed -E \"s/ |
| BoM Date<\\/td> | Date<\\/td><\\/tr>/ |
| BoM Date<\\/td> | `date +\\\"%a %d %b %Y %X %:::z\\\"`<\\/td><\\/tr>/\"
+[filter "gerber"]
+ clean = sed -E -e 's/^%TF.CreationDate,.*$/%TF.CreationDate,Date%/' -e 's/^G04 Created by KiCad.*$/G04 Created by KiCad*/'
+ smudge = sed -E \"s/%TF.CreationDate,Date%/%TF.CreationDate,`date +%Y-%m-%dT%H:%M:%S%:z`/\"
+[filter "gbrjob"]
+ clean = sed -E 's/\"CreationDate\":.*/\"CreationDate\": \"Date\"/'
+ smudge = sed -E \"s/\\\"CreationDate\\\": \\\"Date\\\"/\\\"CreationDate\\\": \\\"`date +%Y-%m-%dT%H:%M:%S%:z`\\\"/\"
+[filter "xml"]
+ clean = sed -E -e 's/^ .*<\\/date>/ Date2<\\/date>/' -e 's/^ .*<\\/date>/ Date1<\\/date>/'
+ smudge = sed -E -e \"s/Date1<\\/date>/`date +\\\"%a %d %b %Y %X %:::z\\\"`<\\/date>/\" -e \"s/Date2<\\/date>/`date +\\\"%Y-%m-%d\\\"`<\\/date>/\"
+[filter "kicad_pcb_f"]
+ clean = sed -E 's/\\(host pcbnew ([[:digit:]]+\\.[[:digit:]]+\\.[[:digit:]]+).*/\\(host pcbnew \\1\\)/'
+[filter "net_filter"]
+ clean = sed -E -e 's/\\(date \\\".*\\\"\\)/\\(date \\\"Date\\\"\\)/'
+ smudge = sed -E -e \"s/\\(date \\\"Date\\\"\\)/\\(date \\\"`date +\\\"%a %d %b %Y %X %:::z\\\"`\\\"\\)/\"
diff --git a/.gitea/workflows/doc-generation.yml b/.gitea/workflows/doc-generation.yml
new file mode 100644
index 0000000..071dff9
--- /dev/null
+++ b/.gitea/workflows/doc-generation.yml
@@ -0,0 +1,22 @@
+name: docs-generation
+
+on:
+ pull_request:
+ paths:
+ - '**.sch'
+ - '**.kicad_pcb'
+
+jobs:
+ docs-generation:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v4
+ - uses: INTI-CMNB/KiBot@v1.8.1
+ with:
+ config: config.kibot.yaml
+ schema: 'CommonSense.kicad_sch'
+ board: 'CommonSense.kicad_pcb'
+ - name: upload results
+ uses: stefanzweifel/git-auto-commit-action@v5
+ with:
+ commit_message: 'Update Docs'
diff --git a/README.md b/README.md
index b169e8c..dac31f7 100644
--- a/README.md
+++ b/README.md
@@ -1,10 +1,17 @@
# CommonSense
-A BLE-based PCB for measuring humidity and temperature
+A BLE-based PCB for measuring humidity and temperature.
-## Downloading libraries
-
-After cloning, the libraries have to be downloaded using
+After cloning, the libraries can be downloaded using
```bash
$ git submodule update --init
```
+
+## PCB
+
+
+
+
+## Schematic
+
+
diff --git a/config.kibot.yaml b/config.kibot.yaml
new file mode 100644
index 0000000..b47662b
--- /dev/null
+++ b/config.kibot.yaml
@@ -0,0 +1,50 @@
+kibot:
+ version: 1
+
+outputs:
+ - name: 'schematic pdf'
+ comment: 'Schematic pdf generation'
+ type: 'pdf_sch_print'
+ dir: 'doc/generated'
+ - name: 'schematic svg'
+ comment: 'Schematic pdf generation'
+ type: 'svg_sch_print'
+ dir: 'doc/generated'
+ options:
+ background_color: true
+ - name: 'pcbdraw top svg'
+ comment: 'PCB top image generation'
+ type: 'pcbdraw'
+ dir: 'doc/generated'
+ options:
+ bottom: false
+ style: 'set-blue-cu'
+ show_components: 'none'
+ - name: 'pcbdraw top pdn'
+ comment: 'PCB top image generation'
+ type: 'pcbdraw'
+ dir: 'doc/generated'
+ options:
+ format: 'png'
+ dpi: 600
+ bottom: false
+ style: 'set-blue-cu'
+ show_components: 'none'
+ - name: 'pcbdraw bottom svg'
+ comment: 'PCB bottom image generation'
+ type: 'pcbdraw'
+ options:
+ bottom: true
+ style: 'set-blue-cu'
+ show_components: 'none'
+ dir: 'doc/generated'
+ - name: 'pcbdraw bottom png'
+ comment: 'PCB bottom image generation'
+ type: 'pcbdraw'
+ options:
+ format: 'png'
+ dpi: 600
+ bottom: true
+ style: 'set-blue-cu'
+ show_components: 'none'
+ dir: 'doc/generated'
diff --git a/doc/generated/CommonSense-bottom.png b/doc/generated/CommonSense-bottom.png
new file mode 100644
index 0000000..4377016
Binary files /dev/null and b/doc/generated/CommonSense-bottom.png differ
diff --git a/doc/generated/CommonSense-bottom.svg b/doc/generated/CommonSense-bottom.svg
new file mode 100644
index 0000000..aa3de57
--- /dev/null
+++ b/doc/generated/CommonSense-bottom.svg
@@ -0,0 +1,967 @@
+
+
\ No newline at end of file
diff --git a/doc/generated/CommonSense-schematic.pdf b/doc/generated/CommonSense-schematic.pdf
new file mode 100644
index 0000000..9c68493
Binary files /dev/null and b/doc/generated/CommonSense-schematic.pdf differ
diff --git a/doc/generated/CommonSense-schematic.svg b/doc/generated/CommonSense-schematic.svg
new file mode 100644
index 0000000..7473709
--- /dev/null
+++ b/doc/generated/CommonSense-schematic.svg
@@ -0,0 +1,62707 @@
+
+
+
diff --git a/doc/generated/CommonSense-top.png b/doc/generated/CommonSense-top.png
new file mode 100644
index 0000000..b6eecdd
Binary files /dev/null and b/doc/generated/CommonSense-top.png differ
diff --git a/doc/generated/CommonSense-top.svg b/doc/generated/CommonSense-top.svg
new file mode 100644
index 0000000..771ef49
--- /dev/null
+++ b/doc/generated/CommonSense-top.svg
@@ -0,0 +1,2387 @@
+
+
\ No newline at end of file
|