This is my first test of Claude Code, creating a matrix client. every existing matrix client sucks, so being better than them isn't really a high bar. imo initial commit has already achieved this actually now that i look, cinny is pretty good, but i wanna do this anyway
things left to do:
Messaging
Rooms
User
Encryption
Media
feel free to try it out :) i host a copy at https://matrix.crafty.moe/
same install process as every other js app
git clone https://github.com/az4521/svelte_matrix_client.git
cd svelte_matrix_client
npm i
npm run dev
if you wanna serve this, run npm run build and copy the files in build/ into a web directory. it's all static files so there's no backend to run
this is fairly obvious, it's the default homeserver url for the login page
this is an array of "safe" hostnames that the client can fetch media from directly without going through the matrix homeserver url preview endpoint
this is a simple proxy that removes CORS headers from vxinstagram. you can set one up with the following nginx config
location /igproxy/ {
proxy_pass https://vxinstagram.com/;
proxy_set_header Host vxinstagram.com;
proxy_set_header Referer https://vxinstagram.com/;
proxy_ssl_server_name on;
add_header Access-Control-Allow-Origin "*";
add_header Access-Control-Allow-Methods "GET";
# Strip cookies/auth from the proxied response
proxy_hide_header Set-Cookie;
proxy_hide_header Authorization;
}