[WIP] A (somewhat barebones) atproto app for creating custom sites without hosting!
1# atcities.dev
2
3A (somewhat barebones) atproto app for creating custom sites without hosting!
4
5- Lexicons are located at [`./lexicons`](./lexicons/)
6- Server backend is located at [`./server`](./server/)
7- Upload CLI is located at [`./upload`](./upload/)
8- Web GUI **will be** located at [`./web-gui`](./web-gui/)
9- Fuse tool **will be** located at [`./fuse`](./fuse/)
10
11## How to:
12
13**View someones site?**
14Head to `https://<handle>.atcities.dev/` or `https://<did>.did-<method>.atcities.dev/`.
15
16**Upload your own site?**
17Use the upload cli. Installation guide below.
18
19**Self host atcities.dev?**
20Clone this repo and setup the `.env` file for `/server`, then \<build & run instructions here once complete\>
21
22### CLI installation guide.
23
241. Build from source:
25 Prerequisites: `git` `cargo` `rust`
26 ```sh
27 git clone https://tangled.org/@vielle.dev/atcities.dev
28 cd atcities.dev/upload
29 cargo build
30 sudo cp ./target/debug/atcities-upload /bin
31 # Reload your shell environment
32 atcities-upload --version
33 ```
34
35## Todo:
36
37- [x] Resolve `handle.host` and `did.did-method.host` domains to records/blobs
38- [x] Backfill network
39 - [x] Store did+route -> blob & mime type in database
40 - [x] Store blobs for CDN (max ~0.25gb per user)
41- [x] Moderate illegal content or hope that people are niceys
42 (Hope that people are niceys)
43- [x] Finish CLI tool
44 - [x] Sign in via app password
45 - [x] Clear old site
46 - [x] Upload new site
47- [ ] Fuse uploader
48- [ ] Web GUI uploader