diff --git a/README.md b/README.md
index fb9841f..bafe103 100644
--- a/README.md
+++ b/README.md
@@ -1,15 +1,3 @@
# Thinking People System
A interactive website to better understand the Thinking People System.
-
-## Feature flow
-
-### The project
-
-- 0 defect policy,
-- has no external dependancies,
-- the team has a strong opinion on Jidoka:
- - teams spot 100% of the defects,
- - teams do not take a feature who has defects,
- - the team who introduced the defect needs to rework on the feature.
-- there is no limit on how many defects a feature can have.
diff --git a/core.css b/core.css
index d7ab07b..2fc9033 100644
--- a/core.css
+++ b/core.css
@@ -6,7 +6,7 @@
--color: white;
}
-* {
+*:not(td):not(th) {
border-radius: 0.5rem;
}
@@ -29,3 +29,17 @@ main {
margin: 1rem 1rem 0;
color: var(--color);
}
+
+.meaning {
+ color: #9f9a9a;
+ font-weight: 100;
+ font-size: 1rem;
+}
+
+.meaning::before {
+ content: '(';
+}
+
+.meaning::after {
+ content: ')';
+}
diff --git a/main.ts b/main.ts
index a00745a..90bf228 100644
--- a/main.ts
+++ b/main.ts
@@ -1,28 +1,28 @@
type TPSSearchParams = {
- display?: "house-only" | "full"
+ display?: 'house-only' | 'full'
}
const params = new URL(document.location.href).searchParams
-const display = params.get("display")
+const display = params.get('display')
-if (display === "house-only") {
- document.querySelector("header")?.remove()
+if (display === 'house-only') {
+ document.querySelector('header')?.remove()
}
-const size = params.get("size")
+const size = params.get('size')
-if (size === "small") {
- const body = document.querySelector("body")
+if (size === 'small') {
+ const body = document.querySelector('body')
if (body) {
- body.style.fontSize = "15px"
+ body.style.fontSize = '15px'
}
}
-const focusElements = params.getAll("focus")
+const focusElements = params.getAll('focus')
if (focusElements.length > 0) {
- const focusables = document.querySelectorAll(".focusable")
+ const focusables = document.querySelectorAll('.focusable')
focusables.forEach((focusable) => {
const elementToFocus = focusElements.some((element) =>
@@ -30,20 +30,35 @@ if (focusElements.length > 0) {
)
if (!elementToFocus) {
- focusable.classList.add("no-focus")
+ focusable.classList.add('no-focus')
}
})
}
-const textHide = params.get("text")
+const textHide = params.get('text')
-if (textHide === "hide") {
- const focusables = document.querySelectorAll(".focusable")
- focusables.forEach((focusable) => focusable.classList.add("text-hide"))
+if (textHide === 'hide') {
+ const focusables = document.querySelectorAll('.focusable')
+ focusables.forEach((focusable) => focusable.classList.add('text-hide'))
}
-const scrollParam = params.get("scroll")
+const scrollParam = params.get('scroll')
-if (scrollParam === "end") {
- window.scrollTo({ top: document.body.scrollHeight, behavior: "smooth" })
+if (scrollParam === 'end') {
+ window.scrollTo({ top: document.body.scrollHeight, behavior: 'smooth' })
+}
+
+const primaryColorParam = params.get('primary')
+
+if (primaryColorParam) {
+ document.documentElement.style.setProperty(
+ '--primary-color',
+ `#${primaryColorParam}`
+ )
+}
+
+const colorParam = params.get('color')
+
+if (colorParam) {
+ document.documentElement.style.setProperty('--color', `#${colorParam}`)
}
diff --git a/package.json b/package.json
index 7e051c2..4a9a407 100644
--- a/package.json
+++ b/package.json
@@ -17,6 +17,7 @@
"chart.xkcd": "^1.1.13",
"comlink": "^4.4.1",
"pinia": "^2.1.4",
+ "random-js": "^2.1.0",
"vue": "^3.3.4",
"vue-starport": "^0.3.0"
},
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 97e3f3f..982589e 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -17,6 +17,9 @@ dependencies:
pinia:
specifier: ^2.1.4
version: 2.1.4(typescript@5.1.6)(vue@3.3.4)
+ random-js:
+ specifier: ^2.1.0
+ version: 2.1.0
vue:
specifier: ^3.3.4
version: 3.3.4
@@ -897,6 +900,10 @@ packages:
react-is: 18.2.0
dev: true
+ /random-js@2.1.0:
+ resolution: {integrity: sha512-CRUyWmnzmZBA7RZSVGq0xMqmgCyPPxbiKNLFA5ud7KenojVX2s7Gv+V7eB52beKTPGxWRnVZ7D/tCIgYJJ8vNQ==}
+ dev: false
+
/react-is@18.2.0:
resolution: {integrity: sha512-xWGDIW6x921xtzPkhiULtthJHoJvBbF3q26fzloPCK0hsvxtPVelvftw3zjbHWSkR2km9Z+4uxbDDK/6Zw9B8w==}
dev: true
diff --git a/src/icons/ProblemSolvingIcon.vue b/src/icons/ProblemSolvingIcon.vue
index 1ef680a..b2bc50e 100644
--- a/src/icons/ProblemSolvingIcon.vue
+++ b/src/icons/ProblemSolvingIcon.vue
@@ -9,7 +9,10 @@ withDefaults(defineProps<{ color?: string }>(), {
Here our hypothesis:
- {{ feature.qualityIssue }} are the number of
- defects the feature had during the flow.
+
You have 20 features to deliver, and each day you can choose between 3 @@ -85,15 +86,22 @@ const feature: Feature = { understand and limit rework. The more the team investigate, the more the team learn and start to be extremely good at problem solving.
-Blue bins are your security stock, to make sure teams can work without any blockers. It's to make sure the next team will always have material to transform. But it comes with a cost: overburden, stagnation (increase lead - time) and duplicated mistakes (not simulated here). The less you have, the + time) and duplicated mistakes + not simulated here. The less you have, the less your team has mental charge. The more you have, the more secure you are to make teams work. One solution: simplify your flow and lower the number of operation the teams have to do to deliver a feature.
+ + diff --git a/src/modules/feature/FeatureItem.vue b/src/modules/feature/FeatureItem.vue index fd3c269..95595d4 100644 --- a/src/modules/feature/FeatureItem.vue +++ b/src/modules/feature/FeatureItem.vue @@ -1,4 +1,5 @@ + + +