# For the Frontend - Written in clojurescript as a SPA - Use [re-frame](https://day8.github.io/re-frame/) - App deployed in an nginx container on cluster - Connect to backend via public API - Authentication done on backend by verifying authenticated oauth login - Style upgrade - Clean up instance page - Add `pair-ssh-instance` ability - hide sos link to admins only # Backend - Operator based - uses CRD's to manage objects(as PairInstance) - Have REST API - Expose REST API publicly # Cool ideas - Support multiple authentication types - github - gitlab - Support multiple, simultaneous infrastructure types: - packet - gcp - aws - azure - sidero - etc. - ARM support - Declarative inits for the .sharingio folders in repos - Modular, composable init (for reference: [.sharing.io/postKubeadmCommands](https://github.com/sharingio/.sharing.io/blob/main/cluster-api/postKubeadmCommands.sh)) - Move pair and container related things from humacs into a sharing.io environment - have easy to access logs for an instance for all users
For the Frontend
pair-ssh-instanceabilityBackend
Cool ideas