---
# System prepended metadata

title: Wizard Amigos

---

# Main Tasks
* Wizard Amigos
    * UI Design (*In Progress*)
    * Web Development (*Pending*)
        * UX - Make the structure of web ignoring the styles for now
* Dotsama
* Datdot

# Side Tasks
* Documentation for current website structure
* Experiment with a communicator
    * Serapath's request: we could use the current message protocol for network routing only and based on requests, we can crrate and forward message port using the web api MessagePort and then we continue using those ports for different components to talk to each other.
* Currently, we can not access or share a different page directly like dat.ecosystem/projects, a very essential feature missing




# Module Life Time
1. stuff gets coded in phase 1
2. then it gets refactored into meaningful code portions (e.g. like the communication module is copied into the footer of each module
3. then, when it stabelizes, we move it into src/node_modules/{modulename} which meqns you can require('{modulename}') in the same repo... inside of e.g. src/index.js, because the require resolution module will follow and look for it first in src/node_modules before it will look in node_modules/ in the root of the reponwhere npm install stuff
4. when a module becomes interesting to use in other repos as well, we might consider creating a separate repository for it and adding it back into the original repository where it started it's life as an "internal module"
5. then when we add it to enough repositories, we eventually publish it to npm as well
so that is how we gradually develop code into modules.


# CSS Rules
1. we use simple class selectors for every element and no tag selectors.
2. we do use pseudo selectors, but not multiple class selectors or prefixes or anything fancy (we dont need to because shadow dom)
3. we try to stick everywhere to flexbox or css grid over more traditional layouts
4. we try to use plenty of css variables to not repeat ourselves and it helps with themability
5. we try to use containerqueries ideally in every component we make so we solve responsiveness without media queries
