diff --git a/README.org b/README.org index 69acd26..70cad9a 100644 --- a/README.org +++ b/README.org @@ -1,3 +1,98 @@ * nassella -A worker's co-op and self-hosting for anyone. <3 \ No newline at end of file +A worker's co-op and self-hosting for anyone. <3 + +~nassella~ is the working name for the worker's co-op as well as the +current in-development software project, which is: to build a system +that enables anyone to self-host a specific set of apps. + +** A worker's co-operative + +I want to build a workplace where the goals are differently aligned +from that of a more common tech workplace. The goals of the worker's +co-op: + +- worker control: 1 worker = 1 vote +- long-term, stable sustainable job's for members + - prioritize less work hours over growth/profit +- voluntary and open membership + - no discrimination including: + - gender + - social + - sexuality + - racial + - political + - religious +- provide a safe and inclusive work environment + - members must feel safe to make mistakes and voice different + opinions + + - communication should be direct and specific + - expectations must be explicitly communicated + - boundaries must be listened to and respected + - members must not speak to or cooperate with law enforcement +- provide opportunities for members to learn and grow +- remain independent and autonomous + - outside capital, if any, may not have control +- cooperate with other cooperatives +- concern for community + - actively engage with local communities + - actively manage environmental impacts + - seek out, involve, and learn from diverse groups + +** Product + +The goal is to produce a product that enables less-technical people +the ability to self-host applications in a secure and auto-updating +manner. Self-hosting for anyone! + +*** Potential Qualities + +- secure +- auto-updates + - host system + - container layers + - container apps +- manages dns records +- manages ssl certs +- reproducible (in a config standpoint) + - config is declarative +- load balances as needed +- collects and displays logs from all apps in a useful format +- data volumes/storage independent from containers +- can off-site backup automatically +- updates are run through CI before being made available +- can be moved between providers (no vendor lock-in) + +*** Potential Tech For Self-Hosted Cloud Infra + +- DNS Registration + - Terraform via supported registry +- DNS Config + - Terraform +- resource management (VPS's etc) + - Terraform +- LB for apps + - docker-compose + caddy +- SSL + - LB + caddy +- apps + - docker-compose +- OS + - flatcar linux + +*** Potential Tech for Deployment and Config Node + +Can be run locally or as a SaaS + +- docker contained webapp for deploying/configuring/updating? +- needs to generate/init and store: + - terraform config and state + - docker-compose config + + (this can be embedded in terraform config) + +- can be used to: + - select apps + - resources (manage) + - view logs (stored on self-hosted infra) \ No newline at end of file