gitextract_v4_lgx2l/ ├── .dockerignore ├── .github/ │ ├── FUNDING.yml │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.md │ │ └── feature_request.md │ └── workflows/ │ ├── audit.yml │ ├── build_test_docker_image.yaml │ ├── client_api_check.yml │ ├── commitlint.yml │ ├── integration_test.yml │ ├── push_latest_docker.yml │ ├── rustlint.yml │ ├── stress_test.yml │ ├── wasm_publish.yml │ └── web_docker.yml ├── .gitignore ├── .sqlx/ │ ├── query-0389af6b225125d09c5a75b443561dba4d97b786d040e5b8d5a76de36716beb2.json │ ├── query-05e89f62ff993fa2e4b0002c0022bba9706359e402b07b15ccdeb67492625064.json │ ├── query-06096ba1131e78d3da5df25a4b0a1193f11c9782abaf91faf263a116f90e51af.json │ ├── query-075b89cfe2572d28e7adfc29bbe52fef4afdd5013686f7294efd966739886f0d.json │ ├── query-0781735c56d22370302beec06863dccbbb9e664b212de93e5073508a82b91609.json │ ├── query-081abcd7f80664e8acd205833b0f9ca43bc1ccc03d992e7b1c45c3e401a6007a.json │ ├── query-084655c4e26f78c9c0924ea39a099dc9c00ee73dc6ade2dcff27c03042ebe8c3.json │ ├── query-09cf032adce81ba99362b3df50ba104f4e1eb2d538350c65cf615ea13f1c37f0.json │ ├── query-09ff850490eab213cfa0ad88ece9ce7baa39beabee19754fd993268d29552eb9.json │ ├── query-0affbd65859d6299c6ba736797f970b86552b83d95316ec3f54f93501e00b522.json │ ├── query-0d9c62acb33b96bb81536d1ad3121174403bcd40b777eb8d384fe8e81e1db3c4.json │ ├── query-0eeb2af3c6974c7e6d1c20bb4b08965eae9b0a291c7cef6451208b7740b9804c.json │ ├── query-12c52797d87c0ec56ffe6d8baf24501a276fdac4453399190dc221de89b611f8.json │ ├── query-1545a42d784a1a5fa8e9ed6128814608b9230b64ce23dcd85de444a7aa01bf9e.json │ ├── query-15613595695e2e722c45712931ce0eb8d2a3deb1bb665d1f091f354a3ad96b92.json │ ├── query-16208887bc2f2ca6b5f3df8062a12b482908f9f113c0474eeae75f6784b5e0fc.json │ ├── query-18207c125d5f974894576ee1dcfe406b221e9119f570403ec7a41ae1359b3f6c.json │ ├── query-1ae2809504bb6ea7dabcb5b5acfed09b0dd2e382e9fec3430680192df63876b8.json │ ├── query-1b1ff4352abb6dad982279ee99c8dccb3621b55a838998c1b9803982ae10f622.json │ ├── query-1bd79541a2b351b11ae94fe8a7aad408f9b563fd123099aa701a1e07ce797d2f.json │ ├── query-1c8f022ff5add11376dbbc17efd874dd31fd908c4f17be1bded18dbc689e3b36.json │ ├── query-1e36d9b3adf957524af88f997f12e5eeeaabda218c3709540e4a4c2df0180047.json │ ├── query-21195760ea7ed2dc4eda1dc2bd0eed9afcc63651ba6e67e7db675307e3b87821.json │ ├── query-2167ca10f5c560d8d4121d57d425c84482fa1dd52ee6f2cc7934e7d356b0dee6.json │ ├── query-21f66ca39be3377f8c5e4b218123e266fe8e03260ecd1891c644820892dda2b2.json │ ├── query-223e530f8605f6d00789344565666f57705151e3c2318519e877b22f8ffc871b.json │ ├── query-229a99b7a3a2f136babd5499c2a1047fe840903acf0d06e57fb78ca9b03e7008.json │ ├── query-2394226650959b34ae80b1948b7a111720b3ea5da48934d8d7e395ecc84e6985.json │ ├── query-24c5fb37a4391d590e83d2710e9a2ee7f4d06efcdd6034df1f67bb0d9db45716.json │ ├── query-2593b975fcf2dcf0129a1390fd8e2888d440e07c904d7eb3ca14957be8bc6069.json │ ├── query-2902fd3a9faa9481754d38b29abb543640c0b5564dca8f0141c7de2b8aab9551.json │ ├── query-291f0916b7868f3598b50f659689b9c77d34112c2a2fff9fc04775da9f97e46d.json │ ├── query-29279a0a97beb08aea84d588374c7534c28bd9c4da24b1ee20245109f5c33880.json │ ├── query-2b0754f55889a20c294d2a77ba8d3fa34c8174856abfdede34797851183a177a.json │ ├── query-2c0a776a787bc748857873b682d2fa3c549ffeaf767aa8ee05b09b3857505ded.json │ ├── query-2c496e29533dd27117fbb688ba2324f04d7cc306181fcf3f82079d5639f632c4.json │ ├── query-2d6d00669ea7d598d69d848d143f33e8c144d35b3d4c5293f98344b2c62fe6c8.json │ ├── query-2dda0bc4d9486a49c0af00d8ee4408c970a2ba3533217c130281e7db5a4e3d6b.json │ ├── query-30a592588fe20bb1444178b7ee9e73e37d1d55572f936988528178bfa10158e5.json │ ├── query-315840e0657ea0b8d162635b4cc21ce84a09fd7ea14ea07980869a80ee06900c.json │ ├── query-32fd3dcd1a3e02c32ddedb232b6af2e7f9ea160354528f3299cca62367af10f7.json │ ├── query-340b8cef5a7676541b86505cdf103fcb5b54c40a9d6e599dc1d9dc0a95e1e862.json │ ├── query-354166a6fa147dc6e17bfc14cb68d3a72a2e7c3aa2d115686deb12086786e034.json │ ├── query-35622d4ebede28dd28b613edcf3970ad258286f176ce86e88bd662a602e4ad58.json │ ├── query-36733444fc8fac851fb540105ea6c9dca785455ae44ae518b98d8b57082e11d8.json │ ├── query-3865d921d76ac0d0eb16065738cddf82cb71945504116b0a04da759209b9c250.json │ ├── query-3b2daf263b4022e69c819edb55d412da8ad3fe4377155d8485fbaf186069f389.json │ ├── query-3bb5b82d46c55bbfd51319310a3cd065c4b796462a1ddf3c17617ee65ce9961a.json │ ├── query-3c2c94b9ac0a329b92847d7176a7435f894c5ef3b3b11e3e2ae03a8ec454a6d8.json │ ├── query-3ca587826f0598e7786c765dcb2fcd6ae08d8aa404f02920307547c769a3f91b.json │ ├── query-3cfb0a6d9a798f29422bc4bf4a52d3c86c3aae98c173b83c60eb57504a3d2c7c.json │ ├── query-3d3309a4ae7a88b3f7c9608dd78a1c1dc9b237a37e29722bcd2910bd23f9d873.json │ ├── query-3fdd28c263edf5c91ab8b770e6106d4890ec4bae2ff3c20f80c40cb4042d9e03.json │ ├── query-40db0a61665bdb9f7e9d1ce2a6c0eb05703e36e83c87802a72630388588de8cd.json │ ├── query-4123fa8796e8b56225155f79c2ee4c4dacda5ef51e858ce7dcb9877c7d55bd53.json │ ├── query-425b0b5ffbe3f1b80aedf15b8df1640c879d8d45883eee8b1e2fbd64eaf283d6.json │ ├── query-441316f35ca8c24bf78167f9fec48e28c05969bbbbe3d0e3d9e1569a375de476.json │ ├── query-4476f271f4ea8c83428b4178c43ee2894e380a7c3ae3cbc782f438fabc45de8b.json │ ├── query-44e4be501db0375fbd8ad8ed923bef887e361fe466ab46bdd6663f6cf97413a8.json │ ├── query-4f5951e61713d04963524b84648c9ff8c7be05f0089f6fd26fc6e0e0afeae579.json │ ├── query-4fc0611c846f86be652d42eb8ae21a5da0353fe810856aaabe91d7963329d098.json │ ├── query-51a3a723b1825da7b9abd9cb36db0cf8220abf063098a73e4a6fc3f87352b395.json │ ├── query-523087b0101a35abfc70a561272acec7a357491a86901f7927b8242173b5c8c8.json │ ├── query-52b936c6adf43ec5c7e777ad9379dec30b750fefad73684e552481f709006d04.json │ ├── query-53d87db17bb9c1d002adc82ba9f2c07ff33ea987a1157d7f6fd2344091b98deb.json │ ├── query-594af4041e0778476a699536316007f0a264f7d3db9de6326ef8082a2a898995.json │ ├── query-598e731078fc6417039cc16772eb5bc6c74d24c1a8018a981d2175a483dc699c.json │ ├── query-59b2a7854bb8f0d7ee34b9dfa4e3db5cac8e25fdebe186ba2cbd65012eb91f5f.json │ ├── query-5c2d58bfdedbb1be71337a97d5ed5a2921f83dd549507b2834a4d2582d2c361b.json │ ├── query-5cce5f82c0fb9237f724478e2167243bc772c092910f07b8226431a6dd70a7da.json │ ├── query-5d408d36790ade4da1ceeb68b4a183aa7d9abc27b0ec42c2a3c5af26ad80f128.json │ ├── query-5d51aef40f7e0716338b406263240dbc5e4a64cec6f1be10a3676e4f86ce4557.json │ ├── query-5e0d58f612425e1cf36dfc7f56691cfb8f6def1a3d29645922cb437d11ce62ef.json │ ├── query-620167841bb2acdd1c9c6aadf8245e3a483d87dc006d4e361e994ce2c5d768cd.json │ ├── query-62ed61bcf92fc0c3756f57d0fe05cdd12e70072f5646fe48790ad189a6e96b12.json │ ├── query-6380f5a6ded2dab8f18de42541c9d77c2f3af512e3f66e1b731ca7c00c9ea8f8.json │ ├── query-63f0871525ed70bd980223de574d241c0b738cfb7b0ea1fc808f02c0e05b9a2f.json │ ├── query-66218110851919b05b95b008a17547547d23f6baeeff8a5521b2b246126adc34.json │ ├── query-6716ec4787f7155af97a4890730f4b3fe564ead8d99f8355ac249f9b39316238.json │ ├── query-67b381fdcd20f8cfe782d939e56bf94f105cdb23a59fefb846afe8105d91d129.json │ ├── query-6821f1e02da2c71cdf0566a163c85ff185bf0ba89c770254c9c15880ba76a553.json │ ├── query-6935572cb23700243fbbd3dc382cdbf56edaadc4aab7855c237bce68e29414c0.json │ ├── query-6aca3fde126cb1761c0a5ce1fbfa793bdbac4aed137cdf60eb3f277f36d7bf7a.json │ ├── query-6ca2a2fa10d5334183d98176998d41f36948fe5624e290a32d0b50bc9fb256bf.json │ ├── query-6cc4a7da11a37413c9951983ee3f30de933cc6357a66c8e10366fde27acaefea.json │ ├── query-6f5d6d79587d7f7a52c920acccfe338a8c001ea30b722d3a6a1a60259d47913c.json │ ├── query-6fbcd1c32c638530461c74f8c8195a5b1e1e6f7a389a6a60d889c88c5f47302a.json │ ├── query-71c15686124c05a4fdef066738eadd0ab17d6af1bfeffc480c8fe52a4e6edab8.json │ ├── query-74de473589a405c3ab567e72a881869321095e2de497b2c1866c547f939c359c.json │ ├── query-75dc8578510ae696bf4bcdd780f7cefc666b4436cf53edf30a98dd2ff7926799.json │ ├── query-770a4979e137ca08c5ea625259221f9d397a56defb8e498eb92da7b3a8af612b.json │ ├── query-786a59b28265397658aecf0318beeedece2a7f5bea80b9189f3989721035c593.json │ ├── query-78a191e21a7e7a07eee88ed02c7fbf7035f908b8e4057f7ace1b3b5d433424fe.json │ ├── query-794c4ced16801b3e98a62eb44c18c14137dd09b11be73442a7f46b2f938b8445.json │ ├── query-7a4c7da16e99ff3875bdd7e0d189e26c3c1ab49672bace41992aecc446061850.json │ ├── query-7a86f93afe6e77d4481920b08ed38926446f6473107d68dfcd82ffecddcee890.json │ ├── query-7aa6e41c80f0b2906d46e73ae05e8e70e133b7edd450b102715b8a487d6055ac.json │ ├── query-7f6b1db5fd7b4e235f1e04d9d990fa2d47edfed23e692fbab778d387b2861a22.json │ ├── query-811b6b01de4fdb06ad58185a5c49dfaa31aef8ea30ab3421d4afc13822fc0a9c.json │ ├── query-816a026ca4c25329b2fb24d59efde9ab71798ff8b31ce7320e02344d4e8b3e42.json │ ├── query-834638eb3c38eb2c220aa23ac928874d87606b47ef3bb80540614ce2f8453936.json │ ├── query-842243ea6ca59135ae539060ff37b80791e76aa268a44642ede515f315e80c01.json │ ├── query-84c224af99f654e2e0ba11a411376794855483eedb0c30b1873ed660ca8d10cd.json │ ├── query-84e600f13d61c56a45133e7458d5152e68dec72030e5789bf4149a333b6ebdf5.json │ ├── query-852c729791d5b5eb2dde5772ccbcd24579486e43886d95a11481991fdf28efa8.json │ ├── query-85e9688218913dee85480932273ff6cf75d29af45638b195e73d73b6048806bf.json │ ├── query-865fe86df6d04f8abb6d477af13f8a2392a742f4027d99c290f0f156df48be07.json │ ├── query-87628d6739441a22229d08832d09cbf4598c36204a6885b2e279c848cedcfa75.json │ ├── query-88516b9a2a424bc7697337d6f16b0d6e94b919597d709f930467423c5b4c0ec2.json │ ├── query-8cd79c307813a509119230c7673f86471463a06ad9a84764da8d5bb1e6168e1c.json │ ├── query-90a302af791eeb5c5f60c3f95145e0e73c2a1652c5b547e4118bac1d005300de.json │ ├── query-90afca9cc8b6d4ca31e8ddf1ce466411b5034639df91b739f5cbe2af0ffb6811.json │ ├── query-92c4d0e22b1f6f117c9f19589832f5f89cb5b903eee3c12f5e5fc0f70f3236e1.json │ ├── query-936faba4e3c8fc3685d68f561a2c2d4f386c77cffde6f25702c19758a12669ce.json │ ├── query-93f6a59171d7cd08d321c777f24255621280fbcf6a2c009afd601eac16c9ba3a.json │ ├── query-94555a25b986992bd3cfb67bd36ff015d39bdd78ac20d56570306616bf10faf3.json │ ├── query-95b1b405028c45c074121110d046f42f8229f150c2384671802ee7c1ef9e376d.json │ ├── query-95b4d7508569cac38c78d21a0a471772d3703e5678ee7ca0cd32d60f5343be91.json │ ├── query-95c00cd1ce7cdb8f5c8f45d5262d371b1b3c3f903f4eab9c0070d9916e3f8c12.json │ ├── query-9ab1ff2abc6d51bc5a48a1dc6c294bbfdbe0d5f11a5e2ffc8c1973217b80307b.json │ ├── query-9b2a8297fa991418b255fc5cb6ad70d695c4dceed20bdc557bfedfc820511126.json │ ├── query-a18d0c9536dba734715903c8e8f0b7be30d3e7a477c4ddd03533b781df2fb2c7.json │ ├── query-a3ab30d48e4a10aff1fbfa9dbc5d275a06598610bc471893c8c0febfc36c4737.json │ ├── query-a3c235bd5df50f80ec93c3d9f6da8db7e17e89788f30c5b6432c582992b6a009.json │ ├── query-a527a90fcb69c58a5e711555b6ee56e7b92ceabe746279eccd7ae3e9fa918e96.json │ ├── query-a75bf8b11d832d154716d4618595b117da583a31b51baaf7b84e9ee0d0e3109c.json │ ├── query-a7c03becdf9954611ac7ad96e1f5bb5e8364f095f1cc4dc23719b218eb032973.json │ ├── query-aa75996ca6aa12f0bcaa5fb092ac279f8a94aadcc29d0e2b652dc420506835e7.json │ ├── query-b16f38d563d4d0b35f06978a8b2c76dc5121b0e59f8b5992c9dad05dd101c8ad.json │ ├── query-b5024138772e13557df973c1c021daf74aab97b5874d7366c478c18ae2e89e58.json │ ├── query-b509712055858af398fd12ddd1a8c3da54280cf55f0c53f340bddbf4bf09b3e0.json │ ├── query-ba815f67aab3f302a2982225b72c6113bbd9bc87326e4f0a3b44dadbb5f47920.json │ ├── query-bbb3c31ea7e9c0a3bdabbc23b2730ee0254f38a7c1457f917c8f37f1e1aefa12.json │ ├── query-bd34e351ea1adc0d12d4f1cce5a855089b7f39a431dea2903c3e0b9a220640b8.json │ ├── query-bde2b88ffb1b59362c7ae82369892c79131c175924f95e5d48d75931fb846f41.json │ ├── query-bf9bff5c65ba051329ed2b694eff62808f971a8262b6e1649d91526ab3a3870d.json │ ├── query-c335b73ad499b67100e4ce3131a526ddf1745488597c3392ae05e4b398a8715e.json │ ├── query-c360ec37792d567535ccd2a5011d92c7a201f516e92e204db855167f381c58b1.json │ ├── query-c43d414f6fcaed34e059f55abaaa0bd1343cacf4d04e98481a4787a4b965ce94.json │ ├── query-c81848346ed2ff85f1d5fb8041fba648137a927762b385b97054552c00793a50.json │ ├── query-c843fb8517b1e364016b85a9e94927673bf8311bfbf723b610d59ecfef3fafce.json │ ├── query-c8b1f57c5ddce8006a8e137be07f13b455f59657f5fcef67d69905ecec4cb063.json │ ├── query-ca2a21db67716e3f12b9f9240c1dba1b7cbe0bec1f59ef132fed53942ebad317.json │ ├── query-cb2375ad0094baefed417645b781f40dcabfbfe4a4738c99bb4efff649e6a0e6.json │ ├── query-cbe8402053d42529dce158b446d09a00982e1d7cdc33835776bfbefb4b4c1854.json │ ├── query-cbf1d3d9fdeb672eacd4b008879787bc1f0b22a554fb249d4e12a665d9767cbd.json │ ├── query-cce2abeed3399ad0b8867901735c5883c8d35fa82d6e0596c56eaf02c36a7e4f.json │ ├── query-d0a24b554fe420d7ebf856ae7f1525aff3695fc97e2f43041dc54a4e62a88746.json │ ├── query-d0e5f5097b35a15f19e9e7faf2c62336d5f130e939331e84c7d834f6028ea673.json │ ├── query-d1ab621e0b6e8bc24f8fa8cbb975ae3b7f9f366cac02d66b5291d7207295ca29.json │ ├── query-d1f845717b19636e61d1d96d7a5629754f3ded9bda9116953bd1b40bd80551ae.json │ ├── query-d2e87c077e5702cd57a88e23e1eabe4b0badd98ef99da1b185bffa8d5c9ed298.json │ ├── query-d366aca6b187f086e5a8281081adec190bbb3cd5256c5a77ed321b99cd34bbbc.json │ ├── query-d388782f755f0b164ef36c168af142baeb9bbd3cc2b8b7cd736b346580be8790.json │ ├── query-d492c20dec54c7335744dcc139b95f30a80f06d9fd48de644630adf183e1ac34.json │ ├── query-d4fa2c5f3c455be4694235009e82efdd99d366e3b0374f78efec8dd560f88d95.json │ ├── query-d61523de25986b47a382d36a1f18e590420f1b1285d024f5554cc02c375d6476.json │ ├── query-d756ec630d5b75dd0dc7df2339847e28bdf07a790e65fd40a64d7f9022f430bd.json │ ├── query-d84ab58e78653688e7c392ffad00d6e039be5ccb9c5b99b7088cc41cfe981873.json │ ├── query-d90e7efaca54b92de038b6eef20a7bd36be747dc38f7943fe299799c623038be.json │ ├── query-d921f52e4bc3fef72c810e19455a2fa4fbd52f5a1f3a1838b146d001eadabd47.json │ ├── query-da1434fe116cbb48bc5aac0b6905dd748f096bf78d3cdcfea3a576b4aaeba5fc.json │ ├── query-dbc31936b3e79632f9c8bae449182274d9d75766bd9a5c383b96bd60e9c5c866.json │ ├── query-dc600fc160b55be22fb77e285fd7e5e646ef359fdbca9b62c6aefede5ebff606.json │ ├── query-e219696c80f1d4c38260ebeb50ec78e344975eef6760951dbf6201c01b8ceef0.json │ ├── query-e2b4d66736962d1e3d0b9cf687ce5c5e653b465462f53433a28cf314e5c87d6c.json │ ├── query-e38e66d89806471f358b317778de35a68da4b9e6ca6e4b6a7c437ca7493b858c.json │ ├── query-e6159a03f1521b44de59858cd95c48e62cabefba6cac629c104eec75d2868bf3.json │ ├── query-e6a0e771ffacfdec95ef8c36de769448384fda4350aa630becebd0e5add632f4.json │ ├── query-ea239353f73904400915ec89640ac71985a8d5b39037f567a3e2ac1c5eea8f64.json │ ├── query-eb142b33bd6d0d9f3ceb597be9251eac710a463d1052ba10c41b207dbf63efe1.json │ ├── query-ed9bce7f35c4dd8d41427bc56db67adf175044a8d31149b3745ceb8f9b3c82fa.json │ ├── query-ef947984b00fdd32271e7e76d8b5d035cd4ca211b600787fda18d62a34b4c04b.json │ ├── query-f05042dd22f862603e63f63d47b93e579545c79cabe15d32304a47ca7665a55f.json │ ├── query-f18d6e075a522b0ce5935351dd57ab0dda4d8b4ed3881c2ad0bc09c07c43e6fe.json │ ├── query-f409626142553d4496d15b5dfa7da8a5a238da86f56c930c09a261f2efa1f55c.json │ ├── query-f54ced785b4fdd22c9236b566996d5d9d4a8c91902e4029fe8f8f30f3af39b39.json │ ├── query-f58a2f05efbda0698d27d83be5c6816fc46e3de33f926c6343bcbfa90a387b07.json │ ├── query-f68cc2042d6aa78feeb33640e9ef13f46c5e10ee269ea0bd965b0e57dee6cf94.json │ ├── query-f78c2c56568dcee0b93e759ee517fb87d6d115a02856a756d481ea4c863c0327.json │ ├── query-f9c28d0fa124ef543259c6869d7c517deabda3af9a67c6e59d8e15c0245c83a0.json │ ├── query-fa92aff963d9a0c69fb203f76f54728c67d52a68eada59ba3bd445c4b8aeceef.json │ ├── query-faf37892741717680e9a8d8e7d8decaba571d0dd129b57334aad7c63e2a2ef59.json │ ├── query-fb21df2827de97055cdc1c493b079b29667f75b18169c909c4c8341697fd0105.json │ ├── query-fd2a37dd917717a9bb5e1db84f03f0e84e32d2fd081955389561c6567896ea9f.json │ └── query-fffe6f01abf0e5d8649a49b5793ccb92a9f823f07c363341357ea74bf4f4a16d.json ├── Cargo.toml ├── Dockerfile ├── LICENSE ├── Makefile ├── README.md ├── SELF_HOST_LICENSE_AGREEMENT.md ├── admin_frontend/ │ ├── Cargo.toml │ ├── Dockerfile │ ├── README.md │ ├── assets/ │ │ ├── README.md │ │ ├── apple/ │ │ │ └── logo.html │ │ ├── base.css │ │ ├── discord/ │ │ │ ├── README.md │ │ │ └── logo.html │ │ ├── github/ │ │ │ ├── README.md │ │ │ └── logo.html │ │ ├── google/ │ │ │ ├── README.md │ │ │ ├── logo.css │ │ │ └── logo.html │ │ ├── home.css │ │ ├── login.css │ │ ├── logo.html │ │ ├── message.css │ │ ├── minio/ │ │ │ └── logo.html │ │ ├── navigate.css │ │ ├── postgres/ │ │ │ └── logo.html │ │ ├── sidebar.css │ │ └── top_menu_bar.css │ ├── dev.env │ ├── src/ │ │ ├── askama_entities.rs │ │ ├── config.rs │ │ ├── error.rs │ │ ├── ext/ │ │ │ ├── api.rs │ │ │ ├── entities.rs │ │ │ ├── error.rs │ │ │ └── mod.rs │ │ ├── lib.rs │ │ ├── main.rs │ │ ├── models.rs │ │ ├── response.rs │ │ ├── session.rs │ │ ├── templates.rs │ │ ├── web_api.rs │ │ └── web_app.rs │ ├── templates/ │ │ ├── components/ │ │ │ ├── admin_navigate.html │ │ │ ├── admin_sidebar.html │ │ │ ├── admin_sso_create.html │ │ │ ├── admin_sso_detail.html │ │ │ ├── admin_sso_list.html │ │ │ ├── admin_top_menu_bar.html │ │ │ ├── admin_user_details.html │ │ │ ├── admin_users.html │ │ │ ├── appflowy_banner.html │ │ │ ├── change_password.html │ │ │ ├── create_user.html │ │ │ ├── invite.html │ │ │ ├── message.html │ │ │ ├── navigate.html │ │ │ ├── shared_workspaces.html │ │ │ ├── sidebar.html │ │ │ ├── top_menu_bar.html │ │ │ ├── user_details.html │ │ │ ├── user_usage.html │ │ │ └── workspace_usage.html │ │ ├── layouts/ │ │ │ └── base.html │ │ └── pages/ │ │ ├── admin_home.html │ │ ├── home.html │ │ ├── login.html │ │ ├── login_callback.html │ │ ├── login_v2.html │ │ ├── open_appflowy_or_download.html │ │ ├── payment_success_redirect.html │ │ └── redirect.html │ └── tests/ │ ├── main.rs │ ├── oauth/ │ │ └── mod.rs │ └── utils/ │ ├── mod.rs │ └── test_config.rs ├── assets/ │ └── mailer_templates/ │ ├── build_production/ │ │ ├── access_request.html │ │ ├── access_request_approved_notification.html │ │ ├── confirmation.html │ │ ├── import_data_fail.html │ │ ├── import_data_success.html │ │ ├── magic_link.html │ │ ├── page_mention_notification.html │ │ ├── recovery.html │ │ └── workspace_invitation.html │ └── confirmation.html ├── deny.toml ├── deploy.env ├── dev.env ├── doc/ │ ├── AUTHENTICATION.md │ ├── CONTRIBUTING.md │ ├── DEPLOYMENT.md │ ├── EC2_SELF_HOST_GUIDE.md │ ├── GUIDE.md │ ├── LOCAL_BUILD.md │ ├── OKTA_SAML.md │ └── README.md ├── docker/ │ ├── gotrue/ │ │ ├── Dockerfile │ │ └── start.sh │ ├── pgadmin/ │ │ └── servers.json │ └── web/ │ ├── Dockerfile │ └── nginx.conf ├── docker-compose-ci.yml ├── docker-compose-dev.yml ├── docker-compose-extras.yml ├── docker-compose.yml ├── email_template/ │ ├── .editorconfig │ ├── .gitignore │ ├── .npmrc │ ├── LICENSE │ ├── README.md │ ├── config.js │ ├── config.production.js │ ├── package.json │ ├── src/ │ │ ├── components/ │ │ │ ├── button.html │ │ │ ├── divider.html │ │ │ ├── footer.html │ │ │ ├── spacer.html │ │ │ ├── v-fill.html │ │ │ └── v-image.html │ │ ├── css/ │ │ │ ├── resets.css │ │ │ ├── tailwind.css │ │ │ └── utilities.css │ │ ├── layouts/ │ │ │ └── main.html │ │ └── templates/ │ │ ├── access_request.html │ │ ├── access_request_approved_notification.html │ │ ├── confirmation.html │ │ ├── import_data_fail.html │ │ ├── import_data_success.html │ │ ├── magic_link.html │ │ ├── page_mention_notification.html │ │ ├── recovery.html │ │ └── workspace_invitation.html │ └── tailwind.config.js ├── env.deploy.secret.example ├── env.dev.secret.example ├── external_proxy_config/ │ └── nginx/ │ └── appflowy.site.conf ├── libs/ │ ├── access-control/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── act.rs │ │ ├── casbin/ │ │ │ ├── access.rs │ │ │ ├── adapter.rs │ │ │ ├── collab.rs │ │ │ ├── enforcer.rs │ │ │ ├── enforcer_v2.rs │ │ │ ├── mod.rs │ │ │ ├── performance_comparison_tests.rs │ │ │ ├── redis_cache.rs │ │ │ ├── util.rs │ │ │ └── workspace.rs │ │ ├── collab.rs │ │ ├── entity.rs │ │ ├── lib.rs │ │ ├── metrics.rs │ │ ├── noops/ │ │ │ ├── collab.rs │ │ │ ├── mod.rs │ │ │ └── workspace.rs │ │ ├── request.rs │ │ └── workspace.rs │ ├── app-error/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── gotrue.rs │ │ └── lib.rs │ ├── appflowy-ai-client/ │ │ ├── Cargo.toml │ │ ├── src/ │ │ │ ├── client.rs │ │ │ ├── dto.rs │ │ │ ├── error.rs │ │ │ └── lib.rs │ │ └── tests/ │ │ ├── chat_test/ │ │ │ ├── completion_test.rs │ │ │ ├── context_test.rs │ │ │ ├── mod.rs │ │ │ ├── model_config_test.rs │ │ │ └── qa_test.rs │ │ ├── index_test/ │ │ │ ├── index_search_test.rs │ │ │ └── mod.rs │ │ ├── main.rs │ │ └── row_test/ │ │ ├── mod.rs │ │ ├── summarize_test.rs │ │ └── translate_test.rs │ ├── appflowy-proto/ │ │ ├── Cargo.toml │ │ ├── build.rs │ │ ├── proto/ │ │ │ ├── collab.proto │ │ │ ├── messages.proto │ │ │ └── notification.proto │ │ └── src/ │ │ ├── client_message.rs │ │ ├── lib.rs │ │ ├── pb/ │ │ │ ├── collab.rs │ │ │ ├── messages.rs │ │ │ ├── mod.rs │ │ │ └── notification.rs │ │ ├── server_message.rs │ │ └── shared.rs │ ├── client-api/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── collab_sync/ │ │ │ ├── collab_sink.rs │ │ │ ├── collab_stream.rs │ │ │ ├── error.rs │ │ │ ├── mod.rs │ │ │ ├── plugin.rs │ │ │ └── sync_control.rs │ │ ├── http.rs │ │ ├── http_access_request.rs │ │ ├── http_ai.rs │ │ ├── http_billing.rs │ │ ├── http_blob.rs │ │ ├── http_chat.rs │ │ ├── http_collab.rs │ │ ├── http_file.rs │ │ ├── http_guest.rs │ │ ├── http_member.rs │ │ ├── http_person.rs │ │ ├── http_publish.rs │ │ ├── http_quick_note.rs │ │ ├── http_search.rs │ │ ├── http_settings.rs │ │ ├── http_template.rs │ │ ├── http_view.rs │ │ ├── lib.rs │ │ ├── log.rs │ │ ├── notify.rs │ │ ├── ping.rs │ │ ├── retry.rs │ │ ├── v2/ │ │ │ ├── PROTOCOL.md │ │ │ ├── actor.rs │ │ │ ├── compactor.rs │ │ │ ├── conn_retry.rs │ │ │ ├── controller.rs │ │ │ ├── db.rs │ │ │ └── mod.rs │ │ └── ws/ │ │ ├── client.rs │ │ ├── error.rs │ │ ├── handler.rs │ │ ├── mod.rs │ │ ├── msg_queue.rs │ │ └── state.rs │ ├── client-api-entity/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── id.rs │ │ └── lib.rs │ ├── client-api-test/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── assertion_utils.rs │ │ ├── async_utils.rs │ │ ├── client.rs │ │ ├── database_util.rs │ │ ├── lib.rs │ │ ├── log.rs │ │ ├── test_client.rs │ │ ├── test_client_config.rs │ │ ├── test_client_v2.rs │ │ ├── user.rs │ │ └── workspace_ops.rs │ ├── client-websocket/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── error.rs │ │ ├── lib.rs │ │ ├── message.rs │ │ ├── native.rs │ │ └── web.rs │ ├── collab-rt-entity/ │ │ ├── .gitignore │ │ ├── Cargo.toml │ │ ├── build.rs │ │ ├── migration/ │ │ │ ├── 0147/ │ │ │ │ ├── client_init │ │ │ │ └── collab_update │ │ │ └── 0149/ │ │ │ ├── client_collab_v1 │ │ │ ├── client_init │ │ │ └── collab_update │ │ ├── proto/ │ │ │ ├── collab.proto │ │ │ └── realtime.proto │ │ ├── src/ │ │ │ ├── client_message.rs │ │ │ ├── collab_proto.rs │ │ │ ├── lib.rs │ │ │ ├── message.rs │ │ │ ├── realtime_proto.rs │ │ │ ├── server_message.rs │ │ │ └── user.rs │ │ └── tests/ │ │ ├── main.rs │ │ └── serde_test.rs │ ├── collab-rt-protocol/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── data_validation.rs │ │ ├── lib.rs │ │ ├── message.rs │ │ └── protocol.rs │ ├── collab-stream/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── awareness_gossip.rs │ │ ├── client.rs │ │ ├── collab_update_sink.rs │ │ ├── error.rs │ │ ├── lease.rs │ │ ├── lib.rs │ │ ├── metrics.rs │ │ ├── model.rs │ │ └── stream_router.rs │ ├── database/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── access_request.rs │ │ ├── chat/ │ │ │ ├── chat_ops.rs │ │ │ └── mod.rs │ │ ├── collab/ │ │ │ ├── collab_db_ops.rs │ │ │ ├── collab_storage.rs │ │ │ └── mod.rs │ │ ├── file/ │ │ │ ├── file_storage.rs │ │ │ ├── mod.rs │ │ │ ├── s3_client_impl.rs │ │ │ └── utils.rs │ │ ├── history/ │ │ │ ├── mod.rs │ │ │ └── ops.rs │ │ ├── index/ │ │ │ ├── collab_embeddings_ops.rs │ │ │ ├── mod.rs │ │ │ └── search_ops.rs │ │ ├── lib.rs │ │ ├── listener.rs │ │ ├── notification.rs │ │ ├── pg_row.rs │ │ ├── publish.rs │ │ ├── quick_note.rs │ │ ├── resource_usage.rs │ │ ├── template.rs │ │ ├── user.rs │ │ └── workspace.rs │ ├── database-entity/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── dto.rs │ │ ├── error.rs │ │ ├── file_dto.rs │ │ └── lib.rs │ ├── gotrue/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── api.rs │ │ ├── grant.rs │ │ ├── lib.rs │ │ └── params.rs │ ├── gotrue-entity/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── dto.rs │ │ ├── gotrue_jwt.rs │ │ ├── lib.rs │ │ └── sso.rs │ ├── indexer/ │ │ ├── Cargo.toml │ │ ├── README.md │ │ └── src/ │ │ ├── collab_indexer/ │ │ │ ├── document_indexer.rs │ │ │ ├── mod.rs │ │ │ └── provider.rs │ │ ├── entity.rs │ │ ├── error.rs │ │ ├── lib.rs │ │ ├── metrics.rs │ │ ├── queue.rs │ │ ├── scheduler.rs │ │ ├── unindexed_workspace.rs │ │ └── vector/ │ │ ├── embedder.rs │ │ ├── mod.rs │ │ └── open_ai.rs │ ├── infra/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── env_util.rs │ │ ├── file_util.rs │ │ ├── lib.rs │ │ ├── reqwest.rs │ │ ├── thread_pool.rs │ │ ├── tokio_runtime.rs │ │ └── validate.rs │ ├── llm-client/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── chat.rs │ │ └── lib.rs │ ├── mailer/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── config.rs │ │ ├── lib.rs │ │ └── sender.rs │ ├── shared-entity/ │ │ ├── Cargo.toml │ │ └── src/ │ │ ├── dto/ │ │ │ ├── access_request_dto.rs │ │ │ ├── ai_dto.rs │ │ │ ├── auth_dto.rs │ │ │ ├── billing_dto.rs │ │ │ ├── chat_dto.rs │ │ │ ├── file_dto.rs │ │ │ ├── guest_dto.rs │ │ │ ├── history_dto.rs │ │ │ ├── import_dto.rs │ │ │ ├── mod.rs │ │ │ ├── publish_dto.rs │ │ │ ├── search_dto.rs │ │ │ ├── server_info_dto.rs │ │ │ └── workspace_dto.rs │ │ ├── lib.rs │ │ ├── request.rs │ │ ├── response.rs │ │ ├── response_actix.rs │ │ └── response_stream.rs │ ├── snowflake/ │ │ ├── Cargo.toml │ │ └── src/ │ │ └── lib.rs │ ├── tonic-proto/ │ │ ├── Cargo.toml │ │ ├── build.rs │ │ ├── proto/ │ │ │ └── history.proto │ │ └── src/ │ │ └── lib.rs │ └── workspace-template/ │ ├── Cargo.toml │ ├── assets/ │ │ ├── default_space.json │ │ ├── desktop_guide.json │ │ ├── getting_started.json │ │ ├── inbox.json │ │ ├── initial_document.json │ │ ├── mobile_guide.json │ │ ├── to-dos.json │ │ ├── vault_get_started.json │ │ └── web_guide.json │ └── src/ │ ├── database/ │ │ ├── database_collab.rs │ │ └── mod.rs │ ├── document/ │ │ ├── getting_started.rs │ │ ├── mod.rs │ │ ├── parser.rs │ │ ├── util.rs │ │ └── vault_template.rs │ ├── hierarchy_builder.rs │ ├── lib.rs │ └── tests/ │ ├── getting_started_tests.rs │ └── mod.rs ├── migrations/ │ ├── 20230312043024_user.sql │ ├── 20230906101032_permission.sql │ ├── 20230906101223_workspace.sql │ ├── 20230906101555_user_profile.sql │ ├── 20230906102652_collab.sql │ ├── 20230926145155_blob_storage.sql │ ├── 20231113074418_user_change.sql │ ├── 20231130150001_user_id_foreign_key.sql │ ├── 20240123140707_workspace_owner_trigger.sql │ ├── 20240227000000_workspace_icon.sql │ ├── 20240303003711_collab_member_timestamp.sql │ ├── 20240304173938_workspace_invitation.sql │ ├── 20240306110000_workspace_invitation_2.sql │ ├── 20240412083446_history_init.sql │ ├── 20240510024506_chat_message.sql │ ├── 20240529054858_workspace_add_token_usage.sql │ ├── 20240531031836_chat_message_meta.sql │ ├── 20240604090043_add_workspace_settings.sql │ ├── 20240613112820_publish_collab.sql │ ├── 20240614171931_collab_embeddings.sql │ ├── 20240617135926_af_workspace_foreign_key_indices.sql │ ├── 20240618035048_af_workspace_ai_usage.sql │ ├── 20240618173348_publish_collab_2.sql │ ├── 20240621105148_publish_collab_3.sql │ ├── 20240626184736_publish_collab_4.sql │ ├── 20240627525836_publish_collab_5.sql │ ├── 20240629035230_publish_collab_6.sql │ ├── 20240630010030_workspace_member_foreign_key.sql │ ├── 20240723090305_publish_view_comment.sql │ ├── 20240725065111_publish_view_reaction.sql │ ├── 20240729065107_publish_view_reaction_2.sql │ ├── 20240806054557_template_category.sql │ ├── 20240806103039_template_creator.sql │ ├── 20240813040905_template.sql │ ├── 20240910100000_af_collab_embeddings_indices.sql │ ├── 20240924045045_access_request.sql │ ├── 20240930135712_import_data.sql │ ├── 20241014153023_default_published_view.sql │ ├── 20241025135939_import_task_add_uid_column.sql │ ├── 20241031094508_af_uuid_indexes.sql │ ├── 20241101063559_af_workspace_namespace.sql │ ├── 20241108155841_unpublished_collab.sql │ ├── 20241124212630_af_collab_updated_at.sql │ ├── 20241126175909_af_collab_stored_procedures.sql │ ├── 20241211034455_stop_writing_to_collab_member.sql │ ├── 20241216080018_quick_notes.sql │ ├── 20241218090459_collab_embedding_add_metadata.sql │ ├── 20241222152427_collab_add_indexed_at.sql │ ├── 20241230064618_collab_embedding_add_fragment_index.sql │ ├── 20250109142738_blob_metadata_add_file_status.sql │ ├── 20250113091708_publish_options.sql │ ├── 20250217080054_drop_collab_member_trigger.sql │ ├── 20250226091933_blob_metadata_add_file_source.sql │ ├── 20250305082546_workspace_delete_trigger.sql │ ├── 20250318120849_departition_af_collab.sql │ ├── 20250403021559_workspace_invite_code.sql │ ├── 20250405092732_af_collab_embeddings_upsert.sql │ ├── 20250414074846_drop_af_collab_set_updated_at_trigger.sql │ ├── 20250703030740_workspace_member_profile.sql │ ├── 20250714060306_page_mention.sql │ ├── 20250718033221_page_mention_notification.sql │ ├── 20250721084910_page_mention_view_name.sql │ ├── 20250723024109_workspace_profile_custom_image_url.sql │ └── 20250723072011_page_mention_notification_status.sql ├── nginx/ │ ├── nginx.conf │ └── ssl/ │ ├── certificate.crt │ └── private_key.key ├── rust-toolchain.toml ├── rustfmt.toml ├── script/ │ ├── client_api_deps_check.sh │ ├── code_gen.sh │ ├── diagnose_appflowy.sh │ ├── generate_env.sh │ ├── lib/ │ │ ├── README.md │ │ ├── check_config.sh │ │ ├── check_containers.sh │ │ ├── check_functional.sh │ │ ├── check_health.sh │ │ ├── check_logs.sh │ │ ├── report.sh │ │ └── utils.sh │ ├── redis/ │ │ ├── remove_redis_stream_range.sh │ │ └── show_redis_stream_values.sh │ ├── reset-password-interactive.sh │ ├── run_ci_server.sh │ └── run_local_server.sh ├── services/ │ ├── appflowy-collaborate/ │ │ ├── Cargo.toml │ │ ├── src/ │ │ │ ├── actix_ws/ │ │ │ │ ├── client/ │ │ │ │ │ ├── mod.rs │ │ │ │ │ └── rt_client.rs │ │ │ │ ├── entities.rs │ │ │ │ ├── mod.rs │ │ │ │ └── server/ │ │ │ │ ├── mod.rs │ │ │ │ └── rt_actor.rs │ │ │ ├── client/ │ │ │ │ ├── client_msg_router.rs │ │ │ │ └── mod.rs │ │ │ ├── collab/ │ │ │ │ ├── cache/ │ │ │ │ │ ├── collab_cache.rs │ │ │ │ │ ├── disk_cache.rs │ │ │ │ │ ├── mem_cache.rs │ │ │ │ │ └── mod.rs │ │ │ │ ├── collab_manager.rs │ │ │ │ ├── collab_store.rs │ │ │ │ ├── mod.rs │ │ │ │ └── snapshot_scheduler.rs │ │ │ ├── compression.rs │ │ │ ├── config.rs │ │ │ ├── connect_state.rs │ │ │ ├── error.rs │ │ │ ├── group/ │ │ │ │ ├── cmd.rs │ │ │ │ ├── group_init.rs │ │ │ │ ├── manager.rs │ │ │ │ ├── mod.rs │ │ │ │ ├── null_sender.rs │ │ │ │ └── state.rs │ │ │ ├── lib.rs │ │ │ ├── metrics.rs │ │ │ ├── permission.rs │ │ │ ├── rt_server.rs │ │ │ ├── snapshot/ │ │ │ │ ├── mod.rs │ │ │ │ └── snapshot_control.rs │ │ │ ├── util/ │ │ │ │ ├── channel_ext.rs │ │ │ │ └── mod.rs │ │ │ └── ws2/ │ │ │ ├── actors/ │ │ │ │ ├── mod.rs │ │ │ │ ├── server.rs │ │ │ │ ├── session.rs │ │ │ │ └── workspace.rs │ │ │ └── mod.rs │ │ └── tests/ │ │ ├── indexer_test.rs │ │ └── main.rs │ └── appflowy-worker/ │ ├── Cargo.toml │ ├── Dockerfile │ ├── README.md │ ├── deploy.env │ ├── src/ │ │ ├── application.rs │ │ ├── config.rs │ │ ├── error.rs │ │ ├── import_worker/ │ │ │ ├── email_notifier.rs │ │ │ ├── mod.rs │ │ │ ├── report.rs │ │ │ └── worker.rs │ │ ├── indexer_worker/ │ │ │ ├── mod.rs │ │ │ └── worker.rs │ │ ├── lib.rs │ │ ├── mailer.rs │ │ ├── main.rs │ │ ├── metric.rs │ │ └── s3_client.rs │ └── tests/ │ ├── import_test.rs │ └── main.rs ├── src/ │ ├── api/ │ │ ├── access_request.rs │ │ ├── ai.rs │ │ ├── chat.rs │ │ ├── data_import.rs │ │ ├── file_storage.rs │ │ ├── guest.rs │ │ ├── invite_code.rs │ │ ├── metrics.rs │ │ ├── mod.rs │ │ ├── search.rs │ │ ├── server_info.rs │ │ ├── template.rs │ │ ├── user.rs │ │ ├── util.rs │ │ ├── workspace.rs │ │ └── ws.rs │ ├── application.rs │ ├── biz/ │ │ ├── access_request/ │ │ │ ├── mod.rs │ │ │ └── ops.rs │ │ ├── authentication/ │ │ │ ├── jwt.rs │ │ │ └── mod.rs │ │ ├── chat/ │ │ │ ├── metrics.rs │ │ │ ├── mod.rs │ │ │ └── ops.rs │ │ ├── collab/ │ │ │ ├── database.rs │ │ │ ├── folder_view.rs │ │ │ ├── mod.rs │ │ │ ├── ops.rs │ │ │ ├── publish_outline.rs │ │ │ └── utils.rs │ │ ├── data_import/ │ │ │ └── mod.rs │ │ ├── mod.rs │ │ ├── notification/ │ │ │ ├── email.rs │ │ │ └── mod.rs │ │ ├── pg_listener.rs │ │ ├── search/ │ │ │ ├── mod.rs │ │ │ └── ops.rs │ │ ├── template/ │ │ │ ├── mod.rs │ │ │ └── ops.rs │ │ ├── user/ │ │ │ ├── image_asset.rs │ │ │ ├── mod.rs │ │ │ ├── user_delete.rs │ │ │ ├── user_info.rs │ │ │ ├── user_init.rs │ │ │ └── user_verify.rs │ │ └── workspace/ │ │ ├── duplicate.rs │ │ ├── invite.rs │ │ ├── mod.rs │ │ ├── ops.rs │ │ ├── page_view.rs │ │ ├── publish.rs │ │ ├── publish_dup.rs │ │ └── quick_note.rs │ ├── config/ │ │ ├── config.rs │ │ └── mod.rs │ ├── domain/ │ │ ├── compression.rs │ │ └── mod.rs │ ├── lib.rs │ ├── mailer.rs │ ├── main.rs │ ├── middleware/ │ │ ├── metrics_mw.rs │ │ ├── mod.rs │ │ └── request_id.rs │ ├── state.rs │ └── telemetry.rs ├── tests/ │ ├── ai_test/ │ │ ├── asset/ │ │ │ └── my_profile.txt │ │ ├── chat_test.rs │ │ ├── chat_with_selected_doc_test.rs │ │ ├── completion_test.rs │ │ ├── mod.rs │ │ ├── summarize_row.rs │ │ ├── summary_search_test.rs │ │ └── util.rs │ ├── collab/ │ │ ├── awareness_test.rs │ │ ├── collab_curd_test.rs │ │ ├── collab_embedding_test.rs │ │ ├── database_crud.rs │ │ ├── missing_update_test.rs │ │ ├── mod.rs │ │ ├── multi_devices_edit.rs │ │ ├── permission_test.rs │ │ ├── single_device_edit.rs │ │ ├── storage_test.rs │ │ ├── stress_test.rs │ │ ├── util.rs │ │ └── web_edit.rs │ ├── collab_history/ │ │ ├── document_history.rs │ │ └── mod.rs │ ├── file_test/ │ │ ├── delete_dir_test.rs │ │ ├── mod.rs │ │ ├── multiple_part_test.rs │ │ ├── put_and_get.rs │ │ └── usage.rs │ ├── gotrue/ │ │ ├── admin.rs │ │ ├── health.rs │ │ ├── mod.rs │ │ └── settings.rs │ ├── main.rs │ ├── search/ │ │ ├── asset/ │ │ │ ├── appflowy_values.md │ │ │ ├── kathryn_tennis_story.md │ │ │ └── the_five_dysfunctions_of_a_team.md │ │ ├── document_search.rs │ │ └── mod.rs │ ├── server_info/ │ │ ├── info.rs │ │ └── mod.rs │ ├── sql_test/ │ │ ├── chat_test.rs │ │ ├── collab_embed_test.rs │ │ ├── history_test.rs │ │ ├── mod.rs │ │ ├── util.rs │ │ └── workspace_test.rs │ ├── user/ │ │ ├── delete.rs │ │ ├── image.rs │ │ ├── mod.rs │ │ ├── refresh.rs │ │ ├── sign_in.rs │ │ ├── sign_out.rs │ │ ├── sign_up.rs │ │ ├── update.rs │ │ └── user_awareness_test.rs │ ├── websocket/ │ │ ├── actor_test.rs │ │ ├── conn_test.rs │ │ └── mod.rs │ ├── workspace/ │ │ ├── access_request.rs │ │ ├── asset/ │ │ │ └── read_me.json │ │ ├── default_user_workspace.rs │ │ ├── edit_workspace.rs │ │ ├── import_test.rs │ │ ├── invitation_crud.rs │ │ ├── join_workspace.rs │ │ ├── member_crud.rs │ │ ├── mod.rs │ │ ├── page_view.rs │ │ ├── person.rs │ │ ├── publish.rs │ │ ├── published_data.rs │ │ ├── quick_note.rs │ │ ├── template.rs │ │ ├── workspace_crud.rs │ │ ├── workspace_folder.rs │ │ └── workspace_settings.rs │ └── yrs_version/ │ ├── README.md │ ├── document_test.rs │ ├── files/ │ │ ├── folder_encode_collab_0172 │ │ └── get_started_encode_collab_0172 │ ├── folder_test.rs │ ├── mod.rs │ └── util.rs └── xtask/ ├── Cargo.toml └── src/ └── main.rs