Disclone is an OSS chat application built by codingWithLuke and the community.
The goal of the project is not necessarily to have everything done perfectly or to have everything be exactly correct. It is also not to build a production ready application. It is an experiment. An experiment to learn and grow. This means we have a bunch of tools and tech I want to try and learn, as well as system design and architecture. The application is about building a distributed system. While not going to over board with microservices, but just enough granularity where it matters.
To get a wider understanding of learning and changes make sure to check out The Vault where I keep all my notes and our learnings.
The project uses a number of technologies (if the project does not have the specified it will in future):
Languages:
- Go
- Typescript
- C#
Tools:
- Tauri
- Sveltekit
- ElysiaJS
- Bun
- Docker
- NGINX
- Grafana
Infra:
- AWS CDK
To run the repo locally just follow along:
- Clone down
- Install docker if you do not have it already
- (Optional) - It is not required but the application is a mono repo that is managed with moon repo
pnpm i
- Create .env.development file in
./db
and./apps/ds_auth
. You can just copy the example one and rename/fill out what you want. docker compose up -d
moon run client:dev
- This should now open the client and have everything up and running
- You can login to the app with the default account
u: admin
p: admin
(very secure)
Check out the contributing guide for more information.