diff --git a/.eslintrc.js b/.eslintrc.js
index dca8c07..da313c5 100644
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -5,12 +5,12 @@ module.exports = {
},
extends: [
// add more generic rulesets here, such as:
- 'eslint:recommended',
- 'plugin:vue/vue3-recommended',
- "prettier"
+ "eslint:recommended",
+ "plugin:vue/vue3-recommended",
+ "prettier",
],
rules: {
// override/add rules settings here, such as:
// 'vue/no-unused-vars': 'error'
- }
-}
+ },
+};
diff --git a/.prettierrc.json b/.prettierrc.json
new file mode 100644
index 0000000..0967ef4
--- /dev/null
+++ b/.prettierrc.json
@@ -0,0 +1 @@
+{}
diff --git a/README.md b/README.md
index 973f04f..e7a8642 100644
--- a/README.md
+++ b/README.md
@@ -1,30 +1,37 @@
# explorata
+
Explore 1D and 2D cellular automata, with a few bells and whistles.
## Project setup
+
```
npm install
```
### Compiles and hot-reloads for development
+
```
npm run serve
```
### Compiles and minifies for production
+
```
npm run build
```
### Lints and fixes files
+
```
npm run lint
```
### Customize configuration
+
See [Configuration Reference](https://cli.vuejs.org/config/).
### References
+
- https://natureofcode.com/book/chapter-7-cellular-automata/
- https://en.wikipedia.org/wiki/Hashlife
- https://plato.stanford.edu/entries/cellular-automata/supplement.html
diff --git a/babel.config.js b/babel.config.js
index 2d47eef..162a3ea 100644
--- a/babel.config.js
+++ b/babel.config.js
@@ -1,5 +1,3 @@
module.exports = {
- presets: [
- '@vue/cli-plugin-babel/preset'
- ],
-}
+ presets: ["@vue/cli-plugin-babel/preset"],
+};
diff --git a/docker-compose.yml b/docker-compose.yml
index 5a0c0a7..0d23232 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -1,4 +1,4 @@
-version: '3.4'
+version: "3.4"
services:
explorata:
diff --git a/index.html b/index.html
index 87ba56b..43651ea 100644
--- a/index.html
+++ b/index.html
@@ -1,18 +1,18 @@
-
-
-
-
+
+
+
+
Explorata
diff --git a/package.json b/package.json
index 5825f8b..8590f1b 100644
--- a/package.json
+++ b/package.json
@@ -6,7 +6,8 @@
"dev": "vite",
"build": "vite build",
"serve": "vite preview",
- "lint": "eslint --ext .js,.vue --ignore-path .gitignore --fix src"
+ "lint": "eslint --ext .js,.vue --ignore-path .gitignore --fix src",
+ "format": "prettier . --write"
},
"dependencies": {
"@vitejs/plugin-vue": "^3.2.0",
diff --git a/src/App.vue b/src/App.vue
index 9e58434..379637c 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -1,71 +1,66 @@
-
- Cellular Automata Explorer
-
+
Cellular Automata Explorer
-
+
diff --git a/src/components/Canvas.vue b/src/components/Canvas.vue
deleted file mode 100644
index a41a9dc..0000000
--- a/src/components/Canvas.vue
+++ /dev/null
@@ -1,134 +0,0 @@
-
-
-
-
-
-
-
diff --git a/src/components/CanvasBoard.vue b/src/components/CanvasBoard.vue
new file mode 100644
index 0000000..eda14c6
--- /dev/null
+++ b/src/components/CanvasBoard.vue
@@ -0,0 +1,142 @@
+
+
+
+
+
+
+
diff --git a/src/components/MainMenu.vue b/src/components/MainMenu.vue
index 87e774e..86166fd 100644
--- a/src/components/MainMenu.vue
+++ b/src/components/MainMenu.vue
@@ -8,29 +8,28 @@
diff --git a/src/components/Menu2dCA.vue b/src/components/Menu2dCA.vue
index 20e8287..97ef740 100644
--- a/src/components/Menu2dCA.vue
+++ b/src/components/Menu2dCA.vue
@@ -2,65 +2,56 @@
-
+
-
+
+ />
+ />
diff --git a/src/components/MenuCellProperties.vue b/src/components/MenuCellProperties.vue
index b1b6efc..a88bf50 100644
--- a/src/components/MenuCellProperties.vue
+++ b/src/components/MenuCellProperties.vue
@@ -8,7 +8,7 @@
type="color"
@value="cellProperties.liveColor"
@input="updateCellProperties"
- >
+ />
@@ -17,7 +17,7 @@
type="color"
:value="cellProperties.deadColor"
@input="updateCellProperties"
- >
+ />
@@ -27,36 +27,36 @@
min="1"
:value="cellProperties.size"
@input="updateCellProperties"
- >
+ />
diff --git a/src/components/MenuElementaryCA.vue b/src/components/MenuElementaryCA.vue
index 37656d1..914708d 100644
--- a/src/components/MenuElementaryCA.vue
+++ b/src/components/MenuElementaryCA.vue
@@ -2,8 +2,9 @@
-
+
+ />
diff --git a/src/components/MenuGeneralOptions.vue b/src/components/MenuGeneralOptions.vue
index c51dd89..66cb8aa 100644
--- a/src/components/MenuGeneralOptions.vue
+++ b/src/components/MenuGeneralOptions.vue
@@ -13,7 +13,7 @@
step="10"
:value="canvasWidth"
@input="updateCanvasWidth"
- >
+ />
@@ -24,7 +24,7 @@
step="10"
:value="canvasHeight"
@input="updateCanvasHeight"
- >
+ />
@@ -38,57 +38,58 @@
step="100"
:value="refreshRate"
@input="updateRefreshRate"
- >
+ />
-
-
+
diff --git a/src/components/MenuRow.vue b/src/components/MenuRow.vue
index 42e053a..1db739a 100644
--- a/src/components/MenuRow.vue
+++ b/src/components/MenuRow.vue
@@ -1,82 +1,75 @@