likwid/README.md

159 lines
5 KiB
Markdown
Raw Normal View History

.dev, repo, backend, +4: add 483 files Verified changes: - add .dev/dev-token.txt - add .dev/pids/backend.pid - add .dev/pids/frontend.pid - add .env.example - add .gitignore - add CONTRIBUTING.md - add DEPLOYMENT.md - add README.md - add WORKFLOW.md - add backend/.env.example - add backend/.sqlx/query-00649c07335338a85657781bfe97b299039883e1170687d60047ced9f3271b8f.json - add backend/.sqlx/query-00b25a5d76ada968ebb490cdfa9b30d82de7402bda296872eb4a366bd2942640.json - add backend/.sqlx/query-00c90349026ba6858b28e413cff2e1b71f87d06dea5759fb6159da22a995e341.json - add backend/.sqlx/query-00e2f11aa7f20e01f9a9de158b81fbcd5a33511135ce3e05aea3c8c8846239b3.json - add backend/.sqlx/query-03706c8c7d9db6d3112ccbd27fd026308c5a03a923f53331468cc899eff9a08d.json - add backend/.sqlx/query-03b9920a00f57083543abd69b18965bdb37d21ba503691cd054ed06f6807d7f7.json - add backend/.sqlx/query-0474f023ed456e56e6a744f8a94e4afc361456a4979e1d14378d1f475c1b2192.json - add backend/.sqlx/query-04c1f2a6a596b9cda5a0744b941777916a3aa3c03445ce59a5a3a69f869078de.json - add backend/.sqlx/query-0569967ce647a065b60b93a233bd222d7dc8aef1eeffec8796dae06968faf08d.json - add backend/.sqlx/query-05ab322014e6f15af99d2af3c118f0cf64b06f311b17ff3c7197d949bab2a580.json - add backend/.sqlx/query-05d8db279bba917c2456ca3427876caefc67b9b6a3d9031ab43f998462a75a58.json - add backend/.sqlx/query-06415d7e9b1b54bc96b8c35b6c92649ffe74f1d9047c783810c344c75f3b10af.json - add backend/.sqlx/query-06c276dfa8e0d19cf539d9abdd4699b387c4a8435c11ac1fe7c4a53d5c231ba6.json - add backend/.sqlx/query-075e3c636c51526e7ceab5540cccd87e52939da3a48e4a544fe67457e8de6962.json - add backend/.sqlx/query-098ff8cc94787edf79a98396716cb5296547c407516489b5b873dadfa360f91e.json - add backend/.sqlx/query-09e0a994d85ba6589db1c989f193ef10e081ccc560031a056e80cb19436f5e8e.json - add backend/.sqlx/query-0cec90f8ac9b48f22ca24330afb16c9308998ddd30404d2a1eb38bd8d0fa46be.json - add backend/.sqlx/query-0d3765f6d5135140d623f9dc706b6907686b98158d775978709db26486109d8b.json - add backend/.sqlx/query-0d79d19ab27c1962afc4ef802f386e160c4a555ca59bade20c901d7b8be99d0e.json - add backend/.sqlx/query-0e518900101ca3ba736e18a911a07759368f0481b3c0dcd4702c077cdadb7ef0.json - add backend/.sqlx/query-0ea2a972775b14b5a22edb7b7a81f414993d8153aebd7121acbcbd54257f32bf.json - add backend/.sqlx/query-0ef338c61969938be731e6187b77c4d7454c409079ecc073aa24a10d339b47f1.json - add backend/.sqlx/query-10649f88f5a0055a0aa23cad37d0b51bd24c35ab290c412bad1286c0baaefd56.json - add backend/.sqlx/query-10a632674ed7d086243d8a31abcb4935677106be2937daf876b01434fc07d293.json - add backend/.sqlx/query-117802a0a1de4ec2e5e3e7d2fd557421991b07876c7b42760bbe756b979d0e96.json - add backend/.sqlx/query-132ee5d7ab197b3a1d3bce2740f419e3cc2311e3cf0bbd0dfe821eebb4ca4fe0.json - add backend/.sqlx/query-1414a9b0037bc888daa0b1215e88a78b20c7e2c614760f36307a248be45203ff.json - add backend/.sqlx/query-14514b4a260abf4b93429a3d841bea19693db589ad668279d7361f499fe7e408.json - add backend/.sqlx/query-150c49c9bd09af829b05abd06d6217aec3ed104f6286e2fc6bd741512cd254ff.json - add backend/.sqlx/query-155f20f35f5b4df59e1a53d0aa30f2994b0a6f76fcd1ff443a6bbe13e3d41339.json - add backend/.sqlx/query-1648eb605182a87a4fadd7158f7012dfe8011a56d63ea069a53bfd697bcdd166.json - add backend/.sqlx/query-171bd1d2e58286b428275404fbaaaedab5d2ee9d3c0b76e3182b6fd48493cdc4.json - add backend/.sqlx/query-174c2a9d861710b570536d1350b4e70b13a9290b222eb89ce753a5702de63f0a.json - add backend/.sqlx/query-177d2a77cdaaa75e32bae953e520231ce713d5fb5f65f533660c773417be085a.json - add backend/.sqlx/query-18c0fb05da45a3eea514f660bc4ac4d6aca71442645666a9c08db8f2a564ff6c.json - add backend/.sqlx/query-18f2bb2a5454308a0ca13ad574947eaa83e52ab32ba48687f54cdce41b34a141.json - add backend/.sqlx/query-1ad83f237ca18e09dfac8f654b6befac12576bf30f35f3bf626b7ccf46a4fb94.json - add backend/.sqlx/query-1cf0926848f8f1fc1f62337b344f06d86408f94450fe0ed80a44268657e92c06.json - add backend/.sqlx/query-1dcd2fc713e43bb6e785befc420fe94db65d42df35bd8015c550c2f8666664e7.json - add backend/.sqlx/query-1dedda4e97c32d56c88d29a247f788e5aac67cc9bc59fdd52b40926af3e5a671.json - add backend/.sqlx/query-1efa9b54dff5200841ab35a40e525a8d0da40edca89aa78cd168ae3e854eabc2.json - add backend/.sqlx/query-1fd0e024053913d7598c5cdb19f407cfa7fef149553e18efc9e5149dd77e7f1c.json - add backend/.sqlx/query-20414e126202ce893b8e967c585ac6ee9c6cc869033bbe7bbf959d80dcedf82b.json - add backend/.sqlx/query-21412c1fff5f48e1ca0a5a67c49180efba50cdbc247a467474296f00a4f1f0f2.json - add backend/.sqlx/query-222ef714ee6f0d715f09643cff679f1c9d5132051dea4cf1f809f06470ed9b44.json - add backend/.sqlx/query-2376b5dff203895eb0b78454a323beb8a90d4ea20ca201226d4b228a2b846c4f.json - add backend/.sqlx/query-274cc3e62a3bc6659ae9e652d6ac15076f76a5fb7acad44f5e853678cfa2abf3.json - add backend/.sqlx/query-27723721585f30329494e2c80e4851b65cd980780e4b756019f73df0f9d28061.json - add backend/.sqlx/query-28654edaba50887bd4c7f698e538ed9ec70543b1ba6d0ecc5b675a1040148b6a.json - add backend/.sqlx/query-2a13dcd10626c05bfed533ba131e46f2ba7c132c9e5d58afe30ba11179096bce.json - add backend/.sqlx/query-2a288385b0b4f402803e22171965bedeeb6e40308d09f4a0d4f67258b11f7cd2.json - add backend/.sqlx/query-2a7e168921469392cdde35401ab602fdb281f995ad75050af27a4130c311a920.json - add backend/.sqlx/query-2b38c2a93dda00a2ccd0ffe3d2cd83b9cf41d444b6f09b211a57dd6689a9e27e.json - add backend/.sqlx/query-2c9bb8a5dca54ef476b2908dfad34371f6f34e4a8500f855d01209d32840f683.json - add backend/.sqlx/query-2ca4dcd48f294e84793ad46b960657a7d30cf790418baf4feab371fb45687627.json - add backend/.sqlx/query-2cb27026dc438da39c4132e9679d8312ed4909560135b5660c82e06ed61e6436.json - add backend/.sqlx/query-2d6f151a2ed11e1a6efecfe1c1cd0242e3e28942cfbae4db71b4d9d709f96522.json - add backend/.sqlx/query-2f7f1f0d1960020529d167240c56abc5bcc6fcd5615890279d2bafcde467fe61.json - add backend/.sqlx/query-2f80cf2d27e9af290578740b2752a6a0d8c41e62aab523e16cc8cf123e59166f.json - add backend/.sqlx/query-31639da003249b784d3603126cb36a1ea592bd819b8f43d9cbd192d7d405c44d.json - add backend/.sqlx/query-3167dfbfa487a695ad0953ed59b206fe16833cfe890fdae3fd74d6fe2d11ced5.json - add backend/.sqlx/query-3205e4cb752317923752ee9ace04a93ada7aa8cbfc97a87f9ddf6376dc102146.json - add backend/.sqlx/query-3271a11a6d1ad3cc05deda6d3e33bd350180c0b20da49b88c5bc04d5f06eb927.json - add backend/.sqlx/query-32e740982952a1d3756117f496bcff626f7bcb438a50fa8eef80e013a84e8048.json - add backend/.sqlx/query-3316c52a6ddc9891f4482e6f5df622147b1be87d0723bf709d6d7def94eb1a0c.json - add backend/.sqlx/query-33281e190171ace099ef3209d49ac42b6527824947520336d7d11594ab56b265.json - add backend/.sqlx/query-34ac1a3b360d0e99c80d59aad7497794803b0ca05cb498e7715344bc9d512084.json - add backend/.sqlx/query-35b2d2fb4f7db1ce97557c01de71c96e64862e3955e1e2d5996581eb4b871f3d.json - add backend/.sqlx/query-3647ec42782a77237f075f172b4d435ac8d6325e60696018386ef1509e499a6d.json - add backend/.sqlx/query-39926d0308364c2a13c987adbc8b364253e9d8d350d69a1e1d3efd1c2e424d81.json - add backend/.sqlx/query-3a395c6e9a23a87fbfa1b3d7a06fbe907b32e3cfb6af327cec1533b7762bd4cd.json - add backend/.sqlx/query-3a8154bdd76daa157200feea1cce96d67bdb7b7c824088ca625105e96495938f.json - add backend/.sqlx/query-3b034411e6338ddaeae97589f0d0ab13cd674f852ad61b643a2e593d252767f1.json - add backend/.sqlx/query-3c118e418b94a2d609cde609b53fbbb1a0055fe46397599f7c5eade17b0a5360.json - add backend/.sqlx/query-3c323153097726bf967b733fc7cb40173a1c64a4b7535a904445e5d02dbe2f0f.json - add backend/.sqlx/query-3c47d27c939cb21fbcc621825d1ef59d5284c3b6db07e2b11d772fefbcf1650b.json - add backend/.sqlx/query-3c769ff42e6b6e2df033fa05cf6d8ae1e9fba6320943f65c95613f56a8ea2a13.json - add backend/.sqlx/query-3d523a0728ea6e9df275520675e3caab1963c61d5d6c3ad468cc51568d4bb5f8.json - add backend/.sqlx/query-3d9153f242fa24637d71a4b4f0a76edee15892248acb6b281ffdbab11a4bff0f.json - add backend/.sqlx/query-3e0e0fe2c4e51b68025965560101643e7e035b782b1cd0d110803664c5831fe3.json - add backend/.sqlx/query-3e7754fe4fe21c7fc50435ad222ed68617f8e8c4f2a21b202ee95d6f76ae0d32.json - add backend/.sqlx/query-403544e4819bc7bcc4ac51c997fb9ec74c3b3fa2c6f2b170ab5b8c8c1d9c65d4.json - add backend/.sqlx/query-41273682b6b15534294e7f90907c7a516cb658e276a50b44f72a2b739ee9e04b.json - add backend/.sqlx/query-42e0fab065d541e407129d44f86f1d1d46387494b992c81f7a334e72c42c98ca.json - add backend/.sqlx/query-43a864f79078c6891186f1d20600983ee080a7033137c0d715880cf20fc7776a.json - add backend/.sqlx/query-4619c7159d4bec14be35a308b0a867e3d5b0687a46a456adf6e8dcd1582d3849.json - add backend/.sqlx/query-47ea00355af927b41b9c39e55791042049a4bea2d1fab669b4ef6fee3f7a3497.json - add backend/.sqlx/query-47ea0156899876339e02f4769e666c24d5d0fee1f18869d7adcb4aeb007076c8.json - add backend/.sqlx/query-484e7ea64028000ccadd135f9806fd190f860d8ac1cd1c56828fa5be279f57c9.json - add backend/.sqlx/query-4a92221917041b95e9a27e511ca70b404313e7dba1faf19bb1eb1347b2208587.json - add backend/.sqlx/query-4aa9e85bb2280a67f94914b3de749b262b16223d467464079ce36509b857f306.json - add backend/.sqlx/query-4cc6b7b3343bf2afda642707ede4a1e1df7904a137b6b3c34bfdda71088516b7.json - add backend/.sqlx/query-4ce35bd4ce5c2dde738b87eb3aa45c21926d67e156fda5cbdcaa5e1db2ebe785.json - add backend/.sqlx/query-4e324f0141e12a57df99f729cccf6133014b6669bda8d3b75ca07bb2a47567b2.json - add backend/.sqlx/query-4ed6eff19ec25d1e627ff27d656934c56ac363260ba540fc0d225b7ce7da48d3.json - add backend/.sqlx/query-4f6d0f4d874780e2729f6e6f2e50ba35dddf8cfaa1de0f4213e2ca70aad2d3cc.json - add backend/.sqlx/query-4fbe1a8019228d78f6b2361fd7f363b8f4ee2e63104c7a824e289d13b4814e51.json - add backend/.sqlx/query-502a8e2b5a59105bcc6d1d668d47b04d7978dde7265c76ae37915f8ae8842033.json - add backend/.sqlx/query-50c17bb1a4d6b249e39d8d13c2ac7d346bfc2476e7c983223e9b4366b2f08abd.json - add backend/.sqlx/query-522c64c31796d1d85b4ce6a6cbac86d0b440c2eb54d14fd700fd005848e4b146.json - add backend/.sqlx/query-5303a6a8c505e05aca3e158cf4aae36c2ad5a98374032d3eb604363f777def7e.json - add backend/.sqlx/query-536866ecf3349598d172c0011a0970a0f7926658d166a4940fca89cabaf3d514.json - add backend/.sqlx/query-53e54a4fe0344eb04f52ac7d737663b824bbfc3c65e3cebd23ff3dfa5a89fbe8.json - add backend/.sqlx/query-54262c9a793fdbf907f81f6974d4fa57bbd4140b6bd9fc84b27f4abcdc9cefc4.json - add backend/.sqlx/query-563efcefcb6880c075c16d278b11631166fc30678c161bdff1a68b8f491bf335.json - add backend/.sqlx/query-56a3e0906a82b4c7df2d066194300d7c5c704562990cf7d835541083884d192e.json - add backend/.sqlx/query-56be8018a90784cb6868af7bd4a7dff4e1e8ddf09e6d08b97c2e0cc3a6dec0e5.json - add backend/.sqlx/query-598da730fbfa2531c8882c1456f8e1a13c6a99c177109e6a88b44e66e923e8f0.json - add backend/.sqlx/query-599b54e38d5be790010a42f8db1cdd210506243f533fe02b90974c51d878ef52.json - add backend/.sqlx/query-5ae8c8c64a800b7735ab381b7ff73988ec35b8839beb5f108400e1e85295aaa8.json - add backend/.sqlx/query-5b3990eadd408f017c3f97f9eec54ebf9d4b17e8f52b7be7e8d4f7a4d4303045.json - add backend/.sqlx/query-5bf7ea39ce22f5466a08746b98091b897f35a72561e668a1643d63c9427a96ca.json - add backend/.sqlx/query-5c54f1d4567d6c7baf6969687c7f19f71dfdcacebdcbcb5284b0243cc12895e2.json - add backend/.sqlx/query-5d369c593b73b9c9835ef79206367824f5cc656cb8d93d3a4af3262c73cf88ad.json - add backend/.sqlx/query-5ea4e4b2dafd654c306e4507faaa1d7112461cedba992f8d2ddc923c42cd7b6b.json - add backend/.sqlx/query-5fd1b28bc068dc4592e1c6a58bd348f4d9feae00d29ea677ae643593dda852a4.json - add backend/.sqlx/query-5ff99236c732a045c53789220aa54f9f494aa49b1b55b207ba777e9cbc2e8ddd.json - add backend/.sqlx/query-6098a745505990aea4405d2ab48fd8e4839518f714261bc8fc1cc01fe298ffd1.json - add backend/.sqlx/query-6252da4b5dd1636fb1aa75dc10bd8ede8f9b12fdb80b0edaa999c321993233ae.json - add backend/.sqlx/query-633a36b68dd39b0e443b169ac7bcfeebbd2e8b76a09791f8f3bd5190bdc569e3.json - add backend/.sqlx/query-63426c52f6016b030b23a562fe2aa08793ecb5e3a3a24f82bc7666cd8cf5cd68.json - add backend/.sqlx/query-641be20c2834a02a49f6c658663d73fb5779eb14e36cf13a9ecbfa61440c5332.json - add backend/.sqlx/query-65a8781dff58442082a16c731be5acfdb3c61ad599b2031433be6c554821df05.json - add backend/.sqlx/query-660253bf0225d065ae50eab8625e1f9662779997acef345182ce23e96efde2c3.json - add backend/.sqlx/query-68f175d74997d4cfc1ce98756bb32d8f7d3466d5ea71f137ac101ebd07e0073e.json - add backend/.sqlx/query-6a6bec68b35012df41e6bb99b5afc11a90e3404fa29698fb04fa3ad18ad2025b.json - add backend/.sqlx/query-6b3fef1781daf9672ad11cbc1e2d84e536ff7ee9b3cef4d5f517a2ed27c586c4.json - add backend/.sqlx/query-6d1c9e2cb972dbc9df0a72034cf0390e72bb8baecd2b09d8ae305ab3844439a0.json - add backend/.sqlx/query-6dc1dc04d2084400be320aa33507746a38814325f3525dd0f38e05c6a64f1f7a.json - add backend/.sqlx/query-6e44a5f3076d976fdad560f5c4ccb1802df408602aecb3025b851969ff480708.json - add backend/.sqlx/query-6e60bcb9d941716127a4ed3cead4b9a375deb0e4238137d3b095c43bae316702.json - add backend/.sqlx/query-6e71eb3247a4b255a2187731a9d54c4fe2aac97e458c1247b8b89364ff590b9f.json - add backend/.sqlx/query-6f89b8deda1078080ad8cfc2db507325e19bb0ffd02f1aa4f933045633c4914a.json - add backend/.sqlx/query-6f92eb099a3182a7f862df97a6f9cf340bef74f512099000e03450f69b796ef1.json - add backend/.sqlx/query-706d61211ccde2d45e1fc60480b37719f90ce364bf3a118743bfe82eca3783ae.json - add backend/.sqlx/query-7148baad9c5cba418a5d7818761e3ac52fe166fbfa0bfc5f6bbe749fa0a6889e.json - add backend/.sqlx/query-72132fbc4c6da619b3055bd473b5928c8a1ff7886a613d9d6be3f2ab2a7a7f4d.json - add backend/.sqlx/query-733ab1cda0fdc0cecf46928410fefb3b4e96eb2390dfdb93b95ce4c13f0d9e59.json - add backend/.sqlx/query-733faae97d10baca47579a4a56ce281a6f36a60c73739f9ad692fc8b3825964c.json - add backend/.sqlx/query-73720cd6ae56d7e210c173ca90f6c982f68150b76dc2d4cd578965c62ddb11be.json - add backend/.sqlx/query-73e84e079e38064cbf573149243395913f6a14bbaceedeff7bf41fdcaf63f01c.json - add backend/.sqlx/query-740f728d9932a5da47b6b9454ed77304f5e93dc836dc21b3994eb4e7c8bc8219.json - add backend/.sqlx/query-74fdd241eb54952015786937b057d437b60267d664cd4b57a9c394486f6001b2.json - add backend/.sqlx/query-75a8631bc9e4f89b9e1b6d1899711e148228dfa0a6760fbba7ddf2711fb16e6e.json - add backend/.sqlx/query-7635e7f06daac3a495a2439bc893e345effd96be4a8760d4ca11538334d875c4.json - add backend/.sqlx/query-768935f0dff24d092ebaff3512026b9e6a0344c9d10ee0cf852d299c80bba6c8.json - add backend/.sqlx/query-778a5cc33f4b205914711921c98653f826d2adc8175c9297efb485caf4c3d96d.json - add backend/.sqlx/query-78418e5f9824bceb1937348a77d50ced7a3e2f21ec72940fe9a70e77cb3923a0.json - add backend/.sqlx/query-7a3f67d8cafc3611f94a8cb2406ab4c0e90a3619f7b9e4b6ad67fe11a46b91d9.json - add backend/.sqlx/query-7b06af69ee03943c64083e5bc94cb6dbd6f5017ad44546dff7582c31345edc51.json - add backend/.sqlx/query-7c8ec9e26f553fc211b5bd819e31722a054bb9414950d16a8ebd451dc18d4f3b.json - add backend/.sqlx/query-7cc78deb0836ac802b017122ac50fe71bbe8af86c7aa5c8b90b10d1672a9d31a.json - add backend/.sqlx/query-7cf8e3b8f83a16c49ce2f7e66673d69e773f71abded50c5bb29884f9dff628bd.json - add backend/.sqlx/query-7f0faa7ca48a6a56274f7d05c1fb4ad2d8dd384fdb7bc178220f07481236c8b2.json - add backend/.sqlx/query-7f497e0097bf329922d709282092b588975f7c2d8c508fbe49ab3d9d4c99c396.json - add backend/.sqlx/query-7fdca4a1f7c40789d44de54a739eca0bb898c9fbf3e89784e2f784630c56dba5.json - add backend/.sqlx/query-82aa3e3878c98cbdcc5bbefd11acd7b19521314a38ab9085516eb81e39354d2a.json - add backend/.sqlx/query-860d54897714862bf6312fc00b440d414b9083efd695f04c31f26510d0254208.json - add backend/.sqlx/query-865245efea368b2c0b937356889a07b9a04954165e700f4c7c35687c13f2be27.json - add backend/.sqlx/query-86645359fb0da9b7441326acb5ac4d8be2c0eda7f3ef0d97d0b4d661aa0d62eb.json - add backend/.sqlx/query-87426464ee1ed01c4e1940b86ed461af98bcfe50c40df7c869c1c03395a79e07.json - add backend/.sqlx/query-87f52f0262716fe497a6e8b42722cc11f88dacaa0bca746ebd5b474a734d9bb3.json - add backend/.sqlx/query-88ca29971ada21e0ff2b92315e39c7aefbd81215862c5c7149e2dbca93c5d1fe.json - add backend/.sqlx/query-8932b373514ebf8056f5934c5b02dd675f6fe1b1317688676d5c32e1f01065a7.json - add backend/.sqlx/query-89804ccea9075b137f7c7e47917f3477f770dfd7550ab97060b981849618a201.json - add backend/.sqlx/query-8b2ab82dd4fe83655e074b1edc9e80e2ca276a327e044ad5578fb15eba3ac3ee.json - add backend/.sqlx/query-8d3042b1d0415262c8729e52a4d8933bf52b484798b7e3530219b0117a60f5d1.json - add backend/.sqlx/query-8d94635535054f82b5185372543c7347a8fe98d8402d99130a29520eab53bc73.json - add backend/.sqlx/query-8db75a6ddf63baa3ee89defbedaefb53f61892395025de17dce21451f81ba8b1.json - add backend/.sqlx/query-8e856e6e4081d2ca26e5e6097848fab90e055cbbc318956a3869750a0855fe3f.json - add backend/.sqlx/query-917a021a7c54c19e1257d558ec4e40c0001c975d00af6255ab2707d3ebb045ac.json - add backend/.sqlx/query-91b64087ce497ce4426c00ccdd8cbfde639f18d24df8362c11a211a9acf2fc92.json - add backend/.sqlx/query-92461256ad7b62764b2bd75674ccbfc11df6648d6d856e3e68fc80801457c555.json - add backend/.sqlx/query-93883e88af152aca23a39dadd95669f025294cb532a892e58891a0e756e9c784.json - add backend/.sqlx/query-93c4fe897770127740a52c43b14f2007bfa6faf8743dc07611ac22e9140e89f6.json - add backend/.sqlx/query-942753e2a11713b9d4b46a52f4a6426629f95c7a91598f351741f9bc100e243b.json - add backend/.sqlx/query-94499cff482a1533a32723bc9924bf62af0a9ec7cfe338b1c97336e6a1ea5dee.json - add backend/.sqlx/query-94b98a4fccec6a48b27cdf8d3ea8740a81baac9e53a5c458acb7f9692893f069.json - add backend/.sqlx/query-957b131c5ae23e306fe4634db068c611122ae61057c805c82413fb69ed015c58.json - add backend/.sqlx/query-95f70efea97448688250d1647387c7d3dc1e4eec0dc2e6ba88f09e9746132d09.json - add backend/.sqlx/query-965e42468c325a893d39c2eeefbea254b37e04f0d067d88988cf4ece97b0e818.json - add backend/.sqlx/query-9888b553ae9f5cd32aa1eb6cfee1abecc08787a0f7fd7526956d30d62c1801ff.json - add backend/.sqlx/query-9b9965ea0437e0f8e3467ba2b237d6a84c74bbc03c389117d8f3f6e71273b587.json - add backend/.sqlx/query-9beff9c1f4daa7453bd6f13f3692b320f1f82ca87bed75f8a85e87882ac4bfc1.json - add backend/.sqlx/query-9c3b9cd35a4c58e67a15ad0372c18b6c5fc0a969b9aec88508cea8388c2fbe55.json - add backend/.sqlx/query-9c4016766b52e727103f5d09c7572fa90d793c5b391cfe99809d2d8825b9c9d6.json - add backend/.sqlx/query-9e78a21e3bae2928e4ce353423030c59deb97bdbf242e8d4b8e2af11d65596f1.json - add backend/.sqlx/query-9f011d836f16bc90ba585c43424fbb960ee5cadd5f50088e252655f5f79612fe.json - add backend/.sqlx/query-a1df48d19975013b68c2e57f90a4c0691d7f31a83ffc92628d918959daba3e36.json - add backend/.sqlx/query-a2d2cf6227a9e713d29610e2c0f0e94146f1798257a9dd68325487329eb6e24c.json - add backend/.sqlx/query-a57268c9e448ddc42290fce152a7d81d332eccd8c90b962b7ef0cdaba6d8a3b0.json - add backend/.sqlx/query-a65fb2ba103206d6ad4c761ec1fb62638fc50474679c751183013efc7cb0edbd.json - add backend/.sqlx/query-a8414c7b067366f56d56b3a465b248209e3800c25fcea8dadc2f63fdca72e82f.json - add backend/.sqlx/query-a9d4611cf695893da6a962355b974077340a56497e7bc9100f288cb1195267ad.json - add backend/.sqlx/query-aa35c7c6645c9a7637f083650a2d9c898e15c49cc49a7df001fa6861ab47995e.json - add backend/.sqlx/query-aa69a761eb48721491a2275dc2040ac0d58ce45701dba74214e2af3685db59f1.json - add backend/.sqlx/query-aadb91fe11c7e3106062a2055b0196ca12ed20e40513bc14f11f4a8bd5623a3f.json - add backend/.sqlx/query-ad438c18ca77e186c4e33a8079374181a47fbbec6a5f0ae5fe2144e342910d40.json - add backend/.sqlx/query-ad82dc4820ab69556cba650ae422084d57dec2f89ae99c977be1b36261c8d0b4.json - add backend/.sqlx/query-aeee6c4f9115efe386351097cb8c3512550eeecac893289d40b8e01c04f9f167.json - add backend/.sqlx/query-aefd6f17ea2becd41283f5b07fca49481cbe221437fed57283b0f52c03bf85c7.json - add backend/.sqlx/query-b038e92708c16243759184994795f864db1cabbdf8f0d93128d41850888e531c.json - add backend/.sqlx/query-b09e737c4925f4ebb8fc57919c50542f125f4fc7d2ba49c3cd368682aba9a8b6.json - add backend/.sqlx/query-b3c77106c16c2b75c51a36e6e56f9cff657fce6f0472d905af97ffe5aba8d3c7.json - add backend/.sqlx/query-b42cab53e091470ad8237271def4b42146a75d30b77aecb4c1ae7ab7a7cc32d3.json - add backend/.sqlx/query-b54b3e3f031e9a09d1252bcc9e27ad26959157f77064a4e4d30ed73c3a01e293.json - add backend/.sqlx/query-b5bada0e6df57aa0243e0234b72c3b39cf6f1ee0ef69a4e232ae06f70b1b1c0c.json - add backend/.sqlx/query-b5d49d78ba8674954210df5728d43dca77d453a7aae14fb8b0e57e0f7a44e03a.json - add backend/.sqlx/query-b6bdb63000935a47301993972237254f9b11915a860d6e84ad639f579bb6ac62.json - add backend/.sqlx/query-b6d2983946f27ac29c85e72685d389d29c8ce1b3c9e3202a272f12f2e6dfbf06.json - add backend/.sqlx/query-b7fbd0f031db0653546e51da4237160abe2909f3dcf622f9ab1b91537c9169fa.json - add backend/.sqlx/query-b8ef84a72cfa6cea3a1b1d8cb5916d7e3290de0a05143432151308f32312f94a.json - add backend/.sqlx/query-b8f80a210fcb0474a124ad93e43a163431366c50dce137863b283121ce70604b.json - add backend/.sqlx/query-b94c2ca7181b28660e9a9b256e6ebe98b6cf0c450969b6b953434b8d2775ee4b.json - add backend/.sqlx/query-b9586185e84644f0bd936d7bf5e9bec6ebeaba77ab354d0b7096d9334656497f.json - add backend/.sqlx/query-b9e59dc4e2e37b0c59ebbe794b03e64647af6b6025b3c74c73324b5735e32802.json - add backend/.sqlx/query-bb0cf75500c2358d78ae8028e5d587b9e7492ce6082340ec84f7706d668beb45.json - add backend/.sqlx/query-bbcdcddcd2f31a7e308016f325e9914a10c18cbc05d4b724bb87533cd3851fea.json - add backend/.sqlx/query-bd76cc54f3ccd774a62f6d2b5ab27e5432bc2202b3e8f030a24a1733c96867af.json - add backend/.sqlx/query-bfdd9a0dcf20053b8d10c946955530253502e9c624b6586b358660df9d1ec8cc.json - add backend/.sqlx/query-c2a2d3c0016e6d4df3fd04f9e24c5c4fde0acbe42a195eaf74cf5299dacb846c.json - add backend/.sqlx/query-c2ca1cf0be6dc893f3f6938953436c69408bd8ca37d45398a1faf450684aec08.json - add backend/.sqlx/query-c31ebddef69f304403bfb2d816d42bd9731482ceec258e0de1bb61d5ba20d413.json - add backend/.sqlx/query-c33217c0ec06f08e9b89ac876cb22bf002aadb6cd6391af968d6a08725792228.json - add backend/.sqlx/query-c35608b0d7569f739dda24b3da59b7b500ff26f5e79433b3f7e3625d91177d26.json - add backend/.sqlx/query-c42152b0a4b91fd58afbdb06da1a9b7b73f414bdd6607343df01dc0fa3d4b5fd.json - add backend/.sqlx/query-c4d21db839f7e0b45fc1fc1291840e78d1e92440e003c5ad3cb45c3d9f5042fc.json - add backend/.sqlx/query-c5f66036fe85ebb4597f564dcf40b7547b409195b65ea3130454f96265c9bd82.json - add backend/.sqlx/query-c64fd6da083e54e1719580125eb72a544081ed4c91c02295c6f1d799fb3b4f5a.json - add backend/.sqlx/query-c7525a8aa940491736dd45cd876dab2e4cd0d05f0104e2d2b08980bcee557212.json - add backend/.sqlx/query-cbb4acc6eb730ec886b1af23e6389a0e68d7a672d8643101f6680e42df944711.json - add backend/.sqlx/query-cc77b8a12eb03938d34d391c8b1397dd2fe99748315a95299563c3a2f5c989bf.json - add backend/.sqlx/query-cc97b910b8afcfd348d5fe69f7e75862ddd7e31680e46a61170a467b64cdf547.json - add backend/.sqlx/query-cca54c0742b36cc4b7c3c2bf0bb3d987d16771d42334f11c4e9d7598651d21e6.json - add backend/.sqlx/query-ccf5a42b62f74eeb3d424fc4573ec6b01b1ed46b56518c0ccc5121e524d2f3c5.json - add backend/.sqlx/query-cd002400a4b0c6b071bb949d0c716ab2691caa661ccc407af85da42599e1101b.json - add backend/.sqlx/query-cdb2b8bb16c0e2e04fa6df8e22e060adfc81c38cf67121ada9f6c721a9398588.json - add backend/.sqlx/query-cde649035ebc12f0bbce749e9a5347b8073659b42c9e65a4ac74400b17dc38f7.json - add backend/.sqlx/query-ce7f978d16864a568b49c47eaa68edcaafb0d293f6d08f5a945bd456c91fd417.json - add backend/.sqlx/query-cf9a5a22ac9e4ab44a56d2aa4e110a63ba212d392a353850a344f69a0a13811f.json - add backend/.sqlx/query-d00ba1f23877ca15a8ac8b09d55fc86a37d40c9a0ea63afdbfa2f725fa39d255.json - add backend/.sqlx/query-d09299b064ef5fefd5f5ac8a7f1ae1a549cfffd9081fa72b4427fa4ea21cbcb5.json - add backend/.sqlx/query-d0c599e01228531f2ab7f571658c71563fd1ad88cfa5e13f1adfaad3f00eaa75.json - add backend/.sqlx/query-d2de711bc12629a1141d11db45496d22c0ff03555c983205b512a318290948a0.json - add backend/.sqlx/query-d32e84b6ce21f4b4553aead45ef53dce4362399a75c39f7203cbd770e997abdf.json - add backend/.sqlx/query-d48c21b6a8d67db4b37ee43d6273e3d41d1cf2a2b89fe434edd009a29e69b94c.json - add backend/.sqlx/query-d705da303937bc5e1a2e929b9cf3f93e4e24b55e1dd14c4a83bca29f0d3a0341.json - add backend/.sqlx/query-d83b8a3f417cd420d44aa3f7f8c462b28c2f7f2a4804ba00bb51a63759a7f8b2.json - add backend/.sqlx/query-d928c488809305d28f877c359c93614550307868213d312ea8ae24bcbb927db5.json - add backend/.sqlx/query-da70570e2492dcc5b21ff51069db1a366ff94803b0cfa5821c497b6ba06ed2fc.json - add backend/.sqlx/query-db38e6387cbf510bf0c13ecee0f42afc7c100aebd0b043fd23424cfe61110e3a.json - add backend/.sqlx/query-dbf52d447a84d9f1a7f36f3c57c05b1c547bd8515706b2be877762edd1aff254.json - add backend/.sqlx/query-dc64e1d25d9ced3a49130cee99f6edc3f70a4917910cf3b76faefc24ac32159d.json - add backend/.sqlx/query-dccbd661ee975b7e9b74d175c452fbd3ba2c847c24c6f401fd18736aeaed3ad3.json - add backend/.sqlx/query-dd458a825f2295d6650263f39ed6f22d1da12443b80bd53a4b6c61e870b4cf07.json - add backend/.sqlx/query-dd4e31b27b005a68baeacf0ada1645ebe2277a8c437d6846db1776b53611aa2e.json - add backend/.sqlx/query-dd99e48b1572e25db38f03da95984fda1072913b29bb6b3753a0d351583dfff6.json - add backend/.sqlx/query-de3230de507ca1e11d2ca40bef8a5b8470628ddbaa454af4f49f6fe6953f9014.json - add backend/.sqlx/query-de6d39c5473742a38ff437b95613ae32a366f4339c8165f58d192151024b6caf.json - add backend/.sqlx/query-dee9b81f66d0a8a8ec6543e2bda43b68604377280236f83eec9bb710c4a8b957.json - add backend/.sqlx/query-df3c9235defd412e75b967ec4c1d052404a6289ec89ebc3cf7524f0a65279258.json - add backend/.sqlx/query-df917df33b1f18f0545d866fdcdbff3c189c549e3e92966b808166ebd65a758e.json - add backend/.sqlx/query-e078bd7e0e60f80321173ea5383e3c89f5b07036b7f6c3be6a66e25dd64d8790.json - add backend/.sqlx/query-e15d8685afde9f89919d3643dd1df3d4718d826147e63be4c8d4e8708a15e481.json - add backend/.sqlx/query-e1a40a1cc7c618d815ebfaec6751ab19146ab76519020ce783bc916e64155a14.json - add backend/.sqlx/query-e25c2c4e795fd113fbf9631b4fc107d217f2dd0a8eacd812067defe8d3529d54.json - add backend/.sqlx/query-e2a9b8f8fb63c4e8737c0f2925ffeff025be37184ede64b328e0ecd68680dc08.json - add backend/.sqlx/query-e3e45d1876b1a38771e1bb32eda68462ba27bd0beca41a602ebf60b86b863680.json - add backend/.sqlx/query-e53f34921983218ba03123ea07403917a62cb0fc66039be84387df090606eefc.json - add backend/.sqlx/query-e5ada1e1857eec30e7c2a55c19b0ddbf2c90fc7f0019f211549f2abfc4fdf487.json - add backend/.sqlx/query-e70b6cc45322a8ba1c3e9fef0c8c3185bbeacbcbf16810c303c029ea108802bf.json - add backend/.sqlx/query-e983f01536d1ed4b6b40d640877d9fa445aa04972cfe427116cbdf104e6cb32f.json - add backend/.sqlx/query-ea775b89fed8c652e57e21cd202dbb9c4d13dedc7d0890dd1d13dfa7635f02b5.json - add backend/.sqlx/query-ea7e6d82c94b562d5e75720c8c1af6ad707ef717406330be0c4255363f9c783d.json - add backend/.sqlx/query-eab47df4e85e9dfeb87b480dc092b09924d6239ba71b8715be5c56137ebca953.json - add backend/.sqlx/query-ec156d9abd97de863483a1d8fe3e4ff63a63b39f883d320175c88b0bcaad3f70.json - add backend/.sqlx/query-ec34b2dc8930568c2e135aa13d08783d7b62dd524eef99f00b8bebd55f0196bd.json - add backend/.sqlx/query-ed05dcba73fd4426c2de9c8828d943e45eafa31dbb155c4a50b2471308dd3097.json - add backend/.sqlx/query-ef47b9016770614a3d12c6bba1c99b60046a3bff47ca5e18759786362446e1be.json - add backend/.sqlx/query-f10d14593a49a3f14536b6ec7a0283b16f57a731f18f1ea00a25b76aeda238cb.json - add backend/.sqlx/query-f1de9db0b037bd44be7aa37b308ce60a0c10888951f385b61fe237e09b924976.json - add backend/.sqlx/query-f45f95ec5c791d1bd87635f304f62caf19b12dc178c570828a8bb8a5579ea17a.json - add backend/.sqlx/query-f5476f8976f2c0ab202fe52ea148d95570f6e3901f6ef0637e58701eb42d0120.json - add backend/.sqlx/query-f5d1ab63c42cd0e45cfab56f5f4efd821816137eacf138aa5191dbe47c5bd444.json - add backend/.sqlx/query-f63fca5359b5dc0141d7de8e8f4c3ec1e7b446d48ab6d175c8b876823bd042a9.json - add backend/.sqlx/query-f7bb4e7ba6e7a6abb1549bc112176ca7afdb25923aa3aae3775a65cbd17afeaa.json - add backend/.sqlx/query-f91db2c61f14281c7dfd6f6aefdffc97e080dd9acc5d9c5edd8a865623b44628.json - add backend/.sqlx/query-f9ff82cdb66393d4fdef38cf4e64b93b9f8b062f06cd3f7bde3b0873ecbfc835.json - add backend/.sqlx/query-facfb30591b5abfa384d897e0de7c5d0f0e9f80cf8c6e57a1c5298ad1a990351.json - add backend/.sqlx/query-faf3d877c077b20211fe2cbf92c54322660147ab31fe5036e3e722725c2e3e44.json - add backend/.sqlx/query-fb2e03f8ccf37e8463ee7f14e74fc20fdb46337da0f561b4fa0eb815fb0486b4.json - add backend/.sqlx/query-fcdb75aee759125fdb4169e6c9dd2b47b4f264c512bd62db700083cf479d6d3f.json - add backend/.sqlx/query-fdfe11a59054df6111a7833043bf8cfb772c5897d1aa9c25ccad0579945e74f2.json - add backend/.sqlx/query-fe3dbfffdaca1dcf828be7cc949f7f74b05f694dc8ef3ee37a3dac8f695ec62d.json - add backend/.sqlx/query-fe5ef9f6c10dfb61e236bc955d377dd8b0893e052ee073b55fbb1b8f745a9cd5.json - add backend/Cargo.toml - add backend/Dockerfile - add backend/migrations/20260125180102_initial_schema.sql - add backend/migrations/20260125181224_voting_system.sql - add backend/migrations/20260125183611_comments.sql - add backend/migrations/20260125204900_notifications.sql - add backend/migrations/20260125205600_advanced_voting.sql - add backend/migrations/20260125211000_public_events.sql - add backend/migrations/20260126012000_plugin_packages.sql - add backend/migrations/20260126120000_instance_settings.sql - add backend/migrations/20260126121000_admin_columns.sql - add backend/migrations/20260126130000_deliberation_system.sql - add backend/migrations/20260126140000_advanced_voting.sql - add backend/migrations/20260126150000_liquid_delegation.sql - add backend/migrations/20260126160000_plugin_registry.sql - add backend/migrations/20260126170000_gitlab_integration.sql - add backend/migrations/20260126180000_roles_permissions.sql - add backend/migrations/20260126190000_voting_plugins.sql - add backend/migrations/20260126200000_invitations.sql - add backend/migrations/20260126210000_plugin_kv_store.sql - add backend/migrations/20260126220000_approval_workflows.sql - add backend/migrations/20260126230000_vote_reproducibility.sql - add backend/migrations/20260126240000_topic_voting_methods.sql - add backend/migrations/20260126250000_moderation_ledger.sql - add backend/migrations/20260126260000_decision_workflows.sql - add backend/migrations/20260126270000_self_moderation_rules.sql - add backend/migrations/20260126280000_proposal_lifecycle.sql - add backend/migrations/20260126290000_governance_analytics.sql - add backend/migrations/20260126300000_conflict_resolution.sql - add backend/migrations/20260126310000_structured_deliberation.sql - add backend/migrations/20260126320000_public_data_export.sql - add backend/migrations/20260126330000_federation.sql - add backend/migrations/20260127105000_wasm_plugin_runtime.sql - add backend/migrations/20260127150000_demo_seed_data.sql - add backend/src/api/analytics.rs - add backend/src/api/approvals.rs - add backend/src/api/auth.rs - add backend/src/api/comments.rs - add backend/src/api/communities.rs - add backend/src/api/conflicts.rs - add backend/src/api/delegation.rs - add backend/src/api/deliberation.rs - add backend/src/api/demo.rs - add backend/src/api/exports.rs - add backend/src/api/federation.rs - add backend/src/api/gitlab.rs - add backend/src/api/health.rs - add backend/src/api/invitations.rs - add backend/src/api/lifecycle.rs - add backend/src/api/mod.rs - add backend/src/api/moderation.rs - add backend/src/api/moderation_ledger.rs - add backend/src/api/notifications.rs - add backend/src/api/permissions.rs - add backend/src/api/plugins.rs - add backend/src/api/proposals.rs - add backend/src/api/roles.rs - add backend/src/api/self_moderation.rs - add backend/src/api/settings.rs - add backend/src/api/users.rs - add backend/src/api/voting_config.rs - add backend/src/api/workflows.rs - add backend/src/auth/jwt.rs - add backend/src/auth/middleware.rs - add backend/src/auth/mod.rs - add backend/src/auth/password.rs - add backend/src/config/mod.rs - add backend/src/db/mod.rs - add backend/src/demo/mod.rs - add backend/src/main.rs - add backend/src/models/community.rs - add backend/src/models/mod.rs - add backend/src/models/proposal.rs - add backend/src/models/user.rs - add backend/src/plugins/builtin/comment_notifications.rs - add backend/src/plugins/builtin/conflict_resolution.rs - add backend/src/plugins/builtin/decision_workflows.rs - add backend/src/plugins/builtin/federation.rs - add backend/src/plugins/builtin/governance_analytics.rs - add backend/src/plugins/builtin/mod.rs - add backend/src/plugins/builtin/moderation_ledger.rs - add backend/src/plugins/builtin/proposal_lifecycle.rs - add backend/src/plugins/builtin/public_data_export.rs - add backend/src/plugins/builtin/self_moderation.rs - add backend/src/plugins/builtin/structured_deliberation.rs - add backend/src/plugins/hooks.rs - add backend/src/plugins/manager.rs - add backend/src/plugins/mod.rs - add backend/src/plugins/wasm/host_api.rs - add backend/src/plugins/wasm/mod.rs - add backend/src/plugins/wasm/plugin.rs - add backend/src/plugins/wasm/runtime.rs - add backend/src/voting/mod.rs - add backend/src/voting/quadratic.rs - add backend/src/voting/ranked_choice.rs - add backend/src/voting/schulze.rs - add backend/src/voting/star.rs - add compose/.env.demo.example - add compose/.env.production.example - add compose/demo.yml - add compose/dev.yml - add compose/production.yml - add docs/README.md - add docs/admin/backup.md - add docs/admin/configuration.md - add docs/admin/database.md - add docs/admin/installation.md - add docs/admin/plugins.md - add docs/admin/security.md - add docs/reference/api.md - add docs/reference/glossary.md - add docs/reference/voting-methods.md - add docs/user/communities.md - add docs/user/delegation.md - add docs/user/getting-started.md - add docs/user/settings.md - add docs/user/voting.md - add frontend/.gitignore - add frontend/Dockerfile - add frontend/astro.config.mjs - add frontend/package-lock.json - add frontend/package.json - add frontend/public/favicon.ico - add frontend/public/favicon.svg - add frontend/src/components/AdminNav.astro - add frontend/src/components/ThemeSwitcher.astro - add frontend/src/components/icons/VotingIcons.astro - add frontend/src/components/moderation/LedgerViewer.astro - add frontend/src/components/voting/DelegationGraph.astro - add frontend/src/components/voting/VotingMethodCard.astro - add frontend/src/components/voting/VotingResultsChart.astro - add frontend/src/layouts/Layout.astro - add frontend/src/layouts/PublicLayout.astro - add frontend/src/lib/api.ts - add frontend/src/lib/themes.ts - add frontend/src/pages/about.astro - add frontend/src/pages/admin/approvals.astro - add frontend/src/pages/admin/invitations.astro - add frontend/src/pages/admin/plugins.astro - add frontend/src/pages/admin/roles.astro - add frontend/src/pages/admin/settings.astro - add frontend/src/pages/admin/voting.astro - add frontend/src/pages/communities.astro - add frontend/src/pages/communities/[slug]/index.astro - add frontend/src/pages/communities/[slug]/plugins.astro - add frontend/src/pages/communities/[slug]/proposals/index.astro - add frontend/src/pages/communities/[slug]/proposals/new.astro - add frontend/src/pages/communities/[slug]/settings.astro - add frontend/src/pages/communities/[slug]/voting-config.astro - add frontend/src/pages/communities/new.astro - add frontend/src/pages/dashboard.astro - add frontend/src/pages/delegations.astro - add frontend/src/pages/demo.astro - add frontend/src/pages/docs.astro - add frontend/src/pages/features.astro - add frontend/src/pages/index.astro - add frontend/src/pages/login.astro - add frontend/src/pages/manifesto.astro - add frontend/src/pages/notifications.astro - add frontend/src/pages/proposals.astro - add frontend/src/pages/proposals/[id].astro - add frontend/src/pages/register.astro - add frontend/src/pages/settings.astro - add frontend/src/pages/setup.astro - add frontend/src/pages/users/[username].astro - add frontend/tsconfig.json - add scripts/.dev/state.json - add scripts/demo-reset.ps1 - add scripts/demo-reset.sh - add scripts/dev-start.ps1 - add scripts/dev-start.sh - add scripts/dev-stop.ps1 - add scripts/dev-stop.sh - add scripts/dev-test.ps1 - add scripts/dev.ps1 - add scripts/dev.sh - add scripts/post-reboot-setup.ps1 - add scripts/prepare-production.ps1 Diffstat: - 483 files changed, 61980 insertions(+)
2026-01-27 16:21:58 +00:00
# Likwid - Modular Governance Platform
**Democracy Design in Practice**
Likwid is an open-source platform for participatory governance, designed to make collective decision-making accessible, transparent, and genuinely democratic. Built for communities, civic organizations, and any group that values structured deliberation over shouting matches.
> *"We are citizens of the 21st century, but we rely on institutions designed in the 19th century, through means designed in the 13th century. The problem is not democracy, it's the interface."*
.dev, repo, backend, +4: add 483 files Verified changes: - add .dev/dev-token.txt - add .dev/pids/backend.pid - add .dev/pids/frontend.pid - add .env.example - add .gitignore - add CONTRIBUTING.md - add DEPLOYMENT.md - add README.md - add WORKFLOW.md - add backend/.env.example - add backend/.sqlx/query-00649c07335338a85657781bfe97b299039883e1170687d60047ced9f3271b8f.json - add backend/.sqlx/query-00b25a5d76ada968ebb490cdfa9b30d82de7402bda296872eb4a366bd2942640.json - add backend/.sqlx/query-00c90349026ba6858b28e413cff2e1b71f87d06dea5759fb6159da22a995e341.json - add backend/.sqlx/query-00e2f11aa7f20e01f9a9de158b81fbcd5a33511135ce3e05aea3c8c8846239b3.json - add backend/.sqlx/query-03706c8c7d9db6d3112ccbd27fd026308c5a03a923f53331468cc899eff9a08d.json - add backend/.sqlx/query-03b9920a00f57083543abd69b18965bdb37d21ba503691cd054ed06f6807d7f7.json - add backend/.sqlx/query-0474f023ed456e56e6a744f8a94e4afc361456a4979e1d14378d1f475c1b2192.json - add backend/.sqlx/query-04c1f2a6a596b9cda5a0744b941777916a3aa3c03445ce59a5a3a69f869078de.json - add backend/.sqlx/query-0569967ce647a065b60b93a233bd222d7dc8aef1eeffec8796dae06968faf08d.json - add backend/.sqlx/query-05ab322014e6f15af99d2af3c118f0cf64b06f311b17ff3c7197d949bab2a580.json - add backend/.sqlx/query-05d8db279bba917c2456ca3427876caefc67b9b6a3d9031ab43f998462a75a58.json - add backend/.sqlx/query-06415d7e9b1b54bc96b8c35b6c92649ffe74f1d9047c783810c344c75f3b10af.json - add backend/.sqlx/query-06c276dfa8e0d19cf539d9abdd4699b387c4a8435c11ac1fe7c4a53d5c231ba6.json - add backend/.sqlx/query-075e3c636c51526e7ceab5540cccd87e52939da3a48e4a544fe67457e8de6962.json - add backend/.sqlx/query-098ff8cc94787edf79a98396716cb5296547c407516489b5b873dadfa360f91e.json - add backend/.sqlx/query-09e0a994d85ba6589db1c989f193ef10e081ccc560031a056e80cb19436f5e8e.json - add backend/.sqlx/query-0cec90f8ac9b48f22ca24330afb16c9308998ddd30404d2a1eb38bd8d0fa46be.json - add backend/.sqlx/query-0d3765f6d5135140d623f9dc706b6907686b98158d775978709db26486109d8b.json - add backend/.sqlx/query-0d79d19ab27c1962afc4ef802f386e160c4a555ca59bade20c901d7b8be99d0e.json - add backend/.sqlx/query-0e518900101ca3ba736e18a911a07759368f0481b3c0dcd4702c077cdadb7ef0.json - add backend/.sqlx/query-0ea2a972775b14b5a22edb7b7a81f414993d8153aebd7121acbcbd54257f32bf.json - add backend/.sqlx/query-0ef338c61969938be731e6187b77c4d7454c409079ecc073aa24a10d339b47f1.json - add backend/.sqlx/query-10649f88f5a0055a0aa23cad37d0b51bd24c35ab290c412bad1286c0baaefd56.json - add backend/.sqlx/query-10a632674ed7d086243d8a31abcb4935677106be2937daf876b01434fc07d293.json - add backend/.sqlx/query-117802a0a1de4ec2e5e3e7d2fd557421991b07876c7b42760bbe756b979d0e96.json - add backend/.sqlx/query-132ee5d7ab197b3a1d3bce2740f419e3cc2311e3cf0bbd0dfe821eebb4ca4fe0.json - add backend/.sqlx/query-1414a9b0037bc888daa0b1215e88a78b20c7e2c614760f36307a248be45203ff.json - add backend/.sqlx/query-14514b4a260abf4b93429a3d841bea19693db589ad668279d7361f499fe7e408.json - add backend/.sqlx/query-150c49c9bd09af829b05abd06d6217aec3ed104f6286e2fc6bd741512cd254ff.json - add backend/.sqlx/query-155f20f35f5b4df59e1a53d0aa30f2994b0a6f76fcd1ff443a6bbe13e3d41339.json - add backend/.sqlx/query-1648eb605182a87a4fadd7158f7012dfe8011a56d63ea069a53bfd697bcdd166.json - add backend/.sqlx/query-171bd1d2e58286b428275404fbaaaedab5d2ee9d3c0b76e3182b6fd48493cdc4.json - add backend/.sqlx/query-174c2a9d861710b570536d1350b4e70b13a9290b222eb89ce753a5702de63f0a.json - add backend/.sqlx/query-177d2a77cdaaa75e32bae953e520231ce713d5fb5f65f533660c773417be085a.json - add backend/.sqlx/query-18c0fb05da45a3eea514f660bc4ac4d6aca71442645666a9c08db8f2a564ff6c.json - add backend/.sqlx/query-18f2bb2a5454308a0ca13ad574947eaa83e52ab32ba48687f54cdce41b34a141.json - add backend/.sqlx/query-1ad83f237ca18e09dfac8f654b6befac12576bf30f35f3bf626b7ccf46a4fb94.json - add backend/.sqlx/query-1cf0926848f8f1fc1f62337b344f06d86408f94450fe0ed80a44268657e92c06.json - add backend/.sqlx/query-1dcd2fc713e43bb6e785befc420fe94db65d42df35bd8015c550c2f8666664e7.json - add backend/.sqlx/query-1dedda4e97c32d56c88d29a247f788e5aac67cc9bc59fdd52b40926af3e5a671.json - add backend/.sqlx/query-1efa9b54dff5200841ab35a40e525a8d0da40edca89aa78cd168ae3e854eabc2.json - add backend/.sqlx/query-1fd0e024053913d7598c5cdb19f407cfa7fef149553e18efc9e5149dd77e7f1c.json - add backend/.sqlx/query-20414e126202ce893b8e967c585ac6ee9c6cc869033bbe7bbf959d80dcedf82b.json - add backend/.sqlx/query-21412c1fff5f48e1ca0a5a67c49180efba50cdbc247a467474296f00a4f1f0f2.json - add backend/.sqlx/query-222ef714ee6f0d715f09643cff679f1c9d5132051dea4cf1f809f06470ed9b44.json - add backend/.sqlx/query-2376b5dff203895eb0b78454a323beb8a90d4ea20ca201226d4b228a2b846c4f.json - add backend/.sqlx/query-274cc3e62a3bc6659ae9e652d6ac15076f76a5fb7acad44f5e853678cfa2abf3.json - add backend/.sqlx/query-27723721585f30329494e2c80e4851b65cd980780e4b756019f73df0f9d28061.json - add backend/.sqlx/query-28654edaba50887bd4c7f698e538ed9ec70543b1ba6d0ecc5b675a1040148b6a.json - add backend/.sqlx/query-2a13dcd10626c05bfed533ba131e46f2ba7c132c9e5d58afe30ba11179096bce.json - add backend/.sqlx/query-2a288385b0b4f402803e22171965bedeeb6e40308d09f4a0d4f67258b11f7cd2.json - add backend/.sqlx/query-2a7e168921469392cdde35401ab602fdb281f995ad75050af27a4130c311a920.json - add backend/.sqlx/query-2b38c2a93dda00a2ccd0ffe3d2cd83b9cf41d444b6f09b211a57dd6689a9e27e.json - add backend/.sqlx/query-2c9bb8a5dca54ef476b2908dfad34371f6f34e4a8500f855d01209d32840f683.json - add backend/.sqlx/query-2ca4dcd48f294e84793ad46b960657a7d30cf790418baf4feab371fb45687627.json - add backend/.sqlx/query-2cb27026dc438da39c4132e9679d8312ed4909560135b5660c82e06ed61e6436.json - add backend/.sqlx/query-2d6f151a2ed11e1a6efecfe1c1cd0242e3e28942cfbae4db71b4d9d709f96522.json - add backend/.sqlx/query-2f7f1f0d1960020529d167240c56abc5bcc6fcd5615890279d2bafcde467fe61.json - add backend/.sqlx/query-2f80cf2d27e9af290578740b2752a6a0d8c41e62aab523e16cc8cf123e59166f.json - add backend/.sqlx/query-31639da003249b784d3603126cb36a1ea592bd819b8f43d9cbd192d7d405c44d.json - add backend/.sqlx/query-3167dfbfa487a695ad0953ed59b206fe16833cfe890fdae3fd74d6fe2d11ced5.json - add backend/.sqlx/query-3205e4cb752317923752ee9ace04a93ada7aa8cbfc97a87f9ddf6376dc102146.json - add backend/.sqlx/query-3271a11a6d1ad3cc05deda6d3e33bd350180c0b20da49b88c5bc04d5f06eb927.json - add backend/.sqlx/query-32e740982952a1d3756117f496bcff626f7bcb438a50fa8eef80e013a84e8048.json - add backend/.sqlx/query-3316c52a6ddc9891f4482e6f5df622147b1be87d0723bf709d6d7def94eb1a0c.json - add backend/.sqlx/query-33281e190171ace099ef3209d49ac42b6527824947520336d7d11594ab56b265.json - add backend/.sqlx/query-34ac1a3b360d0e99c80d59aad7497794803b0ca05cb498e7715344bc9d512084.json - add backend/.sqlx/query-35b2d2fb4f7db1ce97557c01de71c96e64862e3955e1e2d5996581eb4b871f3d.json - add backend/.sqlx/query-3647ec42782a77237f075f172b4d435ac8d6325e60696018386ef1509e499a6d.json - add backend/.sqlx/query-39926d0308364c2a13c987adbc8b364253e9d8d350d69a1e1d3efd1c2e424d81.json - add backend/.sqlx/query-3a395c6e9a23a87fbfa1b3d7a06fbe907b32e3cfb6af327cec1533b7762bd4cd.json - add backend/.sqlx/query-3a8154bdd76daa157200feea1cce96d67bdb7b7c824088ca625105e96495938f.json - add backend/.sqlx/query-3b034411e6338ddaeae97589f0d0ab13cd674f852ad61b643a2e593d252767f1.json - add backend/.sqlx/query-3c118e418b94a2d609cde609b53fbbb1a0055fe46397599f7c5eade17b0a5360.json - add backend/.sqlx/query-3c323153097726bf967b733fc7cb40173a1c64a4b7535a904445e5d02dbe2f0f.json - add backend/.sqlx/query-3c47d27c939cb21fbcc621825d1ef59d5284c3b6db07e2b11d772fefbcf1650b.json - add backend/.sqlx/query-3c769ff42e6b6e2df033fa05cf6d8ae1e9fba6320943f65c95613f56a8ea2a13.json - add backend/.sqlx/query-3d523a0728ea6e9df275520675e3caab1963c61d5d6c3ad468cc51568d4bb5f8.json - add backend/.sqlx/query-3d9153f242fa24637d71a4b4f0a76edee15892248acb6b281ffdbab11a4bff0f.json - add backend/.sqlx/query-3e0e0fe2c4e51b68025965560101643e7e035b782b1cd0d110803664c5831fe3.json - add backend/.sqlx/query-3e7754fe4fe21c7fc50435ad222ed68617f8e8c4f2a21b202ee95d6f76ae0d32.json - add backend/.sqlx/query-403544e4819bc7bcc4ac51c997fb9ec74c3b3fa2c6f2b170ab5b8c8c1d9c65d4.json - add backend/.sqlx/query-41273682b6b15534294e7f90907c7a516cb658e276a50b44f72a2b739ee9e04b.json - add backend/.sqlx/query-42e0fab065d541e407129d44f86f1d1d46387494b992c81f7a334e72c42c98ca.json - add backend/.sqlx/query-43a864f79078c6891186f1d20600983ee080a7033137c0d715880cf20fc7776a.json - add backend/.sqlx/query-4619c7159d4bec14be35a308b0a867e3d5b0687a46a456adf6e8dcd1582d3849.json - add backend/.sqlx/query-47ea00355af927b41b9c39e55791042049a4bea2d1fab669b4ef6fee3f7a3497.json - add backend/.sqlx/query-47ea0156899876339e02f4769e666c24d5d0fee1f18869d7adcb4aeb007076c8.json - add backend/.sqlx/query-484e7ea64028000ccadd135f9806fd190f860d8ac1cd1c56828fa5be279f57c9.json - add backend/.sqlx/query-4a92221917041b95e9a27e511ca70b404313e7dba1faf19bb1eb1347b2208587.json - add backend/.sqlx/query-4aa9e85bb2280a67f94914b3de749b262b16223d467464079ce36509b857f306.json - add backend/.sqlx/query-4cc6b7b3343bf2afda642707ede4a1e1df7904a137b6b3c34bfdda71088516b7.json - add backend/.sqlx/query-4ce35bd4ce5c2dde738b87eb3aa45c21926d67e156fda5cbdcaa5e1db2ebe785.json - add backend/.sqlx/query-4e324f0141e12a57df99f729cccf6133014b6669bda8d3b75ca07bb2a47567b2.json - add backend/.sqlx/query-4ed6eff19ec25d1e627ff27d656934c56ac363260ba540fc0d225b7ce7da48d3.json - add backend/.sqlx/query-4f6d0f4d874780e2729f6e6f2e50ba35dddf8cfaa1de0f4213e2ca70aad2d3cc.json - add backend/.sqlx/query-4fbe1a8019228d78f6b2361fd7f363b8f4ee2e63104c7a824e289d13b4814e51.json - add backend/.sqlx/query-502a8e2b5a59105bcc6d1d668d47b04d7978dde7265c76ae37915f8ae8842033.json - add backend/.sqlx/query-50c17bb1a4d6b249e39d8d13c2ac7d346bfc2476e7c983223e9b4366b2f08abd.json - add backend/.sqlx/query-522c64c31796d1d85b4ce6a6cbac86d0b440c2eb54d14fd700fd005848e4b146.json - add backend/.sqlx/query-5303a6a8c505e05aca3e158cf4aae36c2ad5a98374032d3eb604363f777def7e.json - add backend/.sqlx/query-536866ecf3349598d172c0011a0970a0f7926658d166a4940fca89cabaf3d514.json - add backend/.sqlx/query-53e54a4fe0344eb04f52ac7d737663b824bbfc3c65e3cebd23ff3dfa5a89fbe8.json - add backend/.sqlx/query-54262c9a793fdbf907f81f6974d4fa57bbd4140b6bd9fc84b27f4abcdc9cefc4.json - add backend/.sqlx/query-563efcefcb6880c075c16d278b11631166fc30678c161bdff1a68b8f491bf335.json - add backend/.sqlx/query-56a3e0906a82b4c7df2d066194300d7c5c704562990cf7d835541083884d192e.json - add backend/.sqlx/query-56be8018a90784cb6868af7bd4a7dff4e1e8ddf09e6d08b97c2e0cc3a6dec0e5.json - add backend/.sqlx/query-598da730fbfa2531c8882c1456f8e1a13c6a99c177109e6a88b44e66e923e8f0.json - add backend/.sqlx/query-599b54e38d5be790010a42f8db1cdd210506243f533fe02b90974c51d878ef52.json - add backend/.sqlx/query-5ae8c8c64a800b7735ab381b7ff73988ec35b8839beb5f108400e1e85295aaa8.json - add backend/.sqlx/query-5b3990eadd408f017c3f97f9eec54ebf9d4b17e8f52b7be7e8d4f7a4d4303045.json - add backend/.sqlx/query-5bf7ea39ce22f5466a08746b98091b897f35a72561e668a1643d63c9427a96ca.json - add backend/.sqlx/query-5c54f1d4567d6c7baf6969687c7f19f71dfdcacebdcbcb5284b0243cc12895e2.json - add backend/.sqlx/query-5d369c593b73b9c9835ef79206367824f5cc656cb8d93d3a4af3262c73cf88ad.json - add backend/.sqlx/query-5ea4e4b2dafd654c306e4507faaa1d7112461cedba992f8d2ddc923c42cd7b6b.json - add backend/.sqlx/query-5fd1b28bc068dc4592e1c6a58bd348f4d9feae00d29ea677ae643593dda852a4.json - add backend/.sqlx/query-5ff99236c732a045c53789220aa54f9f494aa49b1b55b207ba777e9cbc2e8ddd.json - add backend/.sqlx/query-6098a745505990aea4405d2ab48fd8e4839518f714261bc8fc1cc01fe298ffd1.json - add backend/.sqlx/query-6252da4b5dd1636fb1aa75dc10bd8ede8f9b12fdb80b0edaa999c321993233ae.json - add backend/.sqlx/query-633a36b68dd39b0e443b169ac7bcfeebbd2e8b76a09791f8f3bd5190bdc569e3.json - add backend/.sqlx/query-63426c52f6016b030b23a562fe2aa08793ecb5e3a3a24f82bc7666cd8cf5cd68.json - add backend/.sqlx/query-641be20c2834a02a49f6c658663d73fb5779eb14e36cf13a9ecbfa61440c5332.json - add backend/.sqlx/query-65a8781dff58442082a16c731be5acfdb3c61ad599b2031433be6c554821df05.json - add backend/.sqlx/query-660253bf0225d065ae50eab8625e1f9662779997acef345182ce23e96efde2c3.json - add backend/.sqlx/query-68f175d74997d4cfc1ce98756bb32d8f7d3466d5ea71f137ac101ebd07e0073e.json - add backend/.sqlx/query-6a6bec68b35012df41e6bb99b5afc11a90e3404fa29698fb04fa3ad18ad2025b.json - add backend/.sqlx/query-6b3fef1781daf9672ad11cbc1e2d84e536ff7ee9b3cef4d5f517a2ed27c586c4.json - add backend/.sqlx/query-6d1c9e2cb972dbc9df0a72034cf0390e72bb8baecd2b09d8ae305ab3844439a0.json - add backend/.sqlx/query-6dc1dc04d2084400be320aa33507746a38814325f3525dd0f38e05c6a64f1f7a.json - add backend/.sqlx/query-6e44a5f3076d976fdad560f5c4ccb1802df408602aecb3025b851969ff480708.json - add backend/.sqlx/query-6e60bcb9d941716127a4ed3cead4b9a375deb0e4238137d3b095c43bae316702.json - add backend/.sqlx/query-6e71eb3247a4b255a2187731a9d54c4fe2aac97e458c1247b8b89364ff590b9f.json - add backend/.sqlx/query-6f89b8deda1078080ad8cfc2db507325e19bb0ffd02f1aa4f933045633c4914a.json - add backend/.sqlx/query-6f92eb099a3182a7f862df97a6f9cf340bef74f512099000e03450f69b796ef1.json - add backend/.sqlx/query-706d61211ccde2d45e1fc60480b37719f90ce364bf3a118743bfe82eca3783ae.json - add backend/.sqlx/query-7148baad9c5cba418a5d7818761e3ac52fe166fbfa0bfc5f6bbe749fa0a6889e.json - add backend/.sqlx/query-72132fbc4c6da619b3055bd473b5928c8a1ff7886a613d9d6be3f2ab2a7a7f4d.json - add backend/.sqlx/query-733ab1cda0fdc0cecf46928410fefb3b4e96eb2390dfdb93b95ce4c13f0d9e59.json - add backend/.sqlx/query-733faae97d10baca47579a4a56ce281a6f36a60c73739f9ad692fc8b3825964c.json - add backend/.sqlx/query-73720cd6ae56d7e210c173ca90f6c982f68150b76dc2d4cd578965c62ddb11be.json - add backend/.sqlx/query-73e84e079e38064cbf573149243395913f6a14bbaceedeff7bf41fdcaf63f01c.json - add backend/.sqlx/query-740f728d9932a5da47b6b9454ed77304f5e93dc836dc21b3994eb4e7c8bc8219.json - add backend/.sqlx/query-74fdd241eb54952015786937b057d437b60267d664cd4b57a9c394486f6001b2.json - add backend/.sqlx/query-75a8631bc9e4f89b9e1b6d1899711e148228dfa0a6760fbba7ddf2711fb16e6e.json - add backend/.sqlx/query-7635e7f06daac3a495a2439bc893e345effd96be4a8760d4ca11538334d875c4.json - add backend/.sqlx/query-768935f0dff24d092ebaff3512026b9e6a0344c9d10ee0cf852d299c80bba6c8.json - add backend/.sqlx/query-778a5cc33f4b205914711921c98653f826d2adc8175c9297efb485caf4c3d96d.json - add backend/.sqlx/query-78418e5f9824bceb1937348a77d50ced7a3e2f21ec72940fe9a70e77cb3923a0.json - add backend/.sqlx/query-7a3f67d8cafc3611f94a8cb2406ab4c0e90a3619f7b9e4b6ad67fe11a46b91d9.json - add backend/.sqlx/query-7b06af69ee03943c64083e5bc94cb6dbd6f5017ad44546dff7582c31345edc51.json - add backend/.sqlx/query-7c8ec9e26f553fc211b5bd819e31722a054bb9414950d16a8ebd451dc18d4f3b.json - add backend/.sqlx/query-7cc78deb0836ac802b017122ac50fe71bbe8af86c7aa5c8b90b10d1672a9d31a.json - add backend/.sqlx/query-7cf8e3b8f83a16c49ce2f7e66673d69e773f71abded50c5bb29884f9dff628bd.json - add backend/.sqlx/query-7f0faa7ca48a6a56274f7d05c1fb4ad2d8dd384fdb7bc178220f07481236c8b2.json - add backend/.sqlx/query-7f497e0097bf329922d709282092b588975f7c2d8c508fbe49ab3d9d4c99c396.json - add backend/.sqlx/query-7fdca4a1f7c40789d44de54a739eca0bb898c9fbf3e89784e2f784630c56dba5.json - add backend/.sqlx/query-82aa3e3878c98cbdcc5bbefd11acd7b19521314a38ab9085516eb81e39354d2a.json - add backend/.sqlx/query-860d54897714862bf6312fc00b440d414b9083efd695f04c31f26510d0254208.json - add backend/.sqlx/query-865245efea368b2c0b937356889a07b9a04954165e700f4c7c35687c13f2be27.json - add backend/.sqlx/query-86645359fb0da9b7441326acb5ac4d8be2c0eda7f3ef0d97d0b4d661aa0d62eb.json - add backend/.sqlx/query-87426464ee1ed01c4e1940b86ed461af98bcfe50c40df7c869c1c03395a79e07.json - add backend/.sqlx/query-87f52f0262716fe497a6e8b42722cc11f88dacaa0bca746ebd5b474a734d9bb3.json - add backend/.sqlx/query-88ca29971ada21e0ff2b92315e39c7aefbd81215862c5c7149e2dbca93c5d1fe.json - add backend/.sqlx/query-8932b373514ebf8056f5934c5b02dd675f6fe1b1317688676d5c32e1f01065a7.json - add backend/.sqlx/query-89804ccea9075b137f7c7e47917f3477f770dfd7550ab97060b981849618a201.json - add backend/.sqlx/query-8b2ab82dd4fe83655e074b1edc9e80e2ca276a327e044ad5578fb15eba3ac3ee.json - add backend/.sqlx/query-8d3042b1d0415262c8729e52a4d8933bf52b484798b7e3530219b0117a60f5d1.json - add backend/.sqlx/query-8d94635535054f82b5185372543c7347a8fe98d8402d99130a29520eab53bc73.json - add backend/.sqlx/query-8db75a6ddf63baa3ee89defbedaefb53f61892395025de17dce21451f81ba8b1.json - add backend/.sqlx/query-8e856e6e4081d2ca26e5e6097848fab90e055cbbc318956a3869750a0855fe3f.json - add backend/.sqlx/query-917a021a7c54c19e1257d558ec4e40c0001c975d00af6255ab2707d3ebb045ac.json - add backend/.sqlx/query-91b64087ce497ce4426c00ccdd8cbfde639f18d24df8362c11a211a9acf2fc92.json - add backend/.sqlx/query-92461256ad7b62764b2bd75674ccbfc11df6648d6d856e3e68fc80801457c555.json - add backend/.sqlx/query-93883e88af152aca23a39dadd95669f025294cb532a892e58891a0e756e9c784.json - add backend/.sqlx/query-93c4fe897770127740a52c43b14f2007bfa6faf8743dc07611ac22e9140e89f6.json - add backend/.sqlx/query-942753e2a11713b9d4b46a52f4a6426629f95c7a91598f351741f9bc100e243b.json - add backend/.sqlx/query-94499cff482a1533a32723bc9924bf62af0a9ec7cfe338b1c97336e6a1ea5dee.json - add backend/.sqlx/query-94b98a4fccec6a48b27cdf8d3ea8740a81baac9e53a5c458acb7f9692893f069.json - add backend/.sqlx/query-957b131c5ae23e306fe4634db068c611122ae61057c805c82413fb69ed015c58.json - add backend/.sqlx/query-95f70efea97448688250d1647387c7d3dc1e4eec0dc2e6ba88f09e9746132d09.json - add backend/.sqlx/query-965e42468c325a893d39c2eeefbea254b37e04f0d067d88988cf4ece97b0e818.json - add backend/.sqlx/query-9888b553ae9f5cd32aa1eb6cfee1abecc08787a0f7fd7526956d30d62c1801ff.json - add backend/.sqlx/query-9b9965ea0437e0f8e3467ba2b237d6a84c74bbc03c389117d8f3f6e71273b587.json - add backend/.sqlx/query-9beff9c1f4daa7453bd6f13f3692b320f1f82ca87bed75f8a85e87882ac4bfc1.json - add backend/.sqlx/query-9c3b9cd35a4c58e67a15ad0372c18b6c5fc0a969b9aec88508cea8388c2fbe55.json - add backend/.sqlx/query-9c4016766b52e727103f5d09c7572fa90d793c5b391cfe99809d2d8825b9c9d6.json - add backend/.sqlx/query-9e78a21e3bae2928e4ce353423030c59deb97bdbf242e8d4b8e2af11d65596f1.json - add backend/.sqlx/query-9f011d836f16bc90ba585c43424fbb960ee5cadd5f50088e252655f5f79612fe.json - add backend/.sqlx/query-a1df48d19975013b68c2e57f90a4c0691d7f31a83ffc92628d918959daba3e36.json - add backend/.sqlx/query-a2d2cf6227a9e713d29610e2c0f0e94146f1798257a9dd68325487329eb6e24c.json - add backend/.sqlx/query-a57268c9e448ddc42290fce152a7d81d332eccd8c90b962b7ef0cdaba6d8a3b0.json - add backend/.sqlx/query-a65fb2ba103206d6ad4c761ec1fb62638fc50474679c751183013efc7cb0edbd.json - add backend/.sqlx/query-a8414c7b067366f56d56b3a465b248209e3800c25fcea8dadc2f63fdca72e82f.json - add backend/.sqlx/query-a9d4611cf695893da6a962355b974077340a56497e7bc9100f288cb1195267ad.json - add backend/.sqlx/query-aa35c7c6645c9a7637f083650a2d9c898e15c49cc49a7df001fa6861ab47995e.json - add backend/.sqlx/query-aa69a761eb48721491a2275dc2040ac0d58ce45701dba74214e2af3685db59f1.json - add backend/.sqlx/query-aadb91fe11c7e3106062a2055b0196ca12ed20e40513bc14f11f4a8bd5623a3f.json - add backend/.sqlx/query-ad438c18ca77e186c4e33a8079374181a47fbbec6a5f0ae5fe2144e342910d40.json - add backend/.sqlx/query-ad82dc4820ab69556cba650ae422084d57dec2f89ae99c977be1b36261c8d0b4.json - add backend/.sqlx/query-aeee6c4f9115efe386351097cb8c3512550eeecac893289d40b8e01c04f9f167.json - add backend/.sqlx/query-aefd6f17ea2becd41283f5b07fca49481cbe221437fed57283b0f52c03bf85c7.json - add backend/.sqlx/query-b038e92708c16243759184994795f864db1cabbdf8f0d93128d41850888e531c.json - add backend/.sqlx/query-b09e737c4925f4ebb8fc57919c50542f125f4fc7d2ba49c3cd368682aba9a8b6.json - add backend/.sqlx/query-b3c77106c16c2b75c51a36e6e56f9cff657fce6f0472d905af97ffe5aba8d3c7.json - add backend/.sqlx/query-b42cab53e091470ad8237271def4b42146a75d30b77aecb4c1ae7ab7a7cc32d3.json - add backend/.sqlx/query-b54b3e3f031e9a09d1252bcc9e27ad26959157f77064a4e4d30ed73c3a01e293.json - add backend/.sqlx/query-b5bada0e6df57aa0243e0234b72c3b39cf6f1ee0ef69a4e232ae06f70b1b1c0c.json - add backend/.sqlx/query-b5d49d78ba8674954210df5728d43dca77d453a7aae14fb8b0e57e0f7a44e03a.json - add backend/.sqlx/query-b6bdb63000935a47301993972237254f9b11915a860d6e84ad639f579bb6ac62.json - add backend/.sqlx/query-b6d2983946f27ac29c85e72685d389d29c8ce1b3c9e3202a272f12f2e6dfbf06.json - add backend/.sqlx/query-b7fbd0f031db0653546e51da4237160abe2909f3dcf622f9ab1b91537c9169fa.json - add backend/.sqlx/query-b8ef84a72cfa6cea3a1b1d8cb5916d7e3290de0a05143432151308f32312f94a.json - add backend/.sqlx/query-b8f80a210fcb0474a124ad93e43a163431366c50dce137863b283121ce70604b.json - add backend/.sqlx/query-b94c2ca7181b28660e9a9b256e6ebe98b6cf0c450969b6b953434b8d2775ee4b.json - add backend/.sqlx/query-b9586185e84644f0bd936d7bf5e9bec6ebeaba77ab354d0b7096d9334656497f.json - add backend/.sqlx/query-b9e59dc4e2e37b0c59ebbe794b03e64647af6b6025b3c74c73324b5735e32802.json - add backend/.sqlx/query-bb0cf75500c2358d78ae8028e5d587b9e7492ce6082340ec84f7706d668beb45.json - add backend/.sqlx/query-bbcdcddcd2f31a7e308016f325e9914a10c18cbc05d4b724bb87533cd3851fea.json - add backend/.sqlx/query-bd76cc54f3ccd774a62f6d2b5ab27e5432bc2202b3e8f030a24a1733c96867af.json - add backend/.sqlx/query-bfdd9a0dcf20053b8d10c946955530253502e9c624b6586b358660df9d1ec8cc.json - add backend/.sqlx/query-c2a2d3c0016e6d4df3fd04f9e24c5c4fde0acbe42a195eaf74cf5299dacb846c.json - add backend/.sqlx/query-c2ca1cf0be6dc893f3f6938953436c69408bd8ca37d45398a1faf450684aec08.json - add backend/.sqlx/query-c31ebddef69f304403bfb2d816d42bd9731482ceec258e0de1bb61d5ba20d413.json - add backend/.sqlx/query-c33217c0ec06f08e9b89ac876cb22bf002aadb6cd6391af968d6a08725792228.json - add backend/.sqlx/query-c35608b0d7569f739dda24b3da59b7b500ff26f5e79433b3f7e3625d91177d26.json - add backend/.sqlx/query-c42152b0a4b91fd58afbdb06da1a9b7b73f414bdd6607343df01dc0fa3d4b5fd.json - add backend/.sqlx/query-c4d21db839f7e0b45fc1fc1291840e78d1e92440e003c5ad3cb45c3d9f5042fc.json - add backend/.sqlx/query-c5f66036fe85ebb4597f564dcf40b7547b409195b65ea3130454f96265c9bd82.json - add backend/.sqlx/query-c64fd6da083e54e1719580125eb72a544081ed4c91c02295c6f1d799fb3b4f5a.json - add backend/.sqlx/query-c7525a8aa940491736dd45cd876dab2e4cd0d05f0104e2d2b08980bcee557212.json - add backend/.sqlx/query-cbb4acc6eb730ec886b1af23e6389a0e68d7a672d8643101f6680e42df944711.json - add backend/.sqlx/query-cc77b8a12eb03938d34d391c8b1397dd2fe99748315a95299563c3a2f5c989bf.json - add backend/.sqlx/query-cc97b910b8afcfd348d5fe69f7e75862ddd7e31680e46a61170a467b64cdf547.json - add backend/.sqlx/query-cca54c0742b36cc4b7c3c2bf0bb3d987d16771d42334f11c4e9d7598651d21e6.json - add backend/.sqlx/query-ccf5a42b62f74eeb3d424fc4573ec6b01b1ed46b56518c0ccc5121e524d2f3c5.json - add backend/.sqlx/query-cd002400a4b0c6b071bb949d0c716ab2691caa661ccc407af85da42599e1101b.json - add backend/.sqlx/query-cdb2b8bb16c0e2e04fa6df8e22e060adfc81c38cf67121ada9f6c721a9398588.json - add backend/.sqlx/query-cde649035ebc12f0bbce749e9a5347b8073659b42c9e65a4ac74400b17dc38f7.json - add backend/.sqlx/query-ce7f978d16864a568b49c47eaa68edcaafb0d293f6d08f5a945bd456c91fd417.json - add backend/.sqlx/query-cf9a5a22ac9e4ab44a56d2aa4e110a63ba212d392a353850a344f69a0a13811f.json - add backend/.sqlx/query-d00ba1f23877ca15a8ac8b09d55fc86a37d40c9a0ea63afdbfa2f725fa39d255.json - add backend/.sqlx/query-d09299b064ef5fefd5f5ac8a7f1ae1a549cfffd9081fa72b4427fa4ea21cbcb5.json - add backend/.sqlx/query-d0c599e01228531f2ab7f571658c71563fd1ad88cfa5e13f1adfaad3f00eaa75.json - add backend/.sqlx/query-d2de711bc12629a1141d11db45496d22c0ff03555c983205b512a318290948a0.json - add backend/.sqlx/query-d32e84b6ce21f4b4553aead45ef53dce4362399a75c39f7203cbd770e997abdf.json - add backend/.sqlx/query-d48c21b6a8d67db4b37ee43d6273e3d41d1cf2a2b89fe434edd009a29e69b94c.json - add backend/.sqlx/query-d705da303937bc5e1a2e929b9cf3f93e4e24b55e1dd14c4a83bca29f0d3a0341.json - add backend/.sqlx/query-d83b8a3f417cd420d44aa3f7f8c462b28c2f7f2a4804ba00bb51a63759a7f8b2.json - add backend/.sqlx/query-d928c488809305d28f877c359c93614550307868213d312ea8ae24bcbb927db5.json - add backend/.sqlx/query-da70570e2492dcc5b21ff51069db1a366ff94803b0cfa5821c497b6ba06ed2fc.json - add backend/.sqlx/query-db38e6387cbf510bf0c13ecee0f42afc7c100aebd0b043fd23424cfe61110e3a.json - add backend/.sqlx/query-dbf52d447a84d9f1a7f36f3c57c05b1c547bd8515706b2be877762edd1aff254.json - add backend/.sqlx/query-dc64e1d25d9ced3a49130cee99f6edc3f70a4917910cf3b76faefc24ac32159d.json - add backend/.sqlx/query-dccbd661ee975b7e9b74d175c452fbd3ba2c847c24c6f401fd18736aeaed3ad3.json - add backend/.sqlx/query-dd458a825f2295d6650263f39ed6f22d1da12443b80bd53a4b6c61e870b4cf07.json - add backend/.sqlx/query-dd4e31b27b005a68baeacf0ada1645ebe2277a8c437d6846db1776b53611aa2e.json - add backend/.sqlx/query-dd99e48b1572e25db38f03da95984fda1072913b29bb6b3753a0d351583dfff6.json - add backend/.sqlx/query-de3230de507ca1e11d2ca40bef8a5b8470628ddbaa454af4f49f6fe6953f9014.json - add backend/.sqlx/query-de6d39c5473742a38ff437b95613ae32a366f4339c8165f58d192151024b6caf.json - add backend/.sqlx/query-dee9b81f66d0a8a8ec6543e2bda43b68604377280236f83eec9bb710c4a8b957.json - add backend/.sqlx/query-df3c9235defd412e75b967ec4c1d052404a6289ec89ebc3cf7524f0a65279258.json - add backend/.sqlx/query-df917df33b1f18f0545d866fdcdbff3c189c549e3e92966b808166ebd65a758e.json - add backend/.sqlx/query-e078bd7e0e60f80321173ea5383e3c89f5b07036b7f6c3be6a66e25dd64d8790.json - add backend/.sqlx/query-e15d8685afde9f89919d3643dd1df3d4718d826147e63be4c8d4e8708a15e481.json - add backend/.sqlx/query-e1a40a1cc7c618d815ebfaec6751ab19146ab76519020ce783bc916e64155a14.json - add backend/.sqlx/query-e25c2c4e795fd113fbf9631b4fc107d217f2dd0a8eacd812067defe8d3529d54.json - add backend/.sqlx/query-e2a9b8f8fb63c4e8737c0f2925ffeff025be37184ede64b328e0ecd68680dc08.json - add backend/.sqlx/query-e3e45d1876b1a38771e1bb32eda68462ba27bd0beca41a602ebf60b86b863680.json - add backend/.sqlx/query-e53f34921983218ba03123ea07403917a62cb0fc66039be84387df090606eefc.json - add backend/.sqlx/query-e5ada1e1857eec30e7c2a55c19b0ddbf2c90fc7f0019f211549f2abfc4fdf487.json - add backend/.sqlx/query-e70b6cc45322a8ba1c3e9fef0c8c3185bbeacbcbf16810c303c029ea108802bf.json - add backend/.sqlx/query-e983f01536d1ed4b6b40d640877d9fa445aa04972cfe427116cbdf104e6cb32f.json - add backend/.sqlx/query-ea775b89fed8c652e57e21cd202dbb9c4d13dedc7d0890dd1d13dfa7635f02b5.json - add backend/.sqlx/query-ea7e6d82c94b562d5e75720c8c1af6ad707ef717406330be0c4255363f9c783d.json - add backend/.sqlx/query-eab47df4e85e9dfeb87b480dc092b09924d6239ba71b8715be5c56137ebca953.json - add backend/.sqlx/query-ec156d9abd97de863483a1d8fe3e4ff63a63b39f883d320175c88b0bcaad3f70.json - add backend/.sqlx/query-ec34b2dc8930568c2e135aa13d08783d7b62dd524eef99f00b8bebd55f0196bd.json - add backend/.sqlx/query-ed05dcba73fd4426c2de9c8828d943e45eafa31dbb155c4a50b2471308dd3097.json - add backend/.sqlx/query-ef47b9016770614a3d12c6bba1c99b60046a3bff47ca5e18759786362446e1be.json - add backend/.sqlx/query-f10d14593a49a3f14536b6ec7a0283b16f57a731f18f1ea00a25b76aeda238cb.json - add backend/.sqlx/query-f1de9db0b037bd44be7aa37b308ce60a0c10888951f385b61fe237e09b924976.json - add backend/.sqlx/query-f45f95ec5c791d1bd87635f304f62caf19b12dc178c570828a8bb8a5579ea17a.json - add backend/.sqlx/query-f5476f8976f2c0ab202fe52ea148d95570f6e3901f6ef0637e58701eb42d0120.json - add backend/.sqlx/query-f5d1ab63c42cd0e45cfab56f5f4efd821816137eacf138aa5191dbe47c5bd444.json - add backend/.sqlx/query-f63fca5359b5dc0141d7de8e8f4c3ec1e7b446d48ab6d175c8b876823bd042a9.json - add backend/.sqlx/query-f7bb4e7ba6e7a6abb1549bc112176ca7afdb25923aa3aae3775a65cbd17afeaa.json - add backend/.sqlx/query-f91db2c61f14281c7dfd6f6aefdffc97e080dd9acc5d9c5edd8a865623b44628.json - add backend/.sqlx/query-f9ff82cdb66393d4fdef38cf4e64b93b9f8b062f06cd3f7bde3b0873ecbfc835.json - add backend/.sqlx/query-facfb30591b5abfa384d897e0de7c5d0f0e9f80cf8c6e57a1c5298ad1a990351.json - add backend/.sqlx/query-faf3d877c077b20211fe2cbf92c54322660147ab31fe5036e3e722725c2e3e44.json - add backend/.sqlx/query-fb2e03f8ccf37e8463ee7f14e74fc20fdb46337da0f561b4fa0eb815fb0486b4.json - add backend/.sqlx/query-fcdb75aee759125fdb4169e6c9dd2b47b4f264c512bd62db700083cf479d6d3f.json - add backend/.sqlx/query-fdfe11a59054df6111a7833043bf8cfb772c5897d1aa9c25ccad0579945e74f2.json - add backend/.sqlx/query-fe3dbfffdaca1dcf828be7cc949f7f74b05f694dc8ef3ee37a3dac8f695ec62d.json - add backend/.sqlx/query-fe5ef9f6c10dfb61e236bc955d377dd8b0893e052ee073b55fbb1b8f745a9cd5.json - add backend/Cargo.toml - add backend/Dockerfile - add backend/migrations/20260125180102_initial_schema.sql - add backend/migrations/20260125181224_voting_system.sql - add backend/migrations/20260125183611_comments.sql - add backend/migrations/20260125204900_notifications.sql - add backend/migrations/20260125205600_advanced_voting.sql - add backend/migrations/20260125211000_public_events.sql - add backend/migrations/20260126012000_plugin_packages.sql - add backend/migrations/20260126120000_instance_settings.sql - add backend/migrations/20260126121000_admin_columns.sql - add backend/migrations/20260126130000_deliberation_system.sql - add backend/migrations/20260126140000_advanced_voting.sql - add backend/migrations/20260126150000_liquid_delegation.sql - add backend/migrations/20260126160000_plugin_registry.sql - add backend/migrations/20260126170000_gitlab_integration.sql - add backend/migrations/20260126180000_roles_permissions.sql - add backend/migrations/20260126190000_voting_plugins.sql - add backend/migrations/20260126200000_invitations.sql - add backend/migrations/20260126210000_plugin_kv_store.sql - add backend/migrations/20260126220000_approval_workflows.sql - add backend/migrations/20260126230000_vote_reproducibility.sql - add backend/migrations/20260126240000_topic_voting_methods.sql - add backend/migrations/20260126250000_moderation_ledger.sql - add backend/migrations/20260126260000_decision_workflows.sql - add backend/migrations/20260126270000_self_moderation_rules.sql - add backend/migrations/20260126280000_proposal_lifecycle.sql - add backend/migrations/20260126290000_governance_analytics.sql - add backend/migrations/20260126300000_conflict_resolution.sql - add backend/migrations/20260126310000_structured_deliberation.sql - add backend/migrations/20260126320000_public_data_export.sql - add backend/migrations/20260126330000_federation.sql - add backend/migrations/20260127105000_wasm_plugin_runtime.sql - add backend/migrations/20260127150000_demo_seed_data.sql - add backend/src/api/analytics.rs - add backend/src/api/approvals.rs - add backend/src/api/auth.rs - add backend/src/api/comments.rs - add backend/src/api/communities.rs - add backend/src/api/conflicts.rs - add backend/src/api/delegation.rs - add backend/src/api/deliberation.rs - add backend/src/api/demo.rs - add backend/src/api/exports.rs - add backend/src/api/federation.rs - add backend/src/api/gitlab.rs - add backend/src/api/health.rs - add backend/src/api/invitations.rs - add backend/src/api/lifecycle.rs - add backend/src/api/mod.rs - add backend/src/api/moderation.rs - add backend/src/api/moderation_ledger.rs - add backend/src/api/notifications.rs - add backend/src/api/permissions.rs - add backend/src/api/plugins.rs - add backend/src/api/proposals.rs - add backend/src/api/roles.rs - add backend/src/api/self_moderation.rs - add backend/src/api/settings.rs - add backend/src/api/users.rs - add backend/src/api/voting_config.rs - add backend/src/api/workflows.rs - add backend/src/auth/jwt.rs - add backend/src/auth/middleware.rs - add backend/src/auth/mod.rs - add backend/src/auth/password.rs - add backend/src/config/mod.rs - add backend/src/db/mod.rs - add backend/src/demo/mod.rs - add backend/src/main.rs - add backend/src/models/community.rs - add backend/src/models/mod.rs - add backend/src/models/proposal.rs - add backend/src/models/user.rs - add backend/src/plugins/builtin/comment_notifications.rs - add backend/src/plugins/builtin/conflict_resolution.rs - add backend/src/plugins/builtin/decision_workflows.rs - add backend/src/plugins/builtin/federation.rs - add backend/src/plugins/builtin/governance_analytics.rs - add backend/src/plugins/builtin/mod.rs - add backend/src/plugins/builtin/moderation_ledger.rs - add backend/src/plugins/builtin/proposal_lifecycle.rs - add backend/src/plugins/builtin/public_data_export.rs - add backend/src/plugins/builtin/self_moderation.rs - add backend/src/plugins/builtin/structured_deliberation.rs - add backend/src/plugins/hooks.rs - add backend/src/plugins/manager.rs - add backend/src/plugins/mod.rs - add backend/src/plugins/wasm/host_api.rs - add backend/src/plugins/wasm/mod.rs - add backend/src/plugins/wasm/plugin.rs - add backend/src/plugins/wasm/runtime.rs - add backend/src/voting/mod.rs - add backend/src/voting/quadratic.rs - add backend/src/voting/ranked_choice.rs - add backend/src/voting/schulze.rs - add backend/src/voting/star.rs - add compose/.env.demo.example - add compose/.env.production.example - add compose/demo.yml - add compose/dev.yml - add compose/production.yml - add docs/README.md - add docs/admin/backup.md - add docs/admin/configuration.md - add docs/admin/database.md - add docs/admin/installation.md - add docs/admin/plugins.md - add docs/admin/security.md - add docs/reference/api.md - add docs/reference/glossary.md - add docs/reference/voting-methods.md - add docs/user/communities.md - add docs/user/delegation.md - add docs/user/getting-started.md - add docs/user/settings.md - add docs/user/voting.md - add frontend/.gitignore - add frontend/Dockerfile - add frontend/astro.config.mjs - add frontend/package-lock.json - add frontend/package.json - add frontend/public/favicon.ico - add frontend/public/favicon.svg - add frontend/src/components/AdminNav.astro - add frontend/src/components/ThemeSwitcher.astro - add frontend/src/components/icons/VotingIcons.astro - add frontend/src/components/moderation/LedgerViewer.astro - add frontend/src/components/voting/DelegationGraph.astro - add frontend/src/components/voting/VotingMethodCard.astro - add frontend/src/components/voting/VotingResultsChart.astro - add frontend/src/layouts/Layout.astro - add frontend/src/layouts/PublicLayout.astro - add frontend/src/lib/api.ts - add frontend/src/lib/themes.ts - add frontend/src/pages/about.astro - add frontend/src/pages/admin/approvals.astro - add frontend/src/pages/admin/invitations.astro - add frontend/src/pages/admin/plugins.astro - add frontend/src/pages/admin/roles.astro - add frontend/src/pages/admin/settings.astro - add frontend/src/pages/admin/voting.astro - add frontend/src/pages/communities.astro - add frontend/src/pages/communities/[slug]/index.astro - add frontend/src/pages/communities/[slug]/plugins.astro - add frontend/src/pages/communities/[slug]/proposals/index.astro - add frontend/src/pages/communities/[slug]/proposals/new.astro - add frontend/src/pages/communities/[slug]/settings.astro - add frontend/src/pages/communities/[slug]/voting-config.astro - add frontend/src/pages/communities/new.astro - add frontend/src/pages/dashboard.astro - add frontend/src/pages/delegations.astro - add frontend/src/pages/demo.astro - add frontend/src/pages/docs.astro - add frontend/src/pages/features.astro - add frontend/src/pages/index.astro - add frontend/src/pages/login.astro - add frontend/src/pages/manifesto.astro - add frontend/src/pages/notifications.astro - add frontend/src/pages/proposals.astro - add frontend/src/pages/proposals/[id].astro - add frontend/src/pages/register.astro - add frontend/src/pages/settings.astro - add frontend/src/pages/setup.astro - add frontend/src/pages/users/[username].astro - add frontend/tsconfig.json - add scripts/.dev/state.json - add scripts/demo-reset.ps1 - add scripts/demo-reset.sh - add scripts/dev-start.ps1 - add scripts/dev-start.sh - add scripts/dev-stop.ps1 - add scripts/dev-stop.sh - add scripts/dev-test.ps1 - add scripts/dev.ps1 - add scripts/dev.sh - add scripts/post-reboot-setup.ps1 - add scripts/prepare-production.ps1 Diffstat: - 483 files changed, 61980 insertions(+)
2026-01-27 16:21:58 +00:00
## Philosophy
Likwid implements the principles of **Democracy Design**:
- **Information must be understandable**, not just available
- **Listening matters more than speaking** — structured deliberation over flame wars
- **Voting should express nuance** — from simple approval to Schulze and quadratic methods
- **Delegation should be fluid** — trust networks that adapt in real-time
- **Participation is designed**, not imposed
## Features
### Deliberative Democracy
- **Inform → Discuss → Decide** workflow for proposals
- Resource libraries for informed participation
- Small group discussions with facilitators
- "Read before discuss" requirements
- Constructive comment visibility scoring
### Advanced Voting Methods
- **Approval Voting** — vote for multiple options
- **Ranked Choice** — order preferences
- **Schulze Method** — Condorcet-consistent pairwise comparison
- **STAR Voting** — score + automatic runoff
- **Quadratic Voting** — express intensity of preference
### Liquid Delegation
- Delegate your vote globally or within a community
.dev, repo, backend, +4: add 483 files Verified changes: - add .dev/dev-token.txt - add .dev/pids/backend.pid - add .dev/pids/frontend.pid - add .env.example - add .gitignore - add CONTRIBUTING.md - add DEPLOYMENT.md - add README.md - add WORKFLOW.md - add backend/.env.example - add backend/.sqlx/query-00649c07335338a85657781bfe97b299039883e1170687d60047ced9f3271b8f.json - add backend/.sqlx/query-00b25a5d76ada968ebb490cdfa9b30d82de7402bda296872eb4a366bd2942640.json - add backend/.sqlx/query-00c90349026ba6858b28e413cff2e1b71f87d06dea5759fb6159da22a995e341.json - add backend/.sqlx/query-00e2f11aa7f20e01f9a9de158b81fbcd5a33511135ce3e05aea3c8c8846239b3.json - add backend/.sqlx/query-03706c8c7d9db6d3112ccbd27fd026308c5a03a923f53331468cc899eff9a08d.json - add backend/.sqlx/query-03b9920a00f57083543abd69b18965bdb37d21ba503691cd054ed06f6807d7f7.json - add backend/.sqlx/query-0474f023ed456e56e6a744f8a94e4afc361456a4979e1d14378d1f475c1b2192.json - add backend/.sqlx/query-04c1f2a6a596b9cda5a0744b941777916a3aa3c03445ce59a5a3a69f869078de.json - add backend/.sqlx/query-0569967ce647a065b60b93a233bd222d7dc8aef1eeffec8796dae06968faf08d.json - add backend/.sqlx/query-05ab322014e6f15af99d2af3c118f0cf64b06f311b17ff3c7197d949bab2a580.json - add backend/.sqlx/query-05d8db279bba917c2456ca3427876caefc67b9b6a3d9031ab43f998462a75a58.json - add backend/.sqlx/query-06415d7e9b1b54bc96b8c35b6c92649ffe74f1d9047c783810c344c75f3b10af.json - add backend/.sqlx/query-06c276dfa8e0d19cf539d9abdd4699b387c4a8435c11ac1fe7c4a53d5c231ba6.json - add backend/.sqlx/query-075e3c636c51526e7ceab5540cccd87e52939da3a48e4a544fe67457e8de6962.json - add backend/.sqlx/query-098ff8cc94787edf79a98396716cb5296547c407516489b5b873dadfa360f91e.json - add backend/.sqlx/query-09e0a994d85ba6589db1c989f193ef10e081ccc560031a056e80cb19436f5e8e.json - add backend/.sqlx/query-0cec90f8ac9b48f22ca24330afb16c9308998ddd30404d2a1eb38bd8d0fa46be.json - add backend/.sqlx/query-0d3765f6d5135140d623f9dc706b6907686b98158d775978709db26486109d8b.json - add backend/.sqlx/query-0d79d19ab27c1962afc4ef802f386e160c4a555ca59bade20c901d7b8be99d0e.json - add backend/.sqlx/query-0e518900101ca3ba736e18a911a07759368f0481b3c0dcd4702c077cdadb7ef0.json - add backend/.sqlx/query-0ea2a972775b14b5a22edb7b7a81f414993d8153aebd7121acbcbd54257f32bf.json - add backend/.sqlx/query-0ef338c61969938be731e6187b77c4d7454c409079ecc073aa24a10d339b47f1.json - add backend/.sqlx/query-10649f88f5a0055a0aa23cad37d0b51bd24c35ab290c412bad1286c0baaefd56.json - add backend/.sqlx/query-10a632674ed7d086243d8a31abcb4935677106be2937daf876b01434fc07d293.json - add backend/.sqlx/query-117802a0a1de4ec2e5e3e7d2fd557421991b07876c7b42760bbe756b979d0e96.json - add backend/.sqlx/query-132ee5d7ab197b3a1d3bce2740f419e3cc2311e3cf0bbd0dfe821eebb4ca4fe0.json - add backend/.sqlx/query-1414a9b0037bc888daa0b1215e88a78b20c7e2c614760f36307a248be45203ff.json - add backend/.sqlx/query-14514b4a260abf4b93429a3d841bea19693db589ad668279d7361f499fe7e408.json - add backend/.sqlx/query-150c49c9bd09af829b05abd06d6217aec3ed104f6286e2fc6bd741512cd254ff.json - add backend/.sqlx/query-155f20f35f5b4df59e1a53d0aa30f2994b0a6f76fcd1ff443a6bbe13e3d41339.json - add backend/.sqlx/query-1648eb605182a87a4fadd7158f7012dfe8011a56d63ea069a53bfd697bcdd166.json - add backend/.sqlx/query-171bd1d2e58286b428275404fbaaaedab5d2ee9d3c0b76e3182b6fd48493cdc4.json - add backend/.sqlx/query-174c2a9d861710b570536d1350b4e70b13a9290b222eb89ce753a5702de63f0a.json - add backend/.sqlx/query-177d2a77cdaaa75e32bae953e520231ce713d5fb5f65f533660c773417be085a.json - add backend/.sqlx/query-18c0fb05da45a3eea514f660bc4ac4d6aca71442645666a9c08db8f2a564ff6c.json - add backend/.sqlx/query-18f2bb2a5454308a0ca13ad574947eaa83e52ab32ba48687f54cdce41b34a141.json - add backend/.sqlx/query-1ad83f237ca18e09dfac8f654b6befac12576bf30f35f3bf626b7ccf46a4fb94.json - add backend/.sqlx/query-1cf0926848f8f1fc1f62337b344f06d86408f94450fe0ed80a44268657e92c06.json - add backend/.sqlx/query-1dcd2fc713e43bb6e785befc420fe94db65d42df35bd8015c550c2f8666664e7.json - add backend/.sqlx/query-1dedda4e97c32d56c88d29a247f788e5aac67cc9bc59fdd52b40926af3e5a671.json - add backend/.sqlx/query-1efa9b54dff5200841ab35a40e525a8d0da40edca89aa78cd168ae3e854eabc2.json - add backend/.sqlx/query-1fd0e024053913d7598c5cdb19f407cfa7fef149553e18efc9e5149dd77e7f1c.json - add backend/.sqlx/query-20414e126202ce893b8e967c585ac6ee9c6cc869033bbe7bbf959d80dcedf82b.json - add backend/.sqlx/query-21412c1fff5f48e1ca0a5a67c49180efba50cdbc247a467474296f00a4f1f0f2.json - add backend/.sqlx/query-222ef714ee6f0d715f09643cff679f1c9d5132051dea4cf1f809f06470ed9b44.json - add backend/.sqlx/query-2376b5dff203895eb0b78454a323beb8a90d4ea20ca201226d4b228a2b846c4f.json - add backend/.sqlx/query-274cc3e62a3bc6659ae9e652d6ac15076f76a5fb7acad44f5e853678cfa2abf3.json - add backend/.sqlx/query-27723721585f30329494e2c80e4851b65cd980780e4b756019f73df0f9d28061.json - add backend/.sqlx/query-28654edaba50887bd4c7f698e538ed9ec70543b1ba6d0ecc5b675a1040148b6a.json - add backend/.sqlx/query-2a13dcd10626c05bfed533ba131e46f2ba7c132c9e5d58afe30ba11179096bce.json - add backend/.sqlx/query-2a288385b0b4f402803e22171965bedeeb6e40308d09f4a0d4f67258b11f7cd2.json - add backend/.sqlx/query-2a7e168921469392cdde35401ab602fdb281f995ad75050af27a4130c311a920.json - add backend/.sqlx/query-2b38c2a93dda00a2ccd0ffe3d2cd83b9cf41d444b6f09b211a57dd6689a9e27e.json - add backend/.sqlx/query-2c9bb8a5dca54ef476b2908dfad34371f6f34e4a8500f855d01209d32840f683.json - add backend/.sqlx/query-2ca4dcd48f294e84793ad46b960657a7d30cf790418baf4feab371fb45687627.json - add backend/.sqlx/query-2cb27026dc438da39c4132e9679d8312ed4909560135b5660c82e06ed61e6436.json - add backend/.sqlx/query-2d6f151a2ed11e1a6efecfe1c1cd0242e3e28942cfbae4db71b4d9d709f96522.json - add backend/.sqlx/query-2f7f1f0d1960020529d167240c56abc5bcc6fcd5615890279d2bafcde467fe61.json - add backend/.sqlx/query-2f80cf2d27e9af290578740b2752a6a0d8c41e62aab523e16cc8cf123e59166f.json - add backend/.sqlx/query-31639da003249b784d3603126cb36a1ea592bd819b8f43d9cbd192d7d405c44d.json - add backend/.sqlx/query-3167dfbfa487a695ad0953ed59b206fe16833cfe890fdae3fd74d6fe2d11ced5.json - add backend/.sqlx/query-3205e4cb752317923752ee9ace04a93ada7aa8cbfc97a87f9ddf6376dc102146.json - add backend/.sqlx/query-3271a11a6d1ad3cc05deda6d3e33bd350180c0b20da49b88c5bc04d5f06eb927.json - add backend/.sqlx/query-32e740982952a1d3756117f496bcff626f7bcb438a50fa8eef80e013a84e8048.json - add backend/.sqlx/query-3316c52a6ddc9891f4482e6f5df622147b1be87d0723bf709d6d7def94eb1a0c.json - add backend/.sqlx/query-33281e190171ace099ef3209d49ac42b6527824947520336d7d11594ab56b265.json - add backend/.sqlx/query-34ac1a3b360d0e99c80d59aad7497794803b0ca05cb498e7715344bc9d512084.json - add backend/.sqlx/query-35b2d2fb4f7db1ce97557c01de71c96e64862e3955e1e2d5996581eb4b871f3d.json - add backend/.sqlx/query-3647ec42782a77237f075f172b4d435ac8d6325e60696018386ef1509e499a6d.json - add backend/.sqlx/query-39926d0308364c2a13c987adbc8b364253e9d8d350d69a1e1d3efd1c2e424d81.json - add backend/.sqlx/query-3a395c6e9a23a87fbfa1b3d7a06fbe907b32e3cfb6af327cec1533b7762bd4cd.json - add backend/.sqlx/query-3a8154bdd76daa157200feea1cce96d67bdb7b7c824088ca625105e96495938f.json - add backend/.sqlx/query-3b034411e6338ddaeae97589f0d0ab13cd674f852ad61b643a2e593d252767f1.json - add backend/.sqlx/query-3c118e418b94a2d609cde609b53fbbb1a0055fe46397599f7c5eade17b0a5360.json - add backend/.sqlx/query-3c323153097726bf967b733fc7cb40173a1c64a4b7535a904445e5d02dbe2f0f.json - add backend/.sqlx/query-3c47d27c939cb21fbcc621825d1ef59d5284c3b6db07e2b11d772fefbcf1650b.json - add backend/.sqlx/query-3c769ff42e6b6e2df033fa05cf6d8ae1e9fba6320943f65c95613f56a8ea2a13.json - add backend/.sqlx/query-3d523a0728ea6e9df275520675e3caab1963c61d5d6c3ad468cc51568d4bb5f8.json - add backend/.sqlx/query-3d9153f242fa24637d71a4b4f0a76edee15892248acb6b281ffdbab11a4bff0f.json - add backend/.sqlx/query-3e0e0fe2c4e51b68025965560101643e7e035b782b1cd0d110803664c5831fe3.json - add backend/.sqlx/query-3e7754fe4fe21c7fc50435ad222ed68617f8e8c4f2a21b202ee95d6f76ae0d32.json - add backend/.sqlx/query-403544e4819bc7bcc4ac51c997fb9ec74c3b3fa2c6f2b170ab5b8c8c1d9c65d4.json - add backend/.sqlx/query-41273682b6b15534294e7f90907c7a516cb658e276a50b44f72a2b739ee9e04b.json - add backend/.sqlx/query-42e0fab065d541e407129d44f86f1d1d46387494b992c81f7a334e72c42c98ca.json - add backend/.sqlx/query-43a864f79078c6891186f1d20600983ee080a7033137c0d715880cf20fc7776a.json - add backend/.sqlx/query-4619c7159d4bec14be35a308b0a867e3d5b0687a46a456adf6e8dcd1582d3849.json - add backend/.sqlx/query-47ea00355af927b41b9c39e55791042049a4bea2d1fab669b4ef6fee3f7a3497.json - add backend/.sqlx/query-47ea0156899876339e02f4769e666c24d5d0fee1f18869d7adcb4aeb007076c8.json - add backend/.sqlx/query-484e7ea64028000ccadd135f9806fd190f860d8ac1cd1c56828fa5be279f57c9.json - add backend/.sqlx/query-4a92221917041b95e9a27e511ca70b404313e7dba1faf19bb1eb1347b2208587.json - add backend/.sqlx/query-4aa9e85bb2280a67f94914b3de749b262b16223d467464079ce36509b857f306.json - add backend/.sqlx/query-4cc6b7b3343bf2afda642707ede4a1e1df7904a137b6b3c34bfdda71088516b7.json - add backend/.sqlx/query-4ce35bd4ce5c2dde738b87eb3aa45c21926d67e156fda5cbdcaa5e1db2ebe785.json - add backend/.sqlx/query-4e324f0141e12a57df99f729cccf6133014b6669bda8d3b75ca07bb2a47567b2.json - add backend/.sqlx/query-4ed6eff19ec25d1e627ff27d656934c56ac363260ba540fc0d225b7ce7da48d3.json - add backend/.sqlx/query-4f6d0f4d874780e2729f6e6f2e50ba35dddf8cfaa1de0f4213e2ca70aad2d3cc.json - add backend/.sqlx/query-4fbe1a8019228d78f6b2361fd7f363b8f4ee2e63104c7a824e289d13b4814e51.json - add backend/.sqlx/query-502a8e2b5a59105bcc6d1d668d47b04d7978dde7265c76ae37915f8ae8842033.json - add backend/.sqlx/query-50c17bb1a4d6b249e39d8d13c2ac7d346bfc2476e7c983223e9b4366b2f08abd.json - add backend/.sqlx/query-522c64c31796d1d85b4ce6a6cbac86d0b440c2eb54d14fd700fd005848e4b146.json - add backend/.sqlx/query-5303a6a8c505e05aca3e158cf4aae36c2ad5a98374032d3eb604363f777def7e.json - add backend/.sqlx/query-536866ecf3349598d172c0011a0970a0f7926658d166a4940fca89cabaf3d514.json - add backend/.sqlx/query-53e54a4fe0344eb04f52ac7d737663b824bbfc3c65e3cebd23ff3dfa5a89fbe8.json - add backend/.sqlx/query-54262c9a793fdbf907f81f6974d4fa57bbd4140b6bd9fc84b27f4abcdc9cefc4.json - add backend/.sqlx/query-563efcefcb6880c075c16d278b11631166fc30678c161bdff1a68b8f491bf335.json - add backend/.sqlx/query-56a3e0906a82b4c7df2d066194300d7c5c704562990cf7d835541083884d192e.json - add backend/.sqlx/query-56be8018a90784cb6868af7bd4a7dff4e1e8ddf09e6d08b97c2e0cc3a6dec0e5.json - add backend/.sqlx/query-598da730fbfa2531c8882c1456f8e1a13c6a99c177109e6a88b44e66e923e8f0.json - add backend/.sqlx/query-599b54e38d5be790010a42f8db1cdd210506243f533fe02b90974c51d878ef52.json - add backend/.sqlx/query-5ae8c8c64a800b7735ab381b7ff73988ec35b8839beb5f108400e1e85295aaa8.json - add backend/.sqlx/query-5b3990eadd408f017c3f97f9eec54ebf9d4b17e8f52b7be7e8d4f7a4d4303045.json - add backend/.sqlx/query-5bf7ea39ce22f5466a08746b98091b897f35a72561e668a1643d63c9427a96ca.json - add backend/.sqlx/query-5c54f1d4567d6c7baf6969687c7f19f71dfdcacebdcbcb5284b0243cc12895e2.json - add backend/.sqlx/query-5d369c593b73b9c9835ef79206367824f5cc656cb8d93d3a4af3262c73cf88ad.json - add backend/.sqlx/query-5ea4e4b2dafd654c306e4507faaa1d7112461cedba992f8d2ddc923c42cd7b6b.json - add backend/.sqlx/query-5fd1b28bc068dc4592e1c6a58bd348f4d9feae00d29ea677ae643593dda852a4.json - add backend/.sqlx/query-5ff99236c732a045c53789220aa54f9f494aa49b1b55b207ba777e9cbc2e8ddd.json - add backend/.sqlx/query-6098a745505990aea4405d2ab48fd8e4839518f714261bc8fc1cc01fe298ffd1.json - add backend/.sqlx/query-6252da4b5dd1636fb1aa75dc10bd8ede8f9b12fdb80b0edaa999c321993233ae.json - add backend/.sqlx/query-633a36b68dd39b0e443b169ac7bcfeebbd2e8b76a09791f8f3bd5190bdc569e3.json - add backend/.sqlx/query-63426c52f6016b030b23a562fe2aa08793ecb5e3a3a24f82bc7666cd8cf5cd68.json - add backend/.sqlx/query-641be20c2834a02a49f6c658663d73fb5779eb14e36cf13a9ecbfa61440c5332.json - add backend/.sqlx/query-65a8781dff58442082a16c731be5acfdb3c61ad599b2031433be6c554821df05.json - add backend/.sqlx/query-660253bf0225d065ae50eab8625e1f9662779997acef345182ce23e96efde2c3.json - add backend/.sqlx/query-68f175d74997d4cfc1ce98756bb32d8f7d3466d5ea71f137ac101ebd07e0073e.json - add backend/.sqlx/query-6a6bec68b35012df41e6bb99b5afc11a90e3404fa29698fb04fa3ad18ad2025b.json - add backend/.sqlx/query-6b3fef1781daf9672ad11cbc1e2d84e536ff7ee9b3cef4d5f517a2ed27c586c4.json - add backend/.sqlx/query-6d1c9e2cb972dbc9df0a72034cf0390e72bb8baecd2b09d8ae305ab3844439a0.json - add backend/.sqlx/query-6dc1dc04d2084400be320aa33507746a38814325f3525dd0f38e05c6a64f1f7a.json - add backend/.sqlx/query-6e44a5f3076d976fdad560f5c4ccb1802df408602aecb3025b851969ff480708.json - add backend/.sqlx/query-6e60bcb9d941716127a4ed3cead4b9a375deb0e4238137d3b095c43bae316702.json - add backend/.sqlx/query-6e71eb3247a4b255a2187731a9d54c4fe2aac97e458c1247b8b89364ff590b9f.json - add backend/.sqlx/query-6f89b8deda1078080ad8cfc2db507325e19bb0ffd02f1aa4f933045633c4914a.json - add backend/.sqlx/query-6f92eb099a3182a7f862df97a6f9cf340bef74f512099000e03450f69b796ef1.json - add backend/.sqlx/query-706d61211ccde2d45e1fc60480b37719f90ce364bf3a118743bfe82eca3783ae.json - add backend/.sqlx/query-7148baad9c5cba418a5d7818761e3ac52fe166fbfa0bfc5f6bbe749fa0a6889e.json - add backend/.sqlx/query-72132fbc4c6da619b3055bd473b5928c8a1ff7886a613d9d6be3f2ab2a7a7f4d.json - add backend/.sqlx/query-733ab1cda0fdc0cecf46928410fefb3b4e96eb2390dfdb93b95ce4c13f0d9e59.json - add backend/.sqlx/query-733faae97d10baca47579a4a56ce281a6f36a60c73739f9ad692fc8b3825964c.json - add backend/.sqlx/query-73720cd6ae56d7e210c173ca90f6c982f68150b76dc2d4cd578965c62ddb11be.json - add backend/.sqlx/query-73e84e079e38064cbf573149243395913f6a14bbaceedeff7bf41fdcaf63f01c.json - add backend/.sqlx/query-740f728d9932a5da47b6b9454ed77304f5e93dc836dc21b3994eb4e7c8bc8219.json - add backend/.sqlx/query-74fdd241eb54952015786937b057d437b60267d664cd4b57a9c394486f6001b2.json - add backend/.sqlx/query-75a8631bc9e4f89b9e1b6d1899711e148228dfa0a6760fbba7ddf2711fb16e6e.json - add backend/.sqlx/query-7635e7f06daac3a495a2439bc893e345effd96be4a8760d4ca11538334d875c4.json - add backend/.sqlx/query-768935f0dff24d092ebaff3512026b9e6a0344c9d10ee0cf852d299c80bba6c8.json - add backend/.sqlx/query-778a5cc33f4b205914711921c98653f826d2adc8175c9297efb485caf4c3d96d.json - add backend/.sqlx/query-78418e5f9824bceb1937348a77d50ced7a3e2f21ec72940fe9a70e77cb3923a0.json - add backend/.sqlx/query-7a3f67d8cafc3611f94a8cb2406ab4c0e90a3619f7b9e4b6ad67fe11a46b91d9.json - add backend/.sqlx/query-7b06af69ee03943c64083e5bc94cb6dbd6f5017ad44546dff7582c31345edc51.json - add backend/.sqlx/query-7c8ec9e26f553fc211b5bd819e31722a054bb9414950d16a8ebd451dc18d4f3b.json - add backend/.sqlx/query-7cc78deb0836ac802b017122ac50fe71bbe8af86c7aa5c8b90b10d1672a9d31a.json - add backend/.sqlx/query-7cf8e3b8f83a16c49ce2f7e66673d69e773f71abded50c5bb29884f9dff628bd.json - add backend/.sqlx/query-7f0faa7ca48a6a56274f7d05c1fb4ad2d8dd384fdb7bc178220f07481236c8b2.json - add backend/.sqlx/query-7f497e0097bf329922d709282092b588975f7c2d8c508fbe49ab3d9d4c99c396.json - add backend/.sqlx/query-7fdca4a1f7c40789d44de54a739eca0bb898c9fbf3e89784e2f784630c56dba5.json - add backend/.sqlx/query-82aa3e3878c98cbdcc5bbefd11acd7b19521314a38ab9085516eb81e39354d2a.json - add backend/.sqlx/query-860d54897714862bf6312fc00b440d414b9083efd695f04c31f26510d0254208.json - add backend/.sqlx/query-865245efea368b2c0b937356889a07b9a04954165e700f4c7c35687c13f2be27.json - add backend/.sqlx/query-86645359fb0da9b7441326acb5ac4d8be2c0eda7f3ef0d97d0b4d661aa0d62eb.json - add backend/.sqlx/query-87426464ee1ed01c4e1940b86ed461af98bcfe50c40df7c869c1c03395a79e07.json - add backend/.sqlx/query-87f52f0262716fe497a6e8b42722cc11f88dacaa0bca746ebd5b474a734d9bb3.json - add backend/.sqlx/query-88ca29971ada21e0ff2b92315e39c7aefbd81215862c5c7149e2dbca93c5d1fe.json - add backend/.sqlx/query-8932b373514ebf8056f5934c5b02dd675f6fe1b1317688676d5c32e1f01065a7.json - add backend/.sqlx/query-89804ccea9075b137f7c7e47917f3477f770dfd7550ab97060b981849618a201.json - add backend/.sqlx/query-8b2ab82dd4fe83655e074b1edc9e80e2ca276a327e044ad5578fb15eba3ac3ee.json - add backend/.sqlx/query-8d3042b1d0415262c8729e52a4d8933bf52b484798b7e3530219b0117a60f5d1.json - add backend/.sqlx/query-8d94635535054f82b5185372543c7347a8fe98d8402d99130a29520eab53bc73.json - add backend/.sqlx/query-8db75a6ddf63baa3ee89defbedaefb53f61892395025de17dce21451f81ba8b1.json - add backend/.sqlx/query-8e856e6e4081d2ca26e5e6097848fab90e055cbbc318956a3869750a0855fe3f.json - add backend/.sqlx/query-917a021a7c54c19e1257d558ec4e40c0001c975d00af6255ab2707d3ebb045ac.json - add backend/.sqlx/query-91b64087ce497ce4426c00ccdd8cbfde639f18d24df8362c11a211a9acf2fc92.json - add backend/.sqlx/query-92461256ad7b62764b2bd75674ccbfc11df6648d6d856e3e68fc80801457c555.json - add backend/.sqlx/query-93883e88af152aca23a39dadd95669f025294cb532a892e58891a0e756e9c784.json - add backend/.sqlx/query-93c4fe897770127740a52c43b14f2007bfa6faf8743dc07611ac22e9140e89f6.json - add backend/.sqlx/query-942753e2a11713b9d4b46a52f4a6426629f95c7a91598f351741f9bc100e243b.json - add backend/.sqlx/query-94499cff482a1533a32723bc9924bf62af0a9ec7cfe338b1c97336e6a1ea5dee.json - add backend/.sqlx/query-94b98a4fccec6a48b27cdf8d3ea8740a81baac9e53a5c458acb7f9692893f069.json - add backend/.sqlx/query-957b131c5ae23e306fe4634db068c611122ae61057c805c82413fb69ed015c58.json - add backend/.sqlx/query-95f70efea97448688250d1647387c7d3dc1e4eec0dc2e6ba88f09e9746132d09.json - add backend/.sqlx/query-965e42468c325a893d39c2eeefbea254b37e04f0d067d88988cf4ece97b0e818.json - add backend/.sqlx/query-9888b553ae9f5cd32aa1eb6cfee1abecc08787a0f7fd7526956d30d62c1801ff.json - add backend/.sqlx/query-9b9965ea0437e0f8e3467ba2b237d6a84c74bbc03c389117d8f3f6e71273b587.json - add backend/.sqlx/query-9beff9c1f4daa7453bd6f13f3692b320f1f82ca87bed75f8a85e87882ac4bfc1.json - add backend/.sqlx/query-9c3b9cd35a4c58e67a15ad0372c18b6c5fc0a969b9aec88508cea8388c2fbe55.json - add backend/.sqlx/query-9c4016766b52e727103f5d09c7572fa90d793c5b391cfe99809d2d8825b9c9d6.json - add backend/.sqlx/query-9e78a21e3bae2928e4ce353423030c59deb97bdbf242e8d4b8e2af11d65596f1.json - add backend/.sqlx/query-9f011d836f16bc90ba585c43424fbb960ee5cadd5f50088e252655f5f79612fe.json - add backend/.sqlx/query-a1df48d19975013b68c2e57f90a4c0691d7f31a83ffc92628d918959daba3e36.json - add backend/.sqlx/query-a2d2cf6227a9e713d29610e2c0f0e94146f1798257a9dd68325487329eb6e24c.json - add backend/.sqlx/query-a57268c9e448ddc42290fce152a7d81d332eccd8c90b962b7ef0cdaba6d8a3b0.json - add backend/.sqlx/query-a65fb2ba103206d6ad4c761ec1fb62638fc50474679c751183013efc7cb0edbd.json - add backend/.sqlx/query-a8414c7b067366f56d56b3a465b248209e3800c25fcea8dadc2f63fdca72e82f.json - add backend/.sqlx/query-a9d4611cf695893da6a962355b974077340a56497e7bc9100f288cb1195267ad.json - add backend/.sqlx/query-aa35c7c6645c9a7637f083650a2d9c898e15c49cc49a7df001fa6861ab47995e.json - add backend/.sqlx/query-aa69a761eb48721491a2275dc2040ac0d58ce45701dba74214e2af3685db59f1.json - add backend/.sqlx/query-aadb91fe11c7e3106062a2055b0196ca12ed20e40513bc14f11f4a8bd5623a3f.json - add backend/.sqlx/query-ad438c18ca77e186c4e33a8079374181a47fbbec6a5f0ae5fe2144e342910d40.json - add backend/.sqlx/query-ad82dc4820ab69556cba650ae422084d57dec2f89ae99c977be1b36261c8d0b4.json - add backend/.sqlx/query-aeee6c4f9115efe386351097cb8c3512550eeecac893289d40b8e01c04f9f167.json - add backend/.sqlx/query-aefd6f17ea2becd41283f5b07fca49481cbe221437fed57283b0f52c03bf85c7.json - add backend/.sqlx/query-b038e92708c16243759184994795f864db1cabbdf8f0d93128d41850888e531c.json - add backend/.sqlx/query-b09e737c4925f4ebb8fc57919c50542f125f4fc7d2ba49c3cd368682aba9a8b6.json - add backend/.sqlx/query-b3c77106c16c2b75c51a36e6e56f9cff657fce6f0472d905af97ffe5aba8d3c7.json - add backend/.sqlx/query-b42cab53e091470ad8237271def4b42146a75d30b77aecb4c1ae7ab7a7cc32d3.json - add backend/.sqlx/query-b54b3e3f031e9a09d1252bcc9e27ad26959157f77064a4e4d30ed73c3a01e293.json - add backend/.sqlx/query-b5bada0e6df57aa0243e0234b72c3b39cf6f1ee0ef69a4e232ae06f70b1b1c0c.json - add backend/.sqlx/query-b5d49d78ba8674954210df5728d43dca77d453a7aae14fb8b0e57e0f7a44e03a.json - add backend/.sqlx/query-b6bdb63000935a47301993972237254f9b11915a860d6e84ad639f579bb6ac62.json - add backend/.sqlx/query-b6d2983946f27ac29c85e72685d389d29c8ce1b3c9e3202a272f12f2e6dfbf06.json - add backend/.sqlx/query-b7fbd0f031db0653546e51da4237160abe2909f3dcf622f9ab1b91537c9169fa.json - add backend/.sqlx/query-b8ef84a72cfa6cea3a1b1d8cb5916d7e3290de0a05143432151308f32312f94a.json - add backend/.sqlx/query-b8f80a210fcb0474a124ad93e43a163431366c50dce137863b283121ce70604b.json - add backend/.sqlx/query-b94c2ca7181b28660e9a9b256e6ebe98b6cf0c450969b6b953434b8d2775ee4b.json - add backend/.sqlx/query-b9586185e84644f0bd936d7bf5e9bec6ebeaba77ab354d0b7096d9334656497f.json - add backend/.sqlx/query-b9e59dc4e2e37b0c59ebbe794b03e64647af6b6025b3c74c73324b5735e32802.json - add backend/.sqlx/query-bb0cf75500c2358d78ae8028e5d587b9e7492ce6082340ec84f7706d668beb45.json - add backend/.sqlx/query-bbcdcddcd2f31a7e308016f325e9914a10c18cbc05d4b724bb87533cd3851fea.json - add backend/.sqlx/query-bd76cc54f3ccd774a62f6d2b5ab27e5432bc2202b3e8f030a24a1733c96867af.json - add backend/.sqlx/query-bfdd9a0dcf20053b8d10c946955530253502e9c624b6586b358660df9d1ec8cc.json - add backend/.sqlx/query-c2a2d3c0016e6d4df3fd04f9e24c5c4fde0acbe42a195eaf74cf5299dacb846c.json - add backend/.sqlx/query-c2ca1cf0be6dc893f3f6938953436c69408bd8ca37d45398a1faf450684aec08.json - add backend/.sqlx/query-c31ebddef69f304403bfb2d816d42bd9731482ceec258e0de1bb61d5ba20d413.json - add backend/.sqlx/query-c33217c0ec06f08e9b89ac876cb22bf002aadb6cd6391af968d6a08725792228.json - add backend/.sqlx/query-c35608b0d7569f739dda24b3da59b7b500ff26f5e79433b3f7e3625d91177d26.json - add backend/.sqlx/query-c42152b0a4b91fd58afbdb06da1a9b7b73f414bdd6607343df01dc0fa3d4b5fd.json - add backend/.sqlx/query-c4d21db839f7e0b45fc1fc1291840e78d1e92440e003c5ad3cb45c3d9f5042fc.json - add backend/.sqlx/query-c5f66036fe85ebb4597f564dcf40b7547b409195b65ea3130454f96265c9bd82.json - add backend/.sqlx/query-c64fd6da083e54e1719580125eb72a544081ed4c91c02295c6f1d799fb3b4f5a.json - add backend/.sqlx/query-c7525a8aa940491736dd45cd876dab2e4cd0d05f0104e2d2b08980bcee557212.json - add backend/.sqlx/query-cbb4acc6eb730ec886b1af23e6389a0e68d7a672d8643101f6680e42df944711.json - add backend/.sqlx/query-cc77b8a12eb03938d34d391c8b1397dd2fe99748315a95299563c3a2f5c989bf.json - add backend/.sqlx/query-cc97b910b8afcfd348d5fe69f7e75862ddd7e31680e46a61170a467b64cdf547.json - add backend/.sqlx/query-cca54c0742b36cc4b7c3c2bf0bb3d987d16771d42334f11c4e9d7598651d21e6.json - add backend/.sqlx/query-ccf5a42b62f74eeb3d424fc4573ec6b01b1ed46b56518c0ccc5121e524d2f3c5.json - add backend/.sqlx/query-cd002400a4b0c6b071bb949d0c716ab2691caa661ccc407af85da42599e1101b.json - add backend/.sqlx/query-cdb2b8bb16c0e2e04fa6df8e22e060adfc81c38cf67121ada9f6c721a9398588.json - add backend/.sqlx/query-cde649035ebc12f0bbce749e9a5347b8073659b42c9e65a4ac74400b17dc38f7.json - add backend/.sqlx/query-ce7f978d16864a568b49c47eaa68edcaafb0d293f6d08f5a945bd456c91fd417.json - add backend/.sqlx/query-cf9a5a22ac9e4ab44a56d2aa4e110a63ba212d392a353850a344f69a0a13811f.json - add backend/.sqlx/query-d00ba1f23877ca15a8ac8b09d55fc86a37d40c9a0ea63afdbfa2f725fa39d255.json - add backend/.sqlx/query-d09299b064ef5fefd5f5ac8a7f1ae1a549cfffd9081fa72b4427fa4ea21cbcb5.json - add backend/.sqlx/query-d0c599e01228531f2ab7f571658c71563fd1ad88cfa5e13f1adfaad3f00eaa75.json - add backend/.sqlx/query-d2de711bc12629a1141d11db45496d22c0ff03555c983205b512a318290948a0.json - add backend/.sqlx/query-d32e84b6ce21f4b4553aead45ef53dce4362399a75c39f7203cbd770e997abdf.json - add backend/.sqlx/query-d48c21b6a8d67db4b37ee43d6273e3d41d1cf2a2b89fe434edd009a29e69b94c.json - add backend/.sqlx/query-d705da303937bc5e1a2e929b9cf3f93e4e24b55e1dd14c4a83bca29f0d3a0341.json - add backend/.sqlx/query-d83b8a3f417cd420d44aa3f7f8c462b28c2f7f2a4804ba00bb51a63759a7f8b2.json - add backend/.sqlx/query-d928c488809305d28f877c359c93614550307868213d312ea8ae24bcbb927db5.json - add backend/.sqlx/query-da70570e2492dcc5b21ff51069db1a366ff94803b0cfa5821c497b6ba06ed2fc.json - add backend/.sqlx/query-db38e6387cbf510bf0c13ecee0f42afc7c100aebd0b043fd23424cfe61110e3a.json - add backend/.sqlx/query-dbf52d447a84d9f1a7f36f3c57c05b1c547bd8515706b2be877762edd1aff254.json - add backend/.sqlx/query-dc64e1d25d9ced3a49130cee99f6edc3f70a4917910cf3b76faefc24ac32159d.json - add backend/.sqlx/query-dccbd661ee975b7e9b74d175c452fbd3ba2c847c24c6f401fd18736aeaed3ad3.json - add backend/.sqlx/query-dd458a825f2295d6650263f39ed6f22d1da12443b80bd53a4b6c61e870b4cf07.json - add backend/.sqlx/query-dd4e31b27b005a68baeacf0ada1645ebe2277a8c437d6846db1776b53611aa2e.json - add backend/.sqlx/query-dd99e48b1572e25db38f03da95984fda1072913b29bb6b3753a0d351583dfff6.json - add backend/.sqlx/query-de3230de507ca1e11d2ca40bef8a5b8470628ddbaa454af4f49f6fe6953f9014.json - add backend/.sqlx/query-de6d39c5473742a38ff437b95613ae32a366f4339c8165f58d192151024b6caf.json - add backend/.sqlx/query-dee9b81f66d0a8a8ec6543e2bda43b68604377280236f83eec9bb710c4a8b957.json - add backend/.sqlx/query-df3c9235defd412e75b967ec4c1d052404a6289ec89ebc3cf7524f0a65279258.json - add backend/.sqlx/query-df917df33b1f18f0545d866fdcdbff3c189c549e3e92966b808166ebd65a758e.json - add backend/.sqlx/query-e078bd7e0e60f80321173ea5383e3c89f5b07036b7f6c3be6a66e25dd64d8790.json - add backend/.sqlx/query-e15d8685afde9f89919d3643dd1df3d4718d826147e63be4c8d4e8708a15e481.json - add backend/.sqlx/query-e1a40a1cc7c618d815ebfaec6751ab19146ab76519020ce783bc916e64155a14.json - add backend/.sqlx/query-e25c2c4e795fd113fbf9631b4fc107d217f2dd0a8eacd812067defe8d3529d54.json - add backend/.sqlx/query-e2a9b8f8fb63c4e8737c0f2925ffeff025be37184ede64b328e0ecd68680dc08.json - add backend/.sqlx/query-e3e45d1876b1a38771e1bb32eda68462ba27bd0beca41a602ebf60b86b863680.json - add backend/.sqlx/query-e53f34921983218ba03123ea07403917a62cb0fc66039be84387df090606eefc.json - add backend/.sqlx/query-e5ada1e1857eec30e7c2a55c19b0ddbf2c90fc7f0019f211549f2abfc4fdf487.json - add backend/.sqlx/query-e70b6cc45322a8ba1c3e9fef0c8c3185bbeacbcbf16810c303c029ea108802bf.json - add backend/.sqlx/query-e983f01536d1ed4b6b40d640877d9fa445aa04972cfe427116cbdf104e6cb32f.json - add backend/.sqlx/query-ea775b89fed8c652e57e21cd202dbb9c4d13dedc7d0890dd1d13dfa7635f02b5.json - add backend/.sqlx/query-ea7e6d82c94b562d5e75720c8c1af6ad707ef717406330be0c4255363f9c783d.json - add backend/.sqlx/query-eab47df4e85e9dfeb87b480dc092b09924d6239ba71b8715be5c56137ebca953.json - add backend/.sqlx/query-ec156d9abd97de863483a1d8fe3e4ff63a63b39f883d320175c88b0bcaad3f70.json - add backend/.sqlx/query-ec34b2dc8930568c2e135aa13d08783d7b62dd524eef99f00b8bebd55f0196bd.json - add backend/.sqlx/query-ed05dcba73fd4426c2de9c8828d943e45eafa31dbb155c4a50b2471308dd3097.json - add backend/.sqlx/query-ef47b9016770614a3d12c6bba1c99b60046a3bff47ca5e18759786362446e1be.json - add backend/.sqlx/query-f10d14593a49a3f14536b6ec7a0283b16f57a731f18f1ea00a25b76aeda238cb.json - add backend/.sqlx/query-f1de9db0b037bd44be7aa37b308ce60a0c10888951f385b61fe237e09b924976.json - add backend/.sqlx/query-f45f95ec5c791d1bd87635f304f62caf19b12dc178c570828a8bb8a5579ea17a.json - add backend/.sqlx/query-f5476f8976f2c0ab202fe52ea148d95570f6e3901f6ef0637e58701eb42d0120.json - add backend/.sqlx/query-f5d1ab63c42cd0e45cfab56f5f4efd821816137eacf138aa5191dbe47c5bd444.json - add backend/.sqlx/query-f63fca5359b5dc0141d7de8e8f4c3ec1e7b446d48ab6d175c8b876823bd042a9.json - add backend/.sqlx/query-f7bb4e7ba6e7a6abb1549bc112176ca7afdb25923aa3aae3775a65cbd17afeaa.json - add backend/.sqlx/query-f91db2c61f14281c7dfd6f6aefdffc97e080dd9acc5d9c5edd8a865623b44628.json - add backend/.sqlx/query-f9ff82cdb66393d4fdef38cf4e64b93b9f8b062f06cd3f7bde3b0873ecbfc835.json - add backend/.sqlx/query-facfb30591b5abfa384d897e0de7c5d0f0e9f80cf8c6e57a1c5298ad1a990351.json - add backend/.sqlx/query-faf3d877c077b20211fe2cbf92c54322660147ab31fe5036e3e722725c2e3e44.json - add backend/.sqlx/query-fb2e03f8ccf37e8463ee7f14e74fc20fdb46337da0f561b4fa0eb815fb0486b4.json - add backend/.sqlx/query-fcdb75aee759125fdb4169e6c9dd2b47b4f264c512bd62db700083cf479d6d3f.json - add backend/.sqlx/query-fdfe11a59054df6111a7833043bf8cfb772c5897d1aa9c25ccad0579945e74f2.json - add backend/.sqlx/query-fe3dbfffdaca1dcf828be7cc949f7f74b05f694dc8ef3ee37a3dac8f695ec62d.json - add backend/.sqlx/query-fe5ef9f6c10dfb61e236bc955d377dd8b0893e052ee073b55fbb1b8f745a9cd5.json - add backend/Cargo.toml - add backend/Dockerfile - add backend/migrations/20260125180102_initial_schema.sql - add backend/migrations/20260125181224_voting_system.sql - add backend/migrations/20260125183611_comments.sql - add backend/migrations/20260125204900_notifications.sql - add backend/migrations/20260125205600_advanced_voting.sql - add backend/migrations/20260125211000_public_events.sql - add backend/migrations/20260126012000_plugin_packages.sql - add backend/migrations/20260126120000_instance_settings.sql - add backend/migrations/20260126121000_admin_columns.sql - add backend/migrations/20260126130000_deliberation_system.sql - add backend/migrations/20260126140000_advanced_voting.sql - add backend/migrations/20260126150000_liquid_delegation.sql - add backend/migrations/20260126160000_plugin_registry.sql - add backend/migrations/20260126170000_gitlab_integration.sql - add backend/migrations/20260126180000_roles_permissions.sql - add backend/migrations/20260126190000_voting_plugins.sql - add backend/migrations/20260126200000_invitations.sql - add backend/migrations/20260126210000_plugin_kv_store.sql - add backend/migrations/20260126220000_approval_workflows.sql - add backend/migrations/20260126230000_vote_reproducibility.sql - add backend/migrations/20260126240000_topic_voting_methods.sql - add backend/migrations/20260126250000_moderation_ledger.sql - add backend/migrations/20260126260000_decision_workflows.sql - add backend/migrations/20260126270000_self_moderation_rules.sql - add backend/migrations/20260126280000_proposal_lifecycle.sql - add backend/migrations/20260126290000_governance_analytics.sql - add backend/migrations/20260126300000_conflict_resolution.sql - add backend/migrations/20260126310000_structured_deliberation.sql - add backend/migrations/20260126320000_public_data_export.sql - add backend/migrations/20260126330000_federation.sql - add backend/migrations/20260127105000_wasm_plugin_runtime.sql - add backend/migrations/20260127150000_demo_seed_data.sql - add backend/src/api/analytics.rs - add backend/src/api/approvals.rs - add backend/src/api/auth.rs - add backend/src/api/comments.rs - add backend/src/api/communities.rs - add backend/src/api/conflicts.rs - add backend/src/api/delegation.rs - add backend/src/api/deliberation.rs - add backend/src/api/demo.rs - add backend/src/api/exports.rs - add backend/src/api/federation.rs - add backend/src/api/gitlab.rs - add backend/src/api/health.rs - add backend/src/api/invitations.rs - add backend/src/api/lifecycle.rs - add backend/src/api/mod.rs - add backend/src/api/moderation.rs - add backend/src/api/moderation_ledger.rs - add backend/src/api/notifications.rs - add backend/src/api/permissions.rs - add backend/src/api/plugins.rs - add backend/src/api/proposals.rs - add backend/src/api/roles.rs - add backend/src/api/self_moderation.rs - add backend/src/api/settings.rs - add backend/src/api/users.rs - add backend/src/api/voting_config.rs - add backend/src/api/workflows.rs - add backend/src/auth/jwt.rs - add backend/src/auth/middleware.rs - add backend/src/auth/mod.rs - add backend/src/auth/password.rs - add backend/src/config/mod.rs - add backend/src/db/mod.rs - add backend/src/demo/mod.rs - add backend/src/main.rs - add backend/src/models/community.rs - add backend/src/models/mod.rs - add backend/src/models/proposal.rs - add backend/src/models/user.rs - add backend/src/plugins/builtin/comment_notifications.rs - add backend/src/plugins/builtin/conflict_resolution.rs - add backend/src/plugins/builtin/decision_workflows.rs - add backend/src/plugins/builtin/federation.rs - add backend/src/plugins/builtin/governance_analytics.rs - add backend/src/plugins/builtin/mod.rs - add backend/src/plugins/builtin/moderation_ledger.rs - add backend/src/plugins/builtin/proposal_lifecycle.rs - add backend/src/plugins/builtin/public_data_export.rs - add backend/src/plugins/builtin/self_moderation.rs - add backend/src/plugins/builtin/structured_deliberation.rs - add backend/src/plugins/hooks.rs - add backend/src/plugins/manager.rs - add backend/src/plugins/mod.rs - add backend/src/plugins/wasm/host_api.rs - add backend/src/plugins/wasm/mod.rs - add backend/src/plugins/wasm/plugin.rs - add backend/src/plugins/wasm/runtime.rs - add backend/src/voting/mod.rs - add backend/src/voting/quadratic.rs - add backend/src/voting/ranked_choice.rs - add backend/src/voting/schulze.rs - add backend/src/voting/star.rs - add compose/.env.demo.example - add compose/.env.production.example - add compose/demo.yml - add compose/dev.yml - add compose/production.yml - add docs/README.md - add docs/admin/backup.md - add docs/admin/configuration.md - add docs/admin/database.md - add docs/admin/installation.md - add docs/admin/plugins.md - add docs/admin/security.md - add docs/reference/api.md - add docs/reference/glossary.md - add docs/reference/voting-methods.md - add docs/user/communities.md - add docs/user/delegation.md - add docs/user/getting-started.md - add docs/user/settings.md - add docs/user/voting.md - add frontend/.gitignore - add frontend/Dockerfile - add frontend/astro.config.mjs - add frontend/package-lock.json - add frontend/package.json - add frontend/public/favicon.ico - add frontend/public/favicon.svg - add frontend/src/components/AdminNav.astro - add frontend/src/components/ThemeSwitcher.astro - add frontend/src/components/icons/VotingIcons.astro - add frontend/src/components/moderation/LedgerViewer.astro - add frontend/src/components/voting/DelegationGraph.astro - add frontend/src/components/voting/VotingMethodCard.astro - add frontend/src/components/voting/VotingResultsChart.astro - add frontend/src/layouts/Layout.astro - add frontend/src/layouts/PublicLayout.astro - add frontend/src/lib/api.ts - add frontend/src/lib/themes.ts - add frontend/src/pages/about.astro - add frontend/src/pages/admin/approvals.astro - add frontend/src/pages/admin/invitations.astro - add frontend/src/pages/admin/plugins.astro - add frontend/src/pages/admin/roles.astro - add frontend/src/pages/admin/settings.astro - add frontend/src/pages/admin/voting.astro - add frontend/src/pages/communities.astro - add frontend/src/pages/communities/[slug]/index.astro - add frontend/src/pages/communities/[slug]/plugins.astro - add frontend/src/pages/communities/[slug]/proposals/index.astro - add frontend/src/pages/communities/[slug]/proposals/new.astro - add frontend/src/pages/communities/[slug]/settings.astro - add frontend/src/pages/communities/[slug]/voting-config.astro - add frontend/src/pages/communities/new.astro - add frontend/src/pages/dashboard.astro - add frontend/src/pages/delegations.astro - add frontend/src/pages/demo.astro - add frontend/src/pages/docs.astro - add frontend/src/pages/features.astro - add frontend/src/pages/index.astro - add frontend/src/pages/login.astro - add frontend/src/pages/manifesto.astro - add frontend/src/pages/notifications.astro - add frontend/src/pages/proposals.astro - add frontend/src/pages/proposals/[id].astro - add frontend/src/pages/register.astro - add frontend/src/pages/settings.astro - add frontend/src/pages/setup.astro - add frontend/src/pages/users/[username].astro - add frontend/tsconfig.json - add scripts/.dev/state.json - add scripts/demo-reset.ps1 - add scripts/demo-reset.sh - add scripts/dev-start.ps1 - add scripts/dev-start.sh - add scripts/dev-stop.ps1 - add scripts/dev-stop.sh - add scripts/dev-test.ps1 - add scripts/dev.ps1 - add scripts/dev.sh - add scripts/post-reboot-setup.ps1 - add scripts/prepare-production.ps1 Diffstat: - 483 files changed, 61980 insertions(+)
2026-01-27 16:21:58 +00:00
- Real-time transparency: see how delegates vote
- Revoke delegation instantly
- Transitive delegation chains
- Delegation analytics and trust networks
### Modular Plugin System
- WASM-based sandboxed plugins
- Per-community plugin configuration
- Hook-based architecture (actions/filters)
- Built-in and third-party plugins
- Admin policy for signed/unsigned plugins
### Governance Infrastructure
- Multi-community platform support
- Granular admin controls (platform mode, registration, moderation)
- Public moderation ledger (immutable)
- Role-based access (admin, moderator, facilitator, member)
- Anonymous voting with identity separation
## Tech Stack
| Layer | Technology |
|-------|------------|
| **Backend** | Rust (Axum 0.8, Tokio, SQLx) |
| **Frontend** | Astro + TypeScript |
| **Database** | PostgreSQL 16 |
| **Plugins** | WebAssembly (wasmtime) |
| **Containers** | Podman (rootless) |
## Quick Start
### Prerequisites
**Windows:**
- Windows 10/11 with WSL2
- Podman Desktop (WSL2 backend)
- Rust (rustup, MSVC toolchain)
- Node.js LTS
**Linux:**
- Podman + podman-compose
- Rust (rustup)
- Node.js LTS
### Development
```powershell
# 1. Clone and configure
git clone https://invent.kde.org/marcoa/likwid.git
cd likwid
cp backend/.env.example backend/.env
.dev, repo, backend, +4: add 483 files Verified changes: - add .dev/dev-token.txt - add .dev/pids/backend.pid - add .dev/pids/frontend.pid - add .env.example - add .gitignore - add CONTRIBUTING.md - add DEPLOYMENT.md - add README.md - add WORKFLOW.md - add backend/.env.example - add backend/.sqlx/query-00649c07335338a85657781bfe97b299039883e1170687d60047ced9f3271b8f.json - add backend/.sqlx/query-00b25a5d76ada968ebb490cdfa9b30d82de7402bda296872eb4a366bd2942640.json - add backend/.sqlx/query-00c90349026ba6858b28e413cff2e1b71f87d06dea5759fb6159da22a995e341.json - add backend/.sqlx/query-00e2f11aa7f20e01f9a9de158b81fbcd5a33511135ce3e05aea3c8c8846239b3.json - add backend/.sqlx/query-03706c8c7d9db6d3112ccbd27fd026308c5a03a923f53331468cc899eff9a08d.json - add backend/.sqlx/query-03b9920a00f57083543abd69b18965bdb37d21ba503691cd054ed06f6807d7f7.json - add backend/.sqlx/query-0474f023ed456e56e6a744f8a94e4afc361456a4979e1d14378d1f475c1b2192.json - add backend/.sqlx/query-04c1f2a6a596b9cda5a0744b941777916a3aa3c03445ce59a5a3a69f869078de.json - add backend/.sqlx/query-0569967ce647a065b60b93a233bd222d7dc8aef1eeffec8796dae06968faf08d.json - add backend/.sqlx/query-05ab322014e6f15af99d2af3c118f0cf64b06f311b17ff3c7197d949bab2a580.json - add backend/.sqlx/query-05d8db279bba917c2456ca3427876caefc67b9b6a3d9031ab43f998462a75a58.json - add backend/.sqlx/query-06415d7e9b1b54bc96b8c35b6c92649ffe74f1d9047c783810c344c75f3b10af.json - add backend/.sqlx/query-06c276dfa8e0d19cf539d9abdd4699b387c4a8435c11ac1fe7c4a53d5c231ba6.json - add backend/.sqlx/query-075e3c636c51526e7ceab5540cccd87e52939da3a48e4a544fe67457e8de6962.json - add backend/.sqlx/query-098ff8cc94787edf79a98396716cb5296547c407516489b5b873dadfa360f91e.json - add backend/.sqlx/query-09e0a994d85ba6589db1c989f193ef10e081ccc560031a056e80cb19436f5e8e.json - add backend/.sqlx/query-0cec90f8ac9b48f22ca24330afb16c9308998ddd30404d2a1eb38bd8d0fa46be.json - add backend/.sqlx/query-0d3765f6d5135140d623f9dc706b6907686b98158d775978709db26486109d8b.json - add backend/.sqlx/query-0d79d19ab27c1962afc4ef802f386e160c4a555ca59bade20c901d7b8be99d0e.json - add backend/.sqlx/query-0e518900101ca3ba736e18a911a07759368f0481b3c0dcd4702c077cdadb7ef0.json - add backend/.sqlx/query-0ea2a972775b14b5a22edb7b7a81f414993d8153aebd7121acbcbd54257f32bf.json - add backend/.sqlx/query-0ef338c61969938be731e6187b77c4d7454c409079ecc073aa24a10d339b47f1.json - add backend/.sqlx/query-10649f88f5a0055a0aa23cad37d0b51bd24c35ab290c412bad1286c0baaefd56.json - add backend/.sqlx/query-10a632674ed7d086243d8a31abcb4935677106be2937daf876b01434fc07d293.json - add backend/.sqlx/query-117802a0a1de4ec2e5e3e7d2fd557421991b07876c7b42760bbe756b979d0e96.json - add backend/.sqlx/query-132ee5d7ab197b3a1d3bce2740f419e3cc2311e3cf0bbd0dfe821eebb4ca4fe0.json - add backend/.sqlx/query-1414a9b0037bc888daa0b1215e88a78b20c7e2c614760f36307a248be45203ff.json - add backend/.sqlx/query-14514b4a260abf4b93429a3d841bea19693db589ad668279d7361f499fe7e408.json - add backend/.sqlx/query-150c49c9bd09af829b05abd06d6217aec3ed104f6286e2fc6bd741512cd254ff.json - add backend/.sqlx/query-155f20f35f5b4df59e1a53d0aa30f2994b0a6f76fcd1ff443a6bbe13e3d41339.json - add backend/.sqlx/query-1648eb605182a87a4fadd7158f7012dfe8011a56d63ea069a53bfd697bcdd166.json - add backend/.sqlx/query-171bd1d2e58286b428275404fbaaaedab5d2ee9d3c0b76e3182b6fd48493cdc4.json - add backend/.sqlx/query-174c2a9d861710b570536d1350b4e70b13a9290b222eb89ce753a5702de63f0a.json - add backend/.sqlx/query-177d2a77cdaaa75e32bae953e520231ce713d5fb5f65f533660c773417be085a.json - add backend/.sqlx/query-18c0fb05da45a3eea514f660bc4ac4d6aca71442645666a9c08db8f2a564ff6c.json - add backend/.sqlx/query-18f2bb2a5454308a0ca13ad574947eaa83e52ab32ba48687f54cdce41b34a141.json - add backend/.sqlx/query-1ad83f237ca18e09dfac8f654b6befac12576bf30f35f3bf626b7ccf46a4fb94.json - add backend/.sqlx/query-1cf0926848f8f1fc1f62337b344f06d86408f94450fe0ed80a44268657e92c06.json - add backend/.sqlx/query-1dcd2fc713e43bb6e785befc420fe94db65d42df35bd8015c550c2f8666664e7.json - add backend/.sqlx/query-1dedda4e97c32d56c88d29a247f788e5aac67cc9bc59fdd52b40926af3e5a671.json - add backend/.sqlx/query-1efa9b54dff5200841ab35a40e525a8d0da40edca89aa78cd168ae3e854eabc2.json - add backend/.sqlx/query-1fd0e024053913d7598c5cdb19f407cfa7fef149553e18efc9e5149dd77e7f1c.json - add backend/.sqlx/query-20414e126202ce893b8e967c585ac6ee9c6cc869033bbe7bbf959d80dcedf82b.json - add backend/.sqlx/query-21412c1fff5f48e1ca0a5a67c49180efba50cdbc247a467474296f00a4f1f0f2.json - add backend/.sqlx/query-222ef714ee6f0d715f09643cff679f1c9d5132051dea4cf1f809f06470ed9b44.json - add backend/.sqlx/query-2376b5dff203895eb0b78454a323beb8a90d4ea20ca201226d4b228a2b846c4f.json - add backend/.sqlx/query-274cc3e62a3bc6659ae9e652d6ac15076f76a5fb7acad44f5e853678cfa2abf3.json - add backend/.sqlx/query-27723721585f30329494e2c80e4851b65cd980780e4b756019f73df0f9d28061.json - add backend/.sqlx/query-28654edaba50887bd4c7f698e538ed9ec70543b1ba6d0ecc5b675a1040148b6a.json - add backend/.sqlx/query-2a13dcd10626c05bfed533ba131e46f2ba7c132c9e5d58afe30ba11179096bce.json - add backend/.sqlx/query-2a288385b0b4f402803e22171965bedeeb6e40308d09f4a0d4f67258b11f7cd2.json - add backend/.sqlx/query-2a7e168921469392cdde35401ab602fdb281f995ad75050af27a4130c311a920.json - add backend/.sqlx/query-2b38c2a93dda00a2ccd0ffe3d2cd83b9cf41d444b6f09b211a57dd6689a9e27e.json - add backend/.sqlx/query-2c9bb8a5dca54ef476b2908dfad34371f6f34e4a8500f855d01209d32840f683.json - add backend/.sqlx/query-2ca4dcd48f294e84793ad46b960657a7d30cf790418baf4feab371fb45687627.json - add backend/.sqlx/query-2cb27026dc438da39c4132e9679d8312ed4909560135b5660c82e06ed61e6436.json - add backend/.sqlx/query-2d6f151a2ed11e1a6efecfe1c1cd0242e3e28942cfbae4db71b4d9d709f96522.json - add backend/.sqlx/query-2f7f1f0d1960020529d167240c56abc5bcc6fcd5615890279d2bafcde467fe61.json - add backend/.sqlx/query-2f80cf2d27e9af290578740b2752a6a0d8c41e62aab523e16cc8cf123e59166f.json - add backend/.sqlx/query-31639da003249b784d3603126cb36a1ea592bd819b8f43d9cbd192d7d405c44d.json - add backend/.sqlx/query-3167dfbfa487a695ad0953ed59b206fe16833cfe890fdae3fd74d6fe2d11ced5.json - add backend/.sqlx/query-3205e4cb752317923752ee9ace04a93ada7aa8cbfc97a87f9ddf6376dc102146.json - add backend/.sqlx/query-3271a11a6d1ad3cc05deda6d3e33bd350180c0b20da49b88c5bc04d5f06eb927.json - add backend/.sqlx/query-32e740982952a1d3756117f496bcff626f7bcb438a50fa8eef80e013a84e8048.json - add backend/.sqlx/query-3316c52a6ddc9891f4482e6f5df622147b1be87d0723bf709d6d7def94eb1a0c.json - add backend/.sqlx/query-33281e190171ace099ef3209d49ac42b6527824947520336d7d11594ab56b265.json - add backend/.sqlx/query-34ac1a3b360d0e99c80d59aad7497794803b0ca05cb498e7715344bc9d512084.json - add backend/.sqlx/query-35b2d2fb4f7db1ce97557c01de71c96e64862e3955e1e2d5996581eb4b871f3d.json - add backend/.sqlx/query-3647ec42782a77237f075f172b4d435ac8d6325e60696018386ef1509e499a6d.json - add backend/.sqlx/query-39926d0308364c2a13c987adbc8b364253e9d8d350d69a1e1d3efd1c2e424d81.json - add backend/.sqlx/query-3a395c6e9a23a87fbfa1b3d7a06fbe907b32e3cfb6af327cec1533b7762bd4cd.json - add backend/.sqlx/query-3a8154bdd76daa157200feea1cce96d67bdb7b7c824088ca625105e96495938f.json - add backend/.sqlx/query-3b034411e6338ddaeae97589f0d0ab13cd674f852ad61b643a2e593d252767f1.json - add backend/.sqlx/query-3c118e418b94a2d609cde609b53fbbb1a0055fe46397599f7c5eade17b0a5360.json - add backend/.sqlx/query-3c323153097726bf967b733fc7cb40173a1c64a4b7535a904445e5d02dbe2f0f.json - add backend/.sqlx/query-3c47d27c939cb21fbcc621825d1ef59d5284c3b6db07e2b11d772fefbcf1650b.json - add backend/.sqlx/query-3c769ff42e6b6e2df033fa05cf6d8ae1e9fba6320943f65c95613f56a8ea2a13.json - add backend/.sqlx/query-3d523a0728ea6e9df275520675e3caab1963c61d5d6c3ad468cc51568d4bb5f8.json - add backend/.sqlx/query-3d9153f242fa24637d71a4b4f0a76edee15892248acb6b281ffdbab11a4bff0f.json - add backend/.sqlx/query-3e0e0fe2c4e51b68025965560101643e7e035b782b1cd0d110803664c5831fe3.json - add backend/.sqlx/query-3e7754fe4fe21c7fc50435ad222ed68617f8e8c4f2a21b202ee95d6f76ae0d32.json - add backend/.sqlx/query-403544e4819bc7bcc4ac51c997fb9ec74c3b3fa2c6f2b170ab5b8c8c1d9c65d4.json - add backend/.sqlx/query-41273682b6b15534294e7f90907c7a516cb658e276a50b44f72a2b739ee9e04b.json - add backend/.sqlx/query-42e0fab065d541e407129d44f86f1d1d46387494b992c81f7a334e72c42c98ca.json - add backend/.sqlx/query-43a864f79078c6891186f1d20600983ee080a7033137c0d715880cf20fc7776a.json - add backend/.sqlx/query-4619c7159d4bec14be35a308b0a867e3d5b0687a46a456adf6e8dcd1582d3849.json - add backend/.sqlx/query-47ea00355af927b41b9c39e55791042049a4bea2d1fab669b4ef6fee3f7a3497.json - add backend/.sqlx/query-47ea0156899876339e02f4769e666c24d5d0fee1f18869d7adcb4aeb007076c8.json - add backend/.sqlx/query-484e7ea64028000ccadd135f9806fd190f860d8ac1cd1c56828fa5be279f57c9.json - add backend/.sqlx/query-4a92221917041b95e9a27e511ca70b404313e7dba1faf19bb1eb1347b2208587.json - add backend/.sqlx/query-4aa9e85bb2280a67f94914b3de749b262b16223d467464079ce36509b857f306.json - add backend/.sqlx/query-4cc6b7b3343bf2afda642707ede4a1e1df7904a137b6b3c34bfdda71088516b7.json - add backend/.sqlx/query-4ce35bd4ce5c2dde738b87eb3aa45c21926d67e156fda5cbdcaa5e1db2ebe785.json - add backend/.sqlx/query-4e324f0141e12a57df99f729cccf6133014b6669bda8d3b75ca07bb2a47567b2.json - add backend/.sqlx/query-4ed6eff19ec25d1e627ff27d656934c56ac363260ba540fc0d225b7ce7da48d3.json - add backend/.sqlx/query-4f6d0f4d874780e2729f6e6f2e50ba35dddf8cfaa1de0f4213e2ca70aad2d3cc.json - add backend/.sqlx/query-4fbe1a8019228d78f6b2361fd7f363b8f4ee2e63104c7a824e289d13b4814e51.json - add backend/.sqlx/query-502a8e2b5a59105bcc6d1d668d47b04d7978dde7265c76ae37915f8ae8842033.json - add backend/.sqlx/query-50c17bb1a4d6b249e39d8d13c2ac7d346bfc2476e7c983223e9b4366b2f08abd.json - add backend/.sqlx/query-522c64c31796d1d85b4ce6a6cbac86d0b440c2eb54d14fd700fd005848e4b146.json - add backend/.sqlx/query-5303a6a8c505e05aca3e158cf4aae36c2ad5a98374032d3eb604363f777def7e.json - add backend/.sqlx/query-536866ecf3349598d172c0011a0970a0f7926658d166a4940fca89cabaf3d514.json - add backend/.sqlx/query-53e54a4fe0344eb04f52ac7d737663b824bbfc3c65e3cebd23ff3dfa5a89fbe8.json - add backend/.sqlx/query-54262c9a793fdbf907f81f6974d4fa57bbd4140b6bd9fc84b27f4abcdc9cefc4.json - add backend/.sqlx/query-563efcefcb6880c075c16d278b11631166fc30678c161bdff1a68b8f491bf335.json - add backend/.sqlx/query-56a3e0906a82b4c7df2d066194300d7c5c704562990cf7d835541083884d192e.json - add backend/.sqlx/query-56be8018a90784cb6868af7bd4a7dff4e1e8ddf09e6d08b97c2e0cc3a6dec0e5.json - add backend/.sqlx/query-598da730fbfa2531c8882c1456f8e1a13c6a99c177109e6a88b44e66e923e8f0.json - add backend/.sqlx/query-599b54e38d5be790010a42f8db1cdd210506243f533fe02b90974c51d878ef52.json - add backend/.sqlx/query-5ae8c8c64a800b7735ab381b7ff73988ec35b8839beb5f108400e1e85295aaa8.json - add backend/.sqlx/query-5b3990eadd408f017c3f97f9eec54ebf9d4b17e8f52b7be7e8d4f7a4d4303045.json - add backend/.sqlx/query-5bf7ea39ce22f5466a08746b98091b897f35a72561e668a1643d63c9427a96ca.json - add backend/.sqlx/query-5c54f1d4567d6c7baf6969687c7f19f71dfdcacebdcbcb5284b0243cc12895e2.json - add backend/.sqlx/query-5d369c593b73b9c9835ef79206367824f5cc656cb8d93d3a4af3262c73cf88ad.json - add backend/.sqlx/query-5ea4e4b2dafd654c306e4507faaa1d7112461cedba992f8d2ddc923c42cd7b6b.json - add backend/.sqlx/query-5fd1b28bc068dc4592e1c6a58bd348f4d9feae00d29ea677ae643593dda852a4.json - add backend/.sqlx/query-5ff99236c732a045c53789220aa54f9f494aa49b1b55b207ba777e9cbc2e8ddd.json - add backend/.sqlx/query-6098a745505990aea4405d2ab48fd8e4839518f714261bc8fc1cc01fe298ffd1.json - add backend/.sqlx/query-6252da4b5dd1636fb1aa75dc10bd8ede8f9b12fdb80b0edaa999c321993233ae.json - add backend/.sqlx/query-633a36b68dd39b0e443b169ac7bcfeebbd2e8b76a09791f8f3bd5190bdc569e3.json - add backend/.sqlx/query-63426c52f6016b030b23a562fe2aa08793ecb5e3a3a24f82bc7666cd8cf5cd68.json - add backend/.sqlx/query-641be20c2834a02a49f6c658663d73fb5779eb14e36cf13a9ecbfa61440c5332.json - add backend/.sqlx/query-65a8781dff58442082a16c731be5acfdb3c61ad599b2031433be6c554821df05.json - add backend/.sqlx/query-660253bf0225d065ae50eab8625e1f9662779997acef345182ce23e96efde2c3.json - add backend/.sqlx/query-68f175d74997d4cfc1ce98756bb32d8f7d3466d5ea71f137ac101ebd07e0073e.json - add backend/.sqlx/query-6a6bec68b35012df41e6bb99b5afc11a90e3404fa29698fb04fa3ad18ad2025b.json - add backend/.sqlx/query-6b3fef1781daf9672ad11cbc1e2d84e536ff7ee9b3cef4d5f517a2ed27c586c4.json - add backend/.sqlx/query-6d1c9e2cb972dbc9df0a72034cf0390e72bb8baecd2b09d8ae305ab3844439a0.json - add backend/.sqlx/query-6dc1dc04d2084400be320aa33507746a38814325f3525dd0f38e05c6a64f1f7a.json - add backend/.sqlx/query-6e44a5f3076d976fdad560f5c4ccb1802df408602aecb3025b851969ff480708.json - add backend/.sqlx/query-6e60bcb9d941716127a4ed3cead4b9a375deb0e4238137d3b095c43bae316702.json - add backend/.sqlx/query-6e71eb3247a4b255a2187731a9d54c4fe2aac97e458c1247b8b89364ff590b9f.json - add backend/.sqlx/query-6f89b8deda1078080ad8cfc2db507325e19bb0ffd02f1aa4f933045633c4914a.json - add backend/.sqlx/query-6f92eb099a3182a7f862df97a6f9cf340bef74f512099000e03450f69b796ef1.json - add backend/.sqlx/query-706d61211ccde2d45e1fc60480b37719f90ce364bf3a118743bfe82eca3783ae.json - add backend/.sqlx/query-7148baad9c5cba418a5d7818761e3ac52fe166fbfa0bfc5f6bbe749fa0a6889e.json - add backend/.sqlx/query-72132fbc4c6da619b3055bd473b5928c8a1ff7886a613d9d6be3f2ab2a7a7f4d.json - add backend/.sqlx/query-733ab1cda0fdc0cecf46928410fefb3b4e96eb2390dfdb93b95ce4c13f0d9e59.json - add backend/.sqlx/query-733faae97d10baca47579a4a56ce281a6f36a60c73739f9ad692fc8b3825964c.json - add backend/.sqlx/query-73720cd6ae56d7e210c173ca90f6c982f68150b76dc2d4cd578965c62ddb11be.json - add backend/.sqlx/query-73e84e079e38064cbf573149243395913f6a14bbaceedeff7bf41fdcaf63f01c.json - add backend/.sqlx/query-740f728d9932a5da47b6b9454ed77304f5e93dc836dc21b3994eb4e7c8bc8219.json - add backend/.sqlx/query-74fdd241eb54952015786937b057d437b60267d664cd4b57a9c394486f6001b2.json - add backend/.sqlx/query-75a8631bc9e4f89b9e1b6d1899711e148228dfa0a6760fbba7ddf2711fb16e6e.json - add backend/.sqlx/query-7635e7f06daac3a495a2439bc893e345effd96be4a8760d4ca11538334d875c4.json - add backend/.sqlx/query-768935f0dff24d092ebaff3512026b9e6a0344c9d10ee0cf852d299c80bba6c8.json - add backend/.sqlx/query-778a5cc33f4b205914711921c98653f826d2adc8175c9297efb485caf4c3d96d.json - add backend/.sqlx/query-78418e5f9824bceb1937348a77d50ced7a3e2f21ec72940fe9a70e77cb3923a0.json - add backend/.sqlx/query-7a3f67d8cafc3611f94a8cb2406ab4c0e90a3619f7b9e4b6ad67fe11a46b91d9.json - add backend/.sqlx/query-7b06af69ee03943c64083e5bc94cb6dbd6f5017ad44546dff7582c31345edc51.json - add backend/.sqlx/query-7c8ec9e26f553fc211b5bd819e31722a054bb9414950d16a8ebd451dc18d4f3b.json - add backend/.sqlx/query-7cc78deb0836ac802b017122ac50fe71bbe8af86c7aa5c8b90b10d1672a9d31a.json - add backend/.sqlx/query-7cf8e3b8f83a16c49ce2f7e66673d69e773f71abded50c5bb29884f9dff628bd.json - add backend/.sqlx/query-7f0faa7ca48a6a56274f7d05c1fb4ad2d8dd384fdb7bc178220f07481236c8b2.json - add backend/.sqlx/query-7f497e0097bf329922d709282092b588975f7c2d8c508fbe49ab3d9d4c99c396.json - add backend/.sqlx/query-7fdca4a1f7c40789d44de54a739eca0bb898c9fbf3e89784e2f784630c56dba5.json - add backend/.sqlx/query-82aa3e3878c98cbdcc5bbefd11acd7b19521314a38ab9085516eb81e39354d2a.json - add backend/.sqlx/query-860d54897714862bf6312fc00b440d414b9083efd695f04c31f26510d0254208.json - add backend/.sqlx/query-865245efea368b2c0b937356889a07b9a04954165e700f4c7c35687c13f2be27.json - add backend/.sqlx/query-86645359fb0da9b7441326acb5ac4d8be2c0eda7f3ef0d97d0b4d661aa0d62eb.json - add backend/.sqlx/query-87426464ee1ed01c4e1940b86ed461af98bcfe50c40df7c869c1c03395a79e07.json - add backend/.sqlx/query-87f52f0262716fe497a6e8b42722cc11f88dacaa0bca746ebd5b474a734d9bb3.json - add backend/.sqlx/query-88ca29971ada21e0ff2b92315e39c7aefbd81215862c5c7149e2dbca93c5d1fe.json - add backend/.sqlx/query-8932b373514ebf8056f5934c5b02dd675f6fe1b1317688676d5c32e1f01065a7.json - add backend/.sqlx/query-89804ccea9075b137f7c7e47917f3477f770dfd7550ab97060b981849618a201.json - add backend/.sqlx/query-8b2ab82dd4fe83655e074b1edc9e80e2ca276a327e044ad5578fb15eba3ac3ee.json - add backend/.sqlx/query-8d3042b1d0415262c8729e52a4d8933bf52b484798b7e3530219b0117a60f5d1.json - add backend/.sqlx/query-8d94635535054f82b5185372543c7347a8fe98d8402d99130a29520eab53bc73.json - add backend/.sqlx/query-8db75a6ddf63baa3ee89defbedaefb53f61892395025de17dce21451f81ba8b1.json - add backend/.sqlx/query-8e856e6e4081d2ca26e5e6097848fab90e055cbbc318956a3869750a0855fe3f.json - add backend/.sqlx/query-917a021a7c54c19e1257d558ec4e40c0001c975d00af6255ab2707d3ebb045ac.json - add backend/.sqlx/query-91b64087ce497ce4426c00ccdd8cbfde639f18d24df8362c11a211a9acf2fc92.json - add backend/.sqlx/query-92461256ad7b62764b2bd75674ccbfc11df6648d6d856e3e68fc80801457c555.json - add backend/.sqlx/query-93883e88af152aca23a39dadd95669f025294cb532a892e58891a0e756e9c784.json - add backend/.sqlx/query-93c4fe897770127740a52c43b14f2007bfa6faf8743dc07611ac22e9140e89f6.json - add backend/.sqlx/query-942753e2a11713b9d4b46a52f4a6426629f95c7a91598f351741f9bc100e243b.json - add backend/.sqlx/query-94499cff482a1533a32723bc9924bf62af0a9ec7cfe338b1c97336e6a1ea5dee.json - add backend/.sqlx/query-94b98a4fccec6a48b27cdf8d3ea8740a81baac9e53a5c458acb7f9692893f069.json - add backend/.sqlx/query-957b131c5ae23e306fe4634db068c611122ae61057c805c82413fb69ed015c58.json - add backend/.sqlx/query-95f70efea97448688250d1647387c7d3dc1e4eec0dc2e6ba88f09e9746132d09.json - add backend/.sqlx/query-965e42468c325a893d39c2eeefbea254b37e04f0d067d88988cf4ece97b0e818.json - add backend/.sqlx/query-9888b553ae9f5cd32aa1eb6cfee1abecc08787a0f7fd7526956d30d62c1801ff.json - add backend/.sqlx/query-9b9965ea0437e0f8e3467ba2b237d6a84c74bbc03c389117d8f3f6e71273b587.json - add backend/.sqlx/query-9beff9c1f4daa7453bd6f13f3692b320f1f82ca87bed75f8a85e87882ac4bfc1.json - add backend/.sqlx/query-9c3b9cd35a4c58e67a15ad0372c18b6c5fc0a969b9aec88508cea8388c2fbe55.json - add backend/.sqlx/query-9c4016766b52e727103f5d09c7572fa90d793c5b391cfe99809d2d8825b9c9d6.json - add backend/.sqlx/query-9e78a21e3bae2928e4ce353423030c59deb97bdbf242e8d4b8e2af11d65596f1.json - add backend/.sqlx/query-9f011d836f16bc90ba585c43424fbb960ee5cadd5f50088e252655f5f79612fe.json - add backend/.sqlx/query-a1df48d19975013b68c2e57f90a4c0691d7f31a83ffc92628d918959daba3e36.json - add backend/.sqlx/query-a2d2cf6227a9e713d29610e2c0f0e94146f1798257a9dd68325487329eb6e24c.json - add backend/.sqlx/query-a57268c9e448ddc42290fce152a7d81d332eccd8c90b962b7ef0cdaba6d8a3b0.json - add backend/.sqlx/query-a65fb2ba103206d6ad4c761ec1fb62638fc50474679c751183013efc7cb0edbd.json - add backend/.sqlx/query-a8414c7b067366f56d56b3a465b248209e3800c25fcea8dadc2f63fdca72e82f.json - add backend/.sqlx/query-a9d4611cf695893da6a962355b974077340a56497e7bc9100f288cb1195267ad.json - add backend/.sqlx/query-aa35c7c6645c9a7637f083650a2d9c898e15c49cc49a7df001fa6861ab47995e.json - add backend/.sqlx/query-aa69a761eb48721491a2275dc2040ac0d58ce45701dba74214e2af3685db59f1.json - add backend/.sqlx/query-aadb91fe11c7e3106062a2055b0196ca12ed20e40513bc14f11f4a8bd5623a3f.json - add backend/.sqlx/query-ad438c18ca77e186c4e33a8079374181a47fbbec6a5f0ae5fe2144e342910d40.json - add backend/.sqlx/query-ad82dc4820ab69556cba650ae422084d57dec2f89ae99c977be1b36261c8d0b4.json - add backend/.sqlx/query-aeee6c4f9115efe386351097cb8c3512550eeecac893289d40b8e01c04f9f167.json - add backend/.sqlx/query-aefd6f17ea2becd41283f5b07fca49481cbe221437fed57283b0f52c03bf85c7.json - add backend/.sqlx/query-b038e92708c16243759184994795f864db1cabbdf8f0d93128d41850888e531c.json - add backend/.sqlx/query-b09e737c4925f4ebb8fc57919c50542f125f4fc7d2ba49c3cd368682aba9a8b6.json - add backend/.sqlx/query-b3c77106c16c2b75c51a36e6e56f9cff657fce6f0472d905af97ffe5aba8d3c7.json - add backend/.sqlx/query-b42cab53e091470ad8237271def4b42146a75d30b77aecb4c1ae7ab7a7cc32d3.json - add backend/.sqlx/query-b54b3e3f031e9a09d1252bcc9e27ad26959157f77064a4e4d30ed73c3a01e293.json - add backend/.sqlx/query-b5bada0e6df57aa0243e0234b72c3b39cf6f1ee0ef69a4e232ae06f70b1b1c0c.json - add backend/.sqlx/query-b5d49d78ba8674954210df5728d43dca77d453a7aae14fb8b0e57e0f7a44e03a.json - add backend/.sqlx/query-b6bdb63000935a47301993972237254f9b11915a860d6e84ad639f579bb6ac62.json - add backend/.sqlx/query-b6d2983946f27ac29c85e72685d389d29c8ce1b3c9e3202a272f12f2e6dfbf06.json - add backend/.sqlx/query-b7fbd0f031db0653546e51da4237160abe2909f3dcf622f9ab1b91537c9169fa.json - add backend/.sqlx/query-b8ef84a72cfa6cea3a1b1d8cb5916d7e3290de0a05143432151308f32312f94a.json - add backend/.sqlx/query-b8f80a210fcb0474a124ad93e43a163431366c50dce137863b283121ce70604b.json - add backend/.sqlx/query-b94c2ca7181b28660e9a9b256e6ebe98b6cf0c450969b6b953434b8d2775ee4b.json - add backend/.sqlx/query-b9586185e84644f0bd936d7bf5e9bec6ebeaba77ab354d0b7096d9334656497f.json - add backend/.sqlx/query-b9e59dc4e2e37b0c59ebbe794b03e64647af6b6025b3c74c73324b5735e32802.json - add backend/.sqlx/query-bb0cf75500c2358d78ae8028e5d587b9e7492ce6082340ec84f7706d668beb45.json - add backend/.sqlx/query-bbcdcddcd2f31a7e308016f325e9914a10c18cbc05d4b724bb87533cd3851fea.json - add backend/.sqlx/query-bd76cc54f3ccd774a62f6d2b5ab27e5432bc2202b3e8f030a24a1733c96867af.json - add backend/.sqlx/query-bfdd9a0dcf20053b8d10c946955530253502e9c624b6586b358660df9d1ec8cc.json - add backend/.sqlx/query-c2a2d3c0016e6d4df3fd04f9e24c5c4fde0acbe42a195eaf74cf5299dacb846c.json - add backend/.sqlx/query-c2ca1cf0be6dc893f3f6938953436c69408bd8ca37d45398a1faf450684aec08.json - add backend/.sqlx/query-c31ebddef69f304403bfb2d816d42bd9731482ceec258e0de1bb61d5ba20d413.json - add backend/.sqlx/query-c33217c0ec06f08e9b89ac876cb22bf002aadb6cd6391af968d6a08725792228.json - add backend/.sqlx/query-c35608b0d7569f739dda24b3da59b7b500ff26f5e79433b3f7e3625d91177d26.json - add backend/.sqlx/query-c42152b0a4b91fd58afbdb06da1a9b7b73f414bdd6607343df01dc0fa3d4b5fd.json - add backend/.sqlx/query-c4d21db839f7e0b45fc1fc1291840e78d1e92440e003c5ad3cb45c3d9f5042fc.json - add backend/.sqlx/query-c5f66036fe85ebb4597f564dcf40b7547b409195b65ea3130454f96265c9bd82.json - add backend/.sqlx/query-c64fd6da083e54e1719580125eb72a544081ed4c91c02295c6f1d799fb3b4f5a.json - add backend/.sqlx/query-c7525a8aa940491736dd45cd876dab2e4cd0d05f0104e2d2b08980bcee557212.json - add backend/.sqlx/query-cbb4acc6eb730ec886b1af23e6389a0e68d7a672d8643101f6680e42df944711.json - add backend/.sqlx/query-cc77b8a12eb03938d34d391c8b1397dd2fe99748315a95299563c3a2f5c989bf.json - add backend/.sqlx/query-cc97b910b8afcfd348d5fe69f7e75862ddd7e31680e46a61170a467b64cdf547.json - add backend/.sqlx/query-cca54c0742b36cc4b7c3c2bf0bb3d987d16771d42334f11c4e9d7598651d21e6.json - add backend/.sqlx/query-ccf5a42b62f74eeb3d424fc4573ec6b01b1ed46b56518c0ccc5121e524d2f3c5.json - add backend/.sqlx/query-cd002400a4b0c6b071bb949d0c716ab2691caa661ccc407af85da42599e1101b.json - add backend/.sqlx/query-cdb2b8bb16c0e2e04fa6df8e22e060adfc81c38cf67121ada9f6c721a9398588.json - add backend/.sqlx/query-cde649035ebc12f0bbce749e9a5347b8073659b42c9e65a4ac74400b17dc38f7.json - add backend/.sqlx/query-ce7f978d16864a568b49c47eaa68edcaafb0d293f6d08f5a945bd456c91fd417.json - add backend/.sqlx/query-cf9a5a22ac9e4ab44a56d2aa4e110a63ba212d392a353850a344f69a0a13811f.json - add backend/.sqlx/query-d00ba1f23877ca15a8ac8b09d55fc86a37d40c9a0ea63afdbfa2f725fa39d255.json - add backend/.sqlx/query-d09299b064ef5fefd5f5ac8a7f1ae1a549cfffd9081fa72b4427fa4ea21cbcb5.json - add backend/.sqlx/query-d0c599e01228531f2ab7f571658c71563fd1ad88cfa5e13f1adfaad3f00eaa75.json - add backend/.sqlx/query-d2de711bc12629a1141d11db45496d22c0ff03555c983205b512a318290948a0.json - add backend/.sqlx/query-d32e84b6ce21f4b4553aead45ef53dce4362399a75c39f7203cbd770e997abdf.json - add backend/.sqlx/query-d48c21b6a8d67db4b37ee43d6273e3d41d1cf2a2b89fe434edd009a29e69b94c.json - add backend/.sqlx/query-d705da303937bc5e1a2e929b9cf3f93e4e24b55e1dd14c4a83bca29f0d3a0341.json - add backend/.sqlx/query-d83b8a3f417cd420d44aa3f7f8c462b28c2f7f2a4804ba00bb51a63759a7f8b2.json - add backend/.sqlx/query-d928c488809305d28f877c359c93614550307868213d312ea8ae24bcbb927db5.json - add backend/.sqlx/query-da70570e2492dcc5b21ff51069db1a366ff94803b0cfa5821c497b6ba06ed2fc.json - add backend/.sqlx/query-db38e6387cbf510bf0c13ecee0f42afc7c100aebd0b043fd23424cfe61110e3a.json - add backend/.sqlx/query-dbf52d447a84d9f1a7f36f3c57c05b1c547bd8515706b2be877762edd1aff254.json - add backend/.sqlx/query-dc64e1d25d9ced3a49130cee99f6edc3f70a4917910cf3b76faefc24ac32159d.json - add backend/.sqlx/query-dccbd661ee975b7e9b74d175c452fbd3ba2c847c24c6f401fd18736aeaed3ad3.json - add backend/.sqlx/query-dd458a825f2295d6650263f39ed6f22d1da12443b80bd53a4b6c61e870b4cf07.json - add backend/.sqlx/query-dd4e31b27b005a68baeacf0ada1645ebe2277a8c437d6846db1776b53611aa2e.json - add backend/.sqlx/query-dd99e48b1572e25db38f03da95984fda1072913b29bb6b3753a0d351583dfff6.json - add backend/.sqlx/query-de3230de507ca1e11d2ca40bef8a5b8470628ddbaa454af4f49f6fe6953f9014.json - add backend/.sqlx/query-de6d39c5473742a38ff437b95613ae32a366f4339c8165f58d192151024b6caf.json - add backend/.sqlx/query-dee9b81f66d0a8a8ec6543e2bda43b68604377280236f83eec9bb710c4a8b957.json - add backend/.sqlx/query-df3c9235defd412e75b967ec4c1d052404a6289ec89ebc3cf7524f0a65279258.json - add backend/.sqlx/query-df917df33b1f18f0545d866fdcdbff3c189c549e3e92966b808166ebd65a758e.json - add backend/.sqlx/query-e078bd7e0e60f80321173ea5383e3c89f5b07036b7f6c3be6a66e25dd64d8790.json - add backend/.sqlx/query-e15d8685afde9f89919d3643dd1df3d4718d826147e63be4c8d4e8708a15e481.json - add backend/.sqlx/query-e1a40a1cc7c618d815ebfaec6751ab19146ab76519020ce783bc916e64155a14.json - add backend/.sqlx/query-e25c2c4e795fd113fbf9631b4fc107d217f2dd0a8eacd812067defe8d3529d54.json - add backend/.sqlx/query-e2a9b8f8fb63c4e8737c0f2925ffeff025be37184ede64b328e0ecd68680dc08.json - add backend/.sqlx/query-e3e45d1876b1a38771e1bb32eda68462ba27bd0beca41a602ebf60b86b863680.json - add backend/.sqlx/query-e53f34921983218ba03123ea07403917a62cb0fc66039be84387df090606eefc.json - add backend/.sqlx/query-e5ada1e1857eec30e7c2a55c19b0ddbf2c90fc7f0019f211549f2abfc4fdf487.json - add backend/.sqlx/query-e70b6cc45322a8ba1c3e9fef0c8c3185bbeacbcbf16810c303c029ea108802bf.json - add backend/.sqlx/query-e983f01536d1ed4b6b40d640877d9fa445aa04972cfe427116cbdf104e6cb32f.json - add backend/.sqlx/query-ea775b89fed8c652e57e21cd202dbb9c4d13dedc7d0890dd1d13dfa7635f02b5.json - add backend/.sqlx/query-ea7e6d82c94b562d5e75720c8c1af6ad707ef717406330be0c4255363f9c783d.json - add backend/.sqlx/query-eab47df4e85e9dfeb87b480dc092b09924d6239ba71b8715be5c56137ebca953.json - add backend/.sqlx/query-ec156d9abd97de863483a1d8fe3e4ff63a63b39f883d320175c88b0bcaad3f70.json - add backend/.sqlx/query-ec34b2dc8930568c2e135aa13d08783d7b62dd524eef99f00b8bebd55f0196bd.json - add backend/.sqlx/query-ed05dcba73fd4426c2de9c8828d943e45eafa31dbb155c4a50b2471308dd3097.json - add backend/.sqlx/query-ef47b9016770614a3d12c6bba1c99b60046a3bff47ca5e18759786362446e1be.json - add backend/.sqlx/query-f10d14593a49a3f14536b6ec7a0283b16f57a731f18f1ea00a25b76aeda238cb.json - add backend/.sqlx/query-f1de9db0b037bd44be7aa37b308ce60a0c10888951f385b61fe237e09b924976.json - add backend/.sqlx/query-f45f95ec5c791d1bd87635f304f62caf19b12dc178c570828a8bb8a5579ea17a.json - add backend/.sqlx/query-f5476f8976f2c0ab202fe52ea148d95570f6e3901f6ef0637e58701eb42d0120.json - add backend/.sqlx/query-f5d1ab63c42cd0e45cfab56f5f4efd821816137eacf138aa5191dbe47c5bd444.json - add backend/.sqlx/query-f63fca5359b5dc0141d7de8e8f4c3ec1e7b446d48ab6d175c8b876823bd042a9.json - add backend/.sqlx/query-f7bb4e7ba6e7a6abb1549bc112176ca7afdb25923aa3aae3775a65cbd17afeaa.json - add backend/.sqlx/query-f91db2c61f14281c7dfd6f6aefdffc97e080dd9acc5d9c5edd8a865623b44628.json - add backend/.sqlx/query-f9ff82cdb66393d4fdef38cf4e64b93b9f8b062f06cd3f7bde3b0873ecbfc835.json - add backend/.sqlx/query-facfb30591b5abfa384d897e0de7c5d0f0e9f80cf8c6e57a1c5298ad1a990351.json - add backend/.sqlx/query-faf3d877c077b20211fe2cbf92c54322660147ab31fe5036e3e722725c2e3e44.json - add backend/.sqlx/query-fb2e03f8ccf37e8463ee7f14e74fc20fdb46337da0f561b4fa0eb815fb0486b4.json - add backend/.sqlx/query-fcdb75aee759125fdb4169e6c9dd2b47b4f264c512bd62db700083cf479d6d3f.json - add backend/.sqlx/query-fdfe11a59054df6111a7833043bf8cfb772c5897d1aa9c25ccad0579945e74f2.json - add backend/.sqlx/query-fe3dbfffdaca1dcf828be7cc949f7f74b05f694dc8ef3ee37a3dac8f695ec62d.json - add backend/.sqlx/query-fe5ef9f6c10dfb61e236bc955d377dd8b0893e052ee073b55fbb1b8f745a9cd5.json - add backend/Cargo.toml - add backend/Dockerfile - add backend/migrations/20260125180102_initial_schema.sql - add backend/migrations/20260125181224_voting_system.sql - add backend/migrations/20260125183611_comments.sql - add backend/migrations/20260125204900_notifications.sql - add backend/migrations/20260125205600_advanced_voting.sql - add backend/migrations/20260125211000_public_events.sql - add backend/migrations/20260126012000_plugin_packages.sql - add backend/migrations/20260126120000_instance_settings.sql - add backend/migrations/20260126121000_admin_columns.sql - add backend/migrations/20260126130000_deliberation_system.sql - add backend/migrations/20260126140000_advanced_voting.sql - add backend/migrations/20260126150000_liquid_delegation.sql - add backend/migrations/20260126160000_plugin_registry.sql - add backend/migrations/20260126170000_gitlab_integration.sql - add backend/migrations/20260126180000_roles_permissions.sql - add backend/migrations/20260126190000_voting_plugins.sql - add backend/migrations/20260126200000_invitations.sql - add backend/migrations/20260126210000_plugin_kv_store.sql - add backend/migrations/20260126220000_approval_workflows.sql - add backend/migrations/20260126230000_vote_reproducibility.sql - add backend/migrations/20260126240000_topic_voting_methods.sql - add backend/migrations/20260126250000_moderation_ledger.sql - add backend/migrations/20260126260000_decision_workflows.sql - add backend/migrations/20260126270000_self_moderation_rules.sql - add backend/migrations/20260126280000_proposal_lifecycle.sql - add backend/migrations/20260126290000_governance_analytics.sql - add backend/migrations/20260126300000_conflict_resolution.sql - add backend/migrations/20260126310000_structured_deliberation.sql - add backend/migrations/20260126320000_public_data_export.sql - add backend/migrations/20260126330000_federation.sql - add backend/migrations/20260127105000_wasm_plugin_runtime.sql - add backend/migrations/20260127150000_demo_seed_data.sql - add backend/src/api/analytics.rs - add backend/src/api/approvals.rs - add backend/src/api/auth.rs - add backend/src/api/comments.rs - add backend/src/api/communities.rs - add backend/src/api/conflicts.rs - add backend/src/api/delegation.rs - add backend/src/api/deliberation.rs - add backend/src/api/demo.rs - add backend/src/api/exports.rs - add backend/src/api/federation.rs - add backend/src/api/gitlab.rs - add backend/src/api/health.rs - add backend/src/api/invitations.rs - add backend/src/api/lifecycle.rs - add backend/src/api/mod.rs - add backend/src/api/moderation.rs - add backend/src/api/moderation_ledger.rs - add backend/src/api/notifications.rs - add backend/src/api/permissions.rs - add backend/src/api/plugins.rs - add backend/src/api/proposals.rs - add backend/src/api/roles.rs - add backend/src/api/self_moderation.rs - add backend/src/api/settings.rs - add backend/src/api/users.rs - add backend/src/api/voting_config.rs - add backend/src/api/workflows.rs - add backend/src/auth/jwt.rs - add backend/src/auth/middleware.rs - add backend/src/auth/mod.rs - add backend/src/auth/password.rs - add backend/src/config/mod.rs - add backend/src/db/mod.rs - add backend/src/demo/mod.rs - add backend/src/main.rs - add backend/src/models/community.rs - add backend/src/models/mod.rs - add backend/src/models/proposal.rs - add backend/src/models/user.rs - add backend/src/plugins/builtin/comment_notifications.rs - add backend/src/plugins/builtin/conflict_resolution.rs - add backend/src/plugins/builtin/decision_workflows.rs - add backend/src/plugins/builtin/federation.rs - add backend/src/plugins/builtin/governance_analytics.rs - add backend/src/plugins/builtin/mod.rs - add backend/src/plugins/builtin/moderation_ledger.rs - add backend/src/plugins/builtin/proposal_lifecycle.rs - add backend/src/plugins/builtin/public_data_export.rs - add backend/src/plugins/builtin/self_moderation.rs - add backend/src/plugins/builtin/structured_deliberation.rs - add backend/src/plugins/hooks.rs - add backend/src/plugins/manager.rs - add backend/src/plugins/mod.rs - add backend/src/plugins/wasm/host_api.rs - add backend/src/plugins/wasm/mod.rs - add backend/src/plugins/wasm/plugin.rs - add backend/src/plugins/wasm/runtime.rs - add backend/src/voting/mod.rs - add backend/src/voting/quadratic.rs - add backend/src/voting/ranked_choice.rs - add backend/src/voting/schulze.rs - add backend/src/voting/star.rs - add compose/.env.demo.example - add compose/.env.production.example - add compose/demo.yml - add compose/dev.yml - add compose/production.yml - add docs/README.md - add docs/admin/backup.md - add docs/admin/configuration.md - add docs/admin/database.md - add docs/admin/installation.md - add docs/admin/plugins.md - add docs/admin/security.md - add docs/reference/api.md - add docs/reference/glossary.md - add docs/reference/voting-methods.md - add docs/user/communities.md - add docs/user/delegation.md - add docs/user/getting-started.md - add docs/user/settings.md - add docs/user/voting.md - add frontend/.gitignore - add frontend/Dockerfile - add frontend/astro.config.mjs - add frontend/package-lock.json - add frontend/package.json - add frontend/public/favicon.ico - add frontend/public/favicon.svg - add frontend/src/components/AdminNav.astro - add frontend/src/components/ThemeSwitcher.astro - add frontend/src/components/icons/VotingIcons.astro - add frontend/src/components/moderation/LedgerViewer.astro - add frontend/src/components/voting/DelegationGraph.astro - add frontend/src/components/voting/VotingMethodCard.astro - add frontend/src/components/voting/VotingResultsChart.astro - add frontend/src/layouts/Layout.astro - add frontend/src/layouts/PublicLayout.astro - add frontend/src/lib/api.ts - add frontend/src/lib/themes.ts - add frontend/src/pages/about.astro - add frontend/src/pages/admin/approvals.astro - add frontend/src/pages/admin/invitations.astro - add frontend/src/pages/admin/plugins.astro - add frontend/src/pages/admin/roles.astro - add frontend/src/pages/admin/settings.astro - add frontend/src/pages/admin/voting.astro - add frontend/src/pages/communities.astro - add frontend/src/pages/communities/[slug]/index.astro - add frontend/src/pages/communities/[slug]/plugins.astro - add frontend/src/pages/communities/[slug]/proposals/index.astro - add frontend/src/pages/communities/[slug]/proposals/new.astro - add frontend/src/pages/communities/[slug]/settings.astro - add frontend/src/pages/communities/[slug]/voting-config.astro - add frontend/src/pages/communities/new.astro - add frontend/src/pages/dashboard.astro - add frontend/src/pages/delegations.astro - add frontend/src/pages/demo.astro - add frontend/src/pages/docs.astro - add frontend/src/pages/features.astro - add frontend/src/pages/index.astro - add frontend/src/pages/login.astro - add frontend/src/pages/manifesto.astro - add frontend/src/pages/notifications.astro - add frontend/src/pages/proposals.astro - add frontend/src/pages/proposals/[id].astro - add frontend/src/pages/register.astro - add frontend/src/pages/settings.astro - add frontend/src/pages/setup.astro - add frontend/src/pages/users/[username].astro - add frontend/tsconfig.json - add scripts/.dev/state.json - add scripts/demo-reset.ps1 - add scripts/demo-reset.sh - add scripts/dev-start.ps1 - add scripts/dev-start.sh - add scripts/dev-stop.ps1 - add scripts/dev-stop.sh - add scripts/dev-test.ps1 - add scripts/dev.ps1 - add scripts/dev.sh - add scripts/post-reboot-setup.ps1 - add scripts/prepare-production.ps1 Diffstat: - 483 files changed, 61980 insertions(+)
2026-01-27 16:21:58 +00:00
# 2. Start everything (database + backend + frontend)
.\scripts\dev-start.ps1
# 3. Stop everything
.\scripts\dev-stop.ps1
```
The platform will be available at:
- **Frontend**: http://localhost:4321
- **Backend API**: http://localhost:3000
- **Setup Wizard**: http://localhost:4321/setup (first run)
### First Run
1. Navigate to `/register` to create the first user (automatically becomes admin)
2. Complete platform setup at `/setup`
3. Configure instance settings at `/admin/settings`
4. Create your first community
## Project Structure
```
likwid/
├── backend/ # Rust backend
│ ├── src/
│ │ ├── api/ # REST endpoints
│ │ ├── auth/ # JWT authentication
│ │ ├── models/ # Database models
│ │ └── plugins/ # Plugin system (WASM + builtins)
│ └── migrations/ # SQL migrations
├── frontend/ # Astro frontend
│ ├── src/
│ │ ├── pages/ # Routes
│ │ ├── layouts/ # Page layouts
│ │ └── components/ # UI components
├── compose/ # Podman compose files
├── scripts/ # Dev scripts (cross-platform)
└── docu_dev/ # Design documents
```
### Core Principles
1. **Be considerate** — Your work affects others
2. **Be respectful** — Assume good intentions
3. **Be collaborative** — Work transparently
4. **Be pragmatic** — Results over debates
5. **Find a third way** — Seek solutions that satisfy everyone
## Roadmap
- [x] Core voting infrastructure
- [x] Plugin system (WASM + builtins)
- [x] Deliberation phases
- [x] Comment quality scoring
- [ ] Advanced voting methods (Schulze, STAR, Quadratic)
- [ ] Liquid delegation engine
- [ ] GitLab/GitHub integration - plugin
- [ ] Mobile-responsive UI
- [ ] Accessibility audit (WCAG 2.1)
## License
EUPL-1.2
.dev, repo, backend, +4: add 483 files Verified changes: - add .dev/dev-token.txt - add .dev/pids/backend.pid - add .dev/pids/frontend.pid - add .env.example - add .gitignore - add CONTRIBUTING.md - add DEPLOYMENT.md - add README.md - add WORKFLOW.md - add backend/.env.example - add backend/.sqlx/query-00649c07335338a85657781bfe97b299039883e1170687d60047ced9f3271b8f.json - add backend/.sqlx/query-00b25a5d76ada968ebb490cdfa9b30d82de7402bda296872eb4a366bd2942640.json - add backend/.sqlx/query-00c90349026ba6858b28e413cff2e1b71f87d06dea5759fb6159da22a995e341.json - add backend/.sqlx/query-00e2f11aa7f20e01f9a9de158b81fbcd5a33511135ce3e05aea3c8c8846239b3.json - add backend/.sqlx/query-03706c8c7d9db6d3112ccbd27fd026308c5a03a923f53331468cc899eff9a08d.json - add backend/.sqlx/query-03b9920a00f57083543abd69b18965bdb37d21ba503691cd054ed06f6807d7f7.json - add backend/.sqlx/query-0474f023ed456e56e6a744f8a94e4afc361456a4979e1d14378d1f475c1b2192.json - add backend/.sqlx/query-04c1f2a6a596b9cda5a0744b941777916a3aa3c03445ce59a5a3a69f869078de.json - add backend/.sqlx/query-0569967ce647a065b60b93a233bd222d7dc8aef1eeffec8796dae06968faf08d.json - add backend/.sqlx/query-05ab322014e6f15af99d2af3c118f0cf64b06f311b17ff3c7197d949bab2a580.json - add backend/.sqlx/query-05d8db279bba917c2456ca3427876caefc67b9b6a3d9031ab43f998462a75a58.json - add backend/.sqlx/query-06415d7e9b1b54bc96b8c35b6c92649ffe74f1d9047c783810c344c75f3b10af.json - add backend/.sqlx/query-06c276dfa8e0d19cf539d9abdd4699b387c4a8435c11ac1fe7c4a53d5c231ba6.json - add backend/.sqlx/query-075e3c636c51526e7ceab5540cccd87e52939da3a48e4a544fe67457e8de6962.json - add backend/.sqlx/query-098ff8cc94787edf79a98396716cb5296547c407516489b5b873dadfa360f91e.json - add backend/.sqlx/query-09e0a994d85ba6589db1c989f193ef10e081ccc560031a056e80cb19436f5e8e.json - add backend/.sqlx/query-0cec90f8ac9b48f22ca24330afb16c9308998ddd30404d2a1eb38bd8d0fa46be.json - add backend/.sqlx/query-0d3765f6d5135140d623f9dc706b6907686b98158d775978709db26486109d8b.json - add backend/.sqlx/query-0d79d19ab27c1962afc4ef802f386e160c4a555ca59bade20c901d7b8be99d0e.json - add backend/.sqlx/query-0e518900101ca3ba736e18a911a07759368f0481b3c0dcd4702c077cdadb7ef0.json - add backend/.sqlx/query-0ea2a972775b14b5a22edb7b7a81f414993d8153aebd7121acbcbd54257f32bf.json - add backend/.sqlx/query-0ef338c61969938be731e6187b77c4d7454c409079ecc073aa24a10d339b47f1.json - add backend/.sqlx/query-10649f88f5a0055a0aa23cad37d0b51bd24c35ab290c412bad1286c0baaefd56.json - add backend/.sqlx/query-10a632674ed7d086243d8a31abcb4935677106be2937daf876b01434fc07d293.json - add backend/.sqlx/query-117802a0a1de4ec2e5e3e7d2fd557421991b07876c7b42760bbe756b979d0e96.json - add backend/.sqlx/query-132ee5d7ab197b3a1d3bce2740f419e3cc2311e3cf0bbd0dfe821eebb4ca4fe0.json - add backend/.sqlx/query-1414a9b0037bc888daa0b1215e88a78b20c7e2c614760f36307a248be45203ff.json - add backend/.sqlx/query-14514b4a260abf4b93429a3d841bea19693db589ad668279d7361f499fe7e408.json - add backend/.sqlx/query-150c49c9bd09af829b05abd06d6217aec3ed104f6286e2fc6bd741512cd254ff.json - add backend/.sqlx/query-155f20f35f5b4df59e1a53d0aa30f2994b0a6f76fcd1ff443a6bbe13e3d41339.json - add backend/.sqlx/query-1648eb605182a87a4fadd7158f7012dfe8011a56d63ea069a53bfd697bcdd166.json - add backend/.sqlx/query-171bd1d2e58286b428275404fbaaaedab5d2ee9d3c0b76e3182b6fd48493cdc4.json - add backend/.sqlx/query-174c2a9d861710b570536d1350b4e70b13a9290b222eb89ce753a5702de63f0a.json - add backend/.sqlx/query-177d2a77cdaaa75e32bae953e520231ce713d5fb5f65f533660c773417be085a.json - add backend/.sqlx/query-18c0fb05da45a3eea514f660bc4ac4d6aca71442645666a9c08db8f2a564ff6c.json - add backend/.sqlx/query-18f2bb2a5454308a0ca13ad574947eaa83e52ab32ba48687f54cdce41b34a141.json - add backend/.sqlx/query-1ad83f237ca18e09dfac8f654b6befac12576bf30f35f3bf626b7ccf46a4fb94.json - add backend/.sqlx/query-1cf0926848f8f1fc1f62337b344f06d86408f94450fe0ed80a44268657e92c06.json - add backend/.sqlx/query-1dcd2fc713e43bb6e785befc420fe94db65d42df35bd8015c550c2f8666664e7.json - add backend/.sqlx/query-1dedda4e97c32d56c88d29a247f788e5aac67cc9bc59fdd52b40926af3e5a671.json - add backend/.sqlx/query-1efa9b54dff5200841ab35a40e525a8d0da40edca89aa78cd168ae3e854eabc2.json - add backend/.sqlx/query-1fd0e024053913d7598c5cdb19f407cfa7fef149553e18efc9e5149dd77e7f1c.json - add backend/.sqlx/query-20414e126202ce893b8e967c585ac6ee9c6cc869033bbe7bbf959d80dcedf82b.json - add backend/.sqlx/query-21412c1fff5f48e1ca0a5a67c49180efba50cdbc247a467474296f00a4f1f0f2.json - add backend/.sqlx/query-222ef714ee6f0d715f09643cff679f1c9d5132051dea4cf1f809f06470ed9b44.json - add backend/.sqlx/query-2376b5dff203895eb0b78454a323beb8a90d4ea20ca201226d4b228a2b846c4f.json - add backend/.sqlx/query-274cc3e62a3bc6659ae9e652d6ac15076f76a5fb7acad44f5e853678cfa2abf3.json - add backend/.sqlx/query-27723721585f30329494e2c80e4851b65cd980780e4b756019f73df0f9d28061.json - add backend/.sqlx/query-28654edaba50887bd4c7f698e538ed9ec70543b1ba6d0ecc5b675a1040148b6a.json - add backend/.sqlx/query-2a13dcd10626c05bfed533ba131e46f2ba7c132c9e5d58afe30ba11179096bce.json - add backend/.sqlx/query-2a288385b0b4f402803e22171965bedeeb6e40308d09f4a0d4f67258b11f7cd2.json - add backend/.sqlx/query-2a7e168921469392cdde35401ab602fdb281f995ad75050af27a4130c311a920.json - add backend/.sqlx/query-2b38c2a93dda00a2ccd0ffe3d2cd83b9cf41d444b6f09b211a57dd6689a9e27e.json - add backend/.sqlx/query-2c9bb8a5dca54ef476b2908dfad34371f6f34e4a8500f855d01209d32840f683.json - add backend/.sqlx/query-2ca4dcd48f294e84793ad46b960657a7d30cf790418baf4feab371fb45687627.json - add backend/.sqlx/query-2cb27026dc438da39c4132e9679d8312ed4909560135b5660c82e06ed61e6436.json - add backend/.sqlx/query-2d6f151a2ed11e1a6efecfe1c1cd0242e3e28942cfbae4db71b4d9d709f96522.json - add backend/.sqlx/query-2f7f1f0d1960020529d167240c56abc5bcc6fcd5615890279d2bafcde467fe61.json - add backend/.sqlx/query-2f80cf2d27e9af290578740b2752a6a0d8c41e62aab523e16cc8cf123e59166f.json - add backend/.sqlx/query-31639da003249b784d3603126cb36a1ea592bd819b8f43d9cbd192d7d405c44d.json - add backend/.sqlx/query-3167dfbfa487a695ad0953ed59b206fe16833cfe890fdae3fd74d6fe2d11ced5.json - add backend/.sqlx/query-3205e4cb752317923752ee9ace04a93ada7aa8cbfc97a87f9ddf6376dc102146.json - add backend/.sqlx/query-3271a11a6d1ad3cc05deda6d3e33bd350180c0b20da49b88c5bc04d5f06eb927.json - add backend/.sqlx/query-32e740982952a1d3756117f496bcff626f7bcb438a50fa8eef80e013a84e8048.json - add backend/.sqlx/query-3316c52a6ddc9891f4482e6f5df622147b1be87d0723bf709d6d7def94eb1a0c.json - add backend/.sqlx/query-33281e190171ace099ef3209d49ac42b6527824947520336d7d11594ab56b265.json - add backend/.sqlx/query-34ac1a3b360d0e99c80d59aad7497794803b0ca05cb498e7715344bc9d512084.json - add backend/.sqlx/query-35b2d2fb4f7db1ce97557c01de71c96e64862e3955e1e2d5996581eb4b871f3d.json - add backend/.sqlx/query-3647ec42782a77237f075f172b4d435ac8d6325e60696018386ef1509e499a6d.json - add backend/.sqlx/query-39926d0308364c2a13c987adbc8b364253e9d8d350d69a1e1d3efd1c2e424d81.json - add backend/.sqlx/query-3a395c6e9a23a87fbfa1b3d7a06fbe907b32e3cfb6af327cec1533b7762bd4cd.json - add backend/.sqlx/query-3a8154bdd76daa157200feea1cce96d67bdb7b7c824088ca625105e96495938f.json - add backend/.sqlx/query-3b034411e6338ddaeae97589f0d0ab13cd674f852ad61b643a2e593d252767f1.json - add backend/.sqlx/query-3c118e418b94a2d609cde609b53fbbb1a0055fe46397599f7c5eade17b0a5360.json - add backend/.sqlx/query-3c323153097726bf967b733fc7cb40173a1c64a4b7535a904445e5d02dbe2f0f.json - add backend/.sqlx/query-3c47d27c939cb21fbcc621825d1ef59d5284c3b6db07e2b11d772fefbcf1650b.json - add backend/.sqlx/query-3c769ff42e6b6e2df033fa05cf6d8ae1e9fba6320943f65c95613f56a8ea2a13.json - add backend/.sqlx/query-3d523a0728ea6e9df275520675e3caab1963c61d5d6c3ad468cc51568d4bb5f8.json - add backend/.sqlx/query-3d9153f242fa24637d71a4b4f0a76edee15892248acb6b281ffdbab11a4bff0f.json - add backend/.sqlx/query-3e0e0fe2c4e51b68025965560101643e7e035b782b1cd0d110803664c5831fe3.json - add backend/.sqlx/query-3e7754fe4fe21c7fc50435ad222ed68617f8e8c4f2a21b202ee95d6f76ae0d32.json - add backend/.sqlx/query-403544e4819bc7bcc4ac51c997fb9ec74c3b3fa2c6f2b170ab5b8c8c1d9c65d4.json - add backend/.sqlx/query-41273682b6b15534294e7f90907c7a516cb658e276a50b44f72a2b739ee9e04b.json - add backend/.sqlx/query-42e0fab065d541e407129d44f86f1d1d46387494b992c81f7a334e72c42c98ca.json - add backend/.sqlx/query-43a864f79078c6891186f1d20600983ee080a7033137c0d715880cf20fc7776a.json - add backend/.sqlx/query-4619c7159d4bec14be35a308b0a867e3d5b0687a46a456adf6e8dcd1582d3849.json - add backend/.sqlx/query-47ea00355af927b41b9c39e55791042049a4bea2d1fab669b4ef6fee3f7a3497.json - add backend/.sqlx/query-47ea0156899876339e02f4769e666c24d5d0fee1f18869d7adcb4aeb007076c8.json - add backend/.sqlx/query-484e7ea64028000ccadd135f9806fd190f860d8ac1cd1c56828fa5be279f57c9.json - add backend/.sqlx/query-4a92221917041b95e9a27e511ca70b404313e7dba1faf19bb1eb1347b2208587.json - add backend/.sqlx/query-4aa9e85bb2280a67f94914b3de749b262b16223d467464079ce36509b857f306.json - add backend/.sqlx/query-4cc6b7b3343bf2afda642707ede4a1e1df7904a137b6b3c34bfdda71088516b7.json - add backend/.sqlx/query-4ce35bd4ce5c2dde738b87eb3aa45c21926d67e156fda5cbdcaa5e1db2ebe785.json - add backend/.sqlx/query-4e324f0141e12a57df99f729cccf6133014b6669bda8d3b75ca07bb2a47567b2.json - add backend/.sqlx/query-4ed6eff19ec25d1e627ff27d656934c56ac363260ba540fc0d225b7ce7da48d3.json - add backend/.sqlx/query-4f6d0f4d874780e2729f6e6f2e50ba35dddf8cfaa1de0f4213e2ca70aad2d3cc.json - add backend/.sqlx/query-4fbe1a8019228d78f6b2361fd7f363b8f4ee2e63104c7a824e289d13b4814e51.json - add backend/.sqlx/query-502a8e2b5a59105bcc6d1d668d47b04d7978dde7265c76ae37915f8ae8842033.json - add backend/.sqlx/query-50c17bb1a4d6b249e39d8d13c2ac7d346bfc2476e7c983223e9b4366b2f08abd.json - add backend/.sqlx/query-522c64c31796d1d85b4ce6a6cbac86d0b440c2eb54d14fd700fd005848e4b146.json - add backend/.sqlx/query-5303a6a8c505e05aca3e158cf4aae36c2ad5a98374032d3eb604363f777def7e.json - add backend/.sqlx/query-536866ecf3349598d172c0011a0970a0f7926658d166a4940fca89cabaf3d514.json - add backend/.sqlx/query-53e54a4fe0344eb04f52ac7d737663b824bbfc3c65e3cebd23ff3dfa5a89fbe8.json - add backend/.sqlx/query-54262c9a793fdbf907f81f6974d4fa57bbd4140b6bd9fc84b27f4abcdc9cefc4.json - add backend/.sqlx/query-563efcefcb6880c075c16d278b11631166fc30678c161bdff1a68b8f491bf335.json - add backend/.sqlx/query-56a3e0906a82b4c7df2d066194300d7c5c704562990cf7d835541083884d192e.json - add backend/.sqlx/query-56be8018a90784cb6868af7bd4a7dff4e1e8ddf09e6d08b97c2e0cc3a6dec0e5.json - add backend/.sqlx/query-598da730fbfa2531c8882c1456f8e1a13c6a99c177109e6a88b44e66e923e8f0.json - add backend/.sqlx/query-599b54e38d5be790010a42f8db1cdd210506243f533fe02b90974c51d878ef52.json - add backend/.sqlx/query-5ae8c8c64a800b7735ab381b7ff73988ec35b8839beb5f108400e1e85295aaa8.json - add backend/.sqlx/query-5b3990eadd408f017c3f97f9eec54ebf9d4b17e8f52b7be7e8d4f7a4d4303045.json - add backend/.sqlx/query-5bf7ea39ce22f5466a08746b98091b897f35a72561e668a1643d63c9427a96ca.json - add backend/.sqlx/query-5c54f1d4567d6c7baf6969687c7f19f71dfdcacebdcbcb5284b0243cc12895e2.json - add backend/.sqlx/query-5d369c593b73b9c9835ef79206367824f5cc656cb8d93d3a4af3262c73cf88ad.json - add backend/.sqlx/query-5ea4e4b2dafd654c306e4507faaa1d7112461cedba992f8d2ddc923c42cd7b6b.json - add backend/.sqlx/query-5fd1b28bc068dc4592e1c6a58bd348f4d9feae00d29ea677ae643593dda852a4.json - add backend/.sqlx/query-5ff99236c732a045c53789220aa54f9f494aa49b1b55b207ba777e9cbc2e8ddd.json - add backend/.sqlx/query-6098a745505990aea4405d2ab48fd8e4839518f714261bc8fc1cc01fe298ffd1.json - add backend/.sqlx/query-6252da4b5dd1636fb1aa75dc10bd8ede8f9b12fdb80b0edaa999c321993233ae.json - add backend/.sqlx/query-633a36b68dd39b0e443b169ac7bcfeebbd2e8b76a09791f8f3bd5190bdc569e3.json - add backend/.sqlx/query-63426c52f6016b030b23a562fe2aa08793ecb5e3a3a24f82bc7666cd8cf5cd68.json - add backend/.sqlx/query-641be20c2834a02a49f6c658663d73fb5779eb14e36cf13a9ecbfa61440c5332.json - add backend/.sqlx/query-65a8781dff58442082a16c731be5acfdb3c61ad599b2031433be6c554821df05.json - add backend/.sqlx/query-660253bf0225d065ae50eab8625e1f9662779997acef345182ce23e96efde2c3.json - add backend/.sqlx/query-68f175d74997d4cfc1ce98756bb32d8f7d3466d5ea71f137ac101ebd07e0073e.json - add backend/.sqlx/query-6a6bec68b35012df41e6bb99b5afc11a90e3404fa29698fb04fa3ad18ad2025b.json - add backend/.sqlx/query-6b3fef1781daf9672ad11cbc1e2d84e536ff7ee9b3cef4d5f517a2ed27c586c4.json - add backend/.sqlx/query-6d1c9e2cb972dbc9df0a72034cf0390e72bb8baecd2b09d8ae305ab3844439a0.json - add backend/.sqlx/query-6dc1dc04d2084400be320aa33507746a38814325f3525dd0f38e05c6a64f1f7a.json - add backend/.sqlx/query-6e44a5f3076d976fdad560f5c4ccb1802df408602aecb3025b851969ff480708.json - add backend/.sqlx/query-6e60bcb9d941716127a4ed3cead4b9a375deb0e4238137d3b095c43bae316702.json - add backend/.sqlx/query-6e71eb3247a4b255a2187731a9d54c4fe2aac97e458c1247b8b89364ff590b9f.json - add backend/.sqlx/query-6f89b8deda1078080ad8cfc2db507325e19bb0ffd02f1aa4f933045633c4914a.json - add backend/.sqlx/query-6f92eb099a3182a7f862df97a6f9cf340bef74f512099000e03450f69b796ef1.json - add backend/.sqlx/query-706d61211ccde2d45e1fc60480b37719f90ce364bf3a118743bfe82eca3783ae.json - add backend/.sqlx/query-7148baad9c5cba418a5d7818761e3ac52fe166fbfa0bfc5f6bbe749fa0a6889e.json - add backend/.sqlx/query-72132fbc4c6da619b3055bd473b5928c8a1ff7886a613d9d6be3f2ab2a7a7f4d.json - add backend/.sqlx/query-733ab1cda0fdc0cecf46928410fefb3b4e96eb2390dfdb93b95ce4c13f0d9e59.json - add backend/.sqlx/query-733faae97d10baca47579a4a56ce281a6f36a60c73739f9ad692fc8b3825964c.json - add backend/.sqlx/query-73720cd6ae56d7e210c173ca90f6c982f68150b76dc2d4cd578965c62ddb11be.json - add backend/.sqlx/query-73e84e079e38064cbf573149243395913f6a14bbaceedeff7bf41fdcaf63f01c.json - add backend/.sqlx/query-740f728d9932a5da47b6b9454ed77304f5e93dc836dc21b3994eb4e7c8bc8219.json - add backend/.sqlx/query-74fdd241eb54952015786937b057d437b60267d664cd4b57a9c394486f6001b2.json - add backend/.sqlx/query-75a8631bc9e4f89b9e1b6d1899711e148228dfa0a6760fbba7ddf2711fb16e6e.json - add backend/.sqlx/query-7635e7f06daac3a495a2439bc893e345effd96be4a8760d4ca11538334d875c4.json - add backend/.sqlx/query-768935f0dff24d092ebaff3512026b9e6a0344c9d10ee0cf852d299c80bba6c8.json - add backend/.sqlx/query-778a5cc33f4b205914711921c98653f826d2adc8175c9297efb485caf4c3d96d.json - add backend/.sqlx/query-78418e5f9824bceb1937348a77d50ced7a3e2f21ec72940fe9a70e77cb3923a0.json - add backend/.sqlx/query-7a3f67d8cafc3611f94a8cb2406ab4c0e90a3619f7b9e4b6ad67fe11a46b91d9.json - add backend/.sqlx/query-7b06af69ee03943c64083e5bc94cb6dbd6f5017ad44546dff7582c31345edc51.json - add backend/.sqlx/query-7c8ec9e26f553fc211b5bd819e31722a054bb9414950d16a8ebd451dc18d4f3b.json - add backend/.sqlx/query-7cc78deb0836ac802b017122ac50fe71bbe8af86c7aa5c8b90b10d1672a9d31a.json - add backend/.sqlx/query-7cf8e3b8f83a16c49ce2f7e66673d69e773f71abded50c5bb29884f9dff628bd.json - add backend/.sqlx/query-7f0faa7ca48a6a56274f7d05c1fb4ad2d8dd384fdb7bc178220f07481236c8b2.json - add backend/.sqlx/query-7f497e0097bf329922d709282092b588975f7c2d8c508fbe49ab3d9d4c99c396.json - add backend/.sqlx/query-7fdca4a1f7c40789d44de54a739eca0bb898c9fbf3e89784e2f784630c56dba5.json - add backend/.sqlx/query-82aa3e3878c98cbdcc5bbefd11acd7b19521314a38ab9085516eb81e39354d2a.json - add backend/.sqlx/query-860d54897714862bf6312fc00b440d414b9083efd695f04c31f26510d0254208.json - add backend/.sqlx/query-865245efea368b2c0b937356889a07b9a04954165e700f4c7c35687c13f2be27.json - add backend/.sqlx/query-86645359fb0da9b7441326acb5ac4d8be2c0eda7f3ef0d97d0b4d661aa0d62eb.json - add backend/.sqlx/query-87426464ee1ed01c4e1940b86ed461af98bcfe50c40df7c869c1c03395a79e07.json - add backend/.sqlx/query-87f52f0262716fe497a6e8b42722cc11f88dacaa0bca746ebd5b474a734d9bb3.json - add backend/.sqlx/query-88ca29971ada21e0ff2b92315e39c7aefbd81215862c5c7149e2dbca93c5d1fe.json - add backend/.sqlx/query-8932b373514ebf8056f5934c5b02dd675f6fe1b1317688676d5c32e1f01065a7.json - add backend/.sqlx/query-89804ccea9075b137f7c7e47917f3477f770dfd7550ab97060b981849618a201.json - add backend/.sqlx/query-8b2ab82dd4fe83655e074b1edc9e80e2ca276a327e044ad5578fb15eba3ac3ee.json - add backend/.sqlx/query-8d3042b1d0415262c8729e52a4d8933bf52b484798b7e3530219b0117a60f5d1.json - add backend/.sqlx/query-8d94635535054f82b5185372543c7347a8fe98d8402d99130a29520eab53bc73.json - add backend/.sqlx/query-8db75a6ddf63baa3ee89defbedaefb53f61892395025de17dce21451f81ba8b1.json - add backend/.sqlx/query-8e856e6e4081d2ca26e5e6097848fab90e055cbbc318956a3869750a0855fe3f.json - add backend/.sqlx/query-917a021a7c54c19e1257d558ec4e40c0001c975d00af6255ab2707d3ebb045ac.json - add backend/.sqlx/query-91b64087ce497ce4426c00ccdd8cbfde639f18d24df8362c11a211a9acf2fc92.json - add backend/.sqlx/query-92461256ad7b62764b2bd75674ccbfc11df6648d6d856e3e68fc80801457c555.json - add backend/.sqlx/query-93883e88af152aca23a39dadd95669f025294cb532a892e58891a0e756e9c784.json - add backend/.sqlx/query-93c4fe897770127740a52c43b14f2007bfa6faf8743dc07611ac22e9140e89f6.json - add backend/.sqlx/query-942753e2a11713b9d4b46a52f4a6426629f95c7a91598f351741f9bc100e243b.json - add backend/.sqlx/query-94499cff482a1533a32723bc9924bf62af0a9ec7cfe338b1c97336e6a1ea5dee.json - add backend/.sqlx/query-94b98a4fccec6a48b27cdf8d3ea8740a81baac9e53a5c458acb7f9692893f069.json - add backend/.sqlx/query-957b131c5ae23e306fe4634db068c611122ae61057c805c82413fb69ed015c58.json - add backend/.sqlx/query-95f70efea97448688250d1647387c7d3dc1e4eec0dc2e6ba88f09e9746132d09.json - add backend/.sqlx/query-965e42468c325a893d39c2eeefbea254b37e04f0d067d88988cf4ece97b0e818.json - add backend/.sqlx/query-9888b553ae9f5cd32aa1eb6cfee1abecc08787a0f7fd7526956d30d62c1801ff.json - add backend/.sqlx/query-9b9965ea0437e0f8e3467ba2b237d6a84c74bbc03c389117d8f3f6e71273b587.json - add backend/.sqlx/query-9beff9c1f4daa7453bd6f13f3692b320f1f82ca87bed75f8a85e87882ac4bfc1.json - add backend/.sqlx/query-9c3b9cd35a4c58e67a15ad0372c18b6c5fc0a969b9aec88508cea8388c2fbe55.json - add backend/.sqlx/query-9c4016766b52e727103f5d09c7572fa90d793c5b391cfe99809d2d8825b9c9d6.json - add backend/.sqlx/query-9e78a21e3bae2928e4ce353423030c59deb97bdbf242e8d4b8e2af11d65596f1.json - add backend/.sqlx/query-9f011d836f16bc90ba585c43424fbb960ee5cadd5f50088e252655f5f79612fe.json - add backend/.sqlx/query-a1df48d19975013b68c2e57f90a4c0691d7f31a83ffc92628d918959daba3e36.json - add backend/.sqlx/query-a2d2cf6227a9e713d29610e2c0f0e94146f1798257a9dd68325487329eb6e24c.json - add backend/.sqlx/query-a57268c9e448ddc42290fce152a7d81d332eccd8c90b962b7ef0cdaba6d8a3b0.json - add backend/.sqlx/query-a65fb2ba103206d6ad4c761ec1fb62638fc50474679c751183013efc7cb0edbd.json - add backend/.sqlx/query-a8414c7b067366f56d56b3a465b248209e3800c25fcea8dadc2f63fdca72e82f.json - add backend/.sqlx/query-a9d4611cf695893da6a962355b974077340a56497e7bc9100f288cb1195267ad.json - add backend/.sqlx/query-aa35c7c6645c9a7637f083650a2d9c898e15c49cc49a7df001fa6861ab47995e.json - add backend/.sqlx/query-aa69a761eb48721491a2275dc2040ac0d58ce45701dba74214e2af3685db59f1.json - add backend/.sqlx/query-aadb91fe11c7e3106062a2055b0196ca12ed20e40513bc14f11f4a8bd5623a3f.json - add backend/.sqlx/query-ad438c18ca77e186c4e33a8079374181a47fbbec6a5f0ae5fe2144e342910d40.json - add backend/.sqlx/query-ad82dc4820ab69556cba650ae422084d57dec2f89ae99c977be1b36261c8d0b4.json - add backend/.sqlx/query-aeee6c4f9115efe386351097cb8c3512550eeecac893289d40b8e01c04f9f167.json - add backend/.sqlx/query-aefd6f17ea2becd41283f5b07fca49481cbe221437fed57283b0f52c03bf85c7.json - add backend/.sqlx/query-b038e92708c16243759184994795f864db1cabbdf8f0d93128d41850888e531c.json - add backend/.sqlx/query-b09e737c4925f4ebb8fc57919c50542f125f4fc7d2ba49c3cd368682aba9a8b6.json - add backend/.sqlx/query-b3c77106c16c2b75c51a36e6e56f9cff657fce6f0472d905af97ffe5aba8d3c7.json - add backend/.sqlx/query-b42cab53e091470ad8237271def4b42146a75d30b77aecb4c1ae7ab7a7cc32d3.json - add backend/.sqlx/query-b54b3e3f031e9a09d1252bcc9e27ad26959157f77064a4e4d30ed73c3a01e293.json - add backend/.sqlx/query-b5bada0e6df57aa0243e0234b72c3b39cf6f1ee0ef69a4e232ae06f70b1b1c0c.json - add backend/.sqlx/query-b5d49d78ba8674954210df5728d43dca77d453a7aae14fb8b0e57e0f7a44e03a.json - add backend/.sqlx/query-b6bdb63000935a47301993972237254f9b11915a860d6e84ad639f579bb6ac62.json - add backend/.sqlx/query-b6d2983946f27ac29c85e72685d389d29c8ce1b3c9e3202a272f12f2e6dfbf06.json - add backend/.sqlx/query-b7fbd0f031db0653546e51da4237160abe2909f3dcf622f9ab1b91537c9169fa.json - add backend/.sqlx/query-b8ef84a72cfa6cea3a1b1d8cb5916d7e3290de0a05143432151308f32312f94a.json - add backend/.sqlx/query-b8f80a210fcb0474a124ad93e43a163431366c50dce137863b283121ce70604b.json - add backend/.sqlx/query-b94c2ca7181b28660e9a9b256e6ebe98b6cf0c450969b6b953434b8d2775ee4b.json - add backend/.sqlx/query-b9586185e84644f0bd936d7bf5e9bec6ebeaba77ab354d0b7096d9334656497f.json - add backend/.sqlx/query-b9e59dc4e2e37b0c59ebbe794b03e64647af6b6025b3c74c73324b5735e32802.json - add backend/.sqlx/query-bb0cf75500c2358d78ae8028e5d587b9e7492ce6082340ec84f7706d668beb45.json - add backend/.sqlx/query-bbcdcddcd2f31a7e308016f325e9914a10c18cbc05d4b724bb87533cd3851fea.json - add backend/.sqlx/query-bd76cc54f3ccd774a62f6d2b5ab27e5432bc2202b3e8f030a24a1733c96867af.json - add backend/.sqlx/query-bfdd9a0dcf20053b8d10c946955530253502e9c624b6586b358660df9d1ec8cc.json - add backend/.sqlx/query-c2a2d3c0016e6d4df3fd04f9e24c5c4fde0acbe42a195eaf74cf5299dacb846c.json - add backend/.sqlx/query-c2ca1cf0be6dc893f3f6938953436c69408bd8ca37d45398a1faf450684aec08.json - add backend/.sqlx/query-c31ebddef69f304403bfb2d816d42bd9731482ceec258e0de1bb61d5ba20d413.json - add backend/.sqlx/query-c33217c0ec06f08e9b89ac876cb22bf002aadb6cd6391af968d6a08725792228.json - add backend/.sqlx/query-c35608b0d7569f739dda24b3da59b7b500ff26f5e79433b3f7e3625d91177d26.json - add backend/.sqlx/query-c42152b0a4b91fd58afbdb06da1a9b7b73f414bdd6607343df01dc0fa3d4b5fd.json - add backend/.sqlx/query-c4d21db839f7e0b45fc1fc1291840e78d1e92440e003c5ad3cb45c3d9f5042fc.json - add backend/.sqlx/query-c5f66036fe85ebb4597f564dcf40b7547b409195b65ea3130454f96265c9bd82.json - add backend/.sqlx/query-c64fd6da083e54e1719580125eb72a544081ed4c91c02295c6f1d799fb3b4f5a.json - add backend/.sqlx/query-c7525a8aa940491736dd45cd876dab2e4cd0d05f0104e2d2b08980bcee557212.json - add backend/.sqlx/query-cbb4acc6eb730ec886b1af23e6389a0e68d7a672d8643101f6680e42df944711.json - add backend/.sqlx/query-cc77b8a12eb03938d34d391c8b1397dd2fe99748315a95299563c3a2f5c989bf.json - add backend/.sqlx/query-cc97b910b8afcfd348d5fe69f7e75862ddd7e31680e46a61170a467b64cdf547.json - add backend/.sqlx/query-cca54c0742b36cc4b7c3c2bf0bb3d987d16771d42334f11c4e9d7598651d21e6.json - add backend/.sqlx/query-ccf5a42b62f74eeb3d424fc4573ec6b01b1ed46b56518c0ccc5121e524d2f3c5.json - add backend/.sqlx/query-cd002400a4b0c6b071bb949d0c716ab2691caa661ccc407af85da42599e1101b.json - add backend/.sqlx/query-cdb2b8bb16c0e2e04fa6df8e22e060adfc81c38cf67121ada9f6c721a9398588.json - add backend/.sqlx/query-cde649035ebc12f0bbce749e9a5347b8073659b42c9e65a4ac74400b17dc38f7.json - add backend/.sqlx/query-ce7f978d16864a568b49c47eaa68edcaafb0d293f6d08f5a945bd456c91fd417.json - add backend/.sqlx/query-cf9a5a22ac9e4ab44a56d2aa4e110a63ba212d392a353850a344f69a0a13811f.json - add backend/.sqlx/query-d00ba1f23877ca15a8ac8b09d55fc86a37d40c9a0ea63afdbfa2f725fa39d255.json - add backend/.sqlx/query-d09299b064ef5fefd5f5ac8a7f1ae1a549cfffd9081fa72b4427fa4ea21cbcb5.json - add backend/.sqlx/query-d0c599e01228531f2ab7f571658c71563fd1ad88cfa5e13f1adfaad3f00eaa75.json - add backend/.sqlx/query-d2de711bc12629a1141d11db45496d22c0ff03555c983205b512a318290948a0.json - add backend/.sqlx/query-d32e84b6ce21f4b4553aead45ef53dce4362399a75c39f7203cbd770e997abdf.json - add backend/.sqlx/query-d48c21b6a8d67db4b37ee43d6273e3d41d1cf2a2b89fe434edd009a29e69b94c.json - add backend/.sqlx/query-d705da303937bc5e1a2e929b9cf3f93e4e24b55e1dd14c4a83bca29f0d3a0341.json - add backend/.sqlx/query-d83b8a3f417cd420d44aa3f7f8c462b28c2f7f2a4804ba00bb51a63759a7f8b2.json - add backend/.sqlx/query-d928c488809305d28f877c359c93614550307868213d312ea8ae24bcbb927db5.json - add backend/.sqlx/query-da70570e2492dcc5b21ff51069db1a366ff94803b0cfa5821c497b6ba06ed2fc.json - add backend/.sqlx/query-db38e6387cbf510bf0c13ecee0f42afc7c100aebd0b043fd23424cfe61110e3a.json - add backend/.sqlx/query-dbf52d447a84d9f1a7f36f3c57c05b1c547bd8515706b2be877762edd1aff254.json - add backend/.sqlx/query-dc64e1d25d9ced3a49130cee99f6edc3f70a4917910cf3b76faefc24ac32159d.json - add backend/.sqlx/query-dccbd661ee975b7e9b74d175c452fbd3ba2c847c24c6f401fd18736aeaed3ad3.json - add backend/.sqlx/query-dd458a825f2295d6650263f39ed6f22d1da12443b80bd53a4b6c61e870b4cf07.json - add backend/.sqlx/query-dd4e31b27b005a68baeacf0ada1645ebe2277a8c437d6846db1776b53611aa2e.json - add backend/.sqlx/query-dd99e48b1572e25db38f03da95984fda1072913b29bb6b3753a0d351583dfff6.json - add backend/.sqlx/query-de3230de507ca1e11d2ca40bef8a5b8470628ddbaa454af4f49f6fe6953f9014.json - add backend/.sqlx/query-de6d39c5473742a38ff437b95613ae32a366f4339c8165f58d192151024b6caf.json - add backend/.sqlx/query-dee9b81f66d0a8a8ec6543e2bda43b68604377280236f83eec9bb710c4a8b957.json - add backend/.sqlx/query-df3c9235defd412e75b967ec4c1d052404a6289ec89ebc3cf7524f0a65279258.json - add backend/.sqlx/query-df917df33b1f18f0545d866fdcdbff3c189c549e3e92966b808166ebd65a758e.json - add backend/.sqlx/query-e078bd7e0e60f80321173ea5383e3c89f5b07036b7f6c3be6a66e25dd64d8790.json - add backend/.sqlx/query-e15d8685afde9f89919d3643dd1df3d4718d826147e63be4c8d4e8708a15e481.json - add backend/.sqlx/query-e1a40a1cc7c618d815ebfaec6751ab19146ab76519020ce783bc916e64155a14.json - add backend/.sqlx/query-e25c2c4e795fd113fbf9631b4fc107d217f2dd0a8eacd812067defe8d3529d54.json - add backend/.sqlx/query-e2a9b8f8fb63c4e8737c0f2925ffeff025be37184ede64b328e0ecd68680dc08.json - add backend/.sqlx/query-e3e45d1876b1a38771e1bb32eda68462ba27bd0beca41a602ebf60b86b863680.json - add backend/.sqlx/query-e53f34921983218ba03123ea07403917a62cb0fc66039be84387df090606eefc.json - add backend/.sqlx/query-e5ada1e1857eec30e7c2a55c19b0ddbf2c90fc7f0019f211549f2abfc4fdf487.json - add backend/.sqlx/query-e70b6cc45322a8ba1c3e9fef0c8c3185bbeacbcbf16810c303c029ea108802bf.json - add backend/.sqlx/query-e983f01536d1ed4b6b40d640877d9fa445aa04972cfe427116cbdf104e6cb32f.json - add backend/.sqlx/query-ea775b89fed8c652e57e21cd202dbb9c4d13dedc7d0890dd1d13dfa7635f02b5.json - add backend/.sqlx/query-ea7e6d82c94b562d5e75720c8c1af6ad707ef717406330be0c4255363f9c783d.json - add backend/.sqlx/query-eab47df4e85e9dfeb87b480dc092b09924d6239ba71b8715be5c56137ebca953.json - add backend/.sqlx/query-ec156d9abd97de863483a1d8fe3e4ff63a63b39f883d320175c88b0bcaad3f70.json - add backend/.sqlx/query-ec34b2dc8930568c2e135aa13d08783d7b62dd524eef99f00b8bebd55f0196bd.json - add backend/.sqlx/query-ed05dcba73fd4426c2de9c8828d943e45eafa31dbb155c4a50b2471308dd3097.json - add backend/.sqlx/query-ef47b9016770614a3d12c6bba1c99b60046a3bff47ca5e18759786362446e1be.json - add backend/.sqlx/query-f10d14593a49a3f14536b6ec7a0283b16f57a731f18f1ea00a25b76aeda238cb.json - add backend/.sqlx/query-f1de9db0b037bd44be7aa37b308ce60a0c10888951f385b61fe237e09b924976.json - add backend/.sqlx/query-f45f95ec5c791d1bd87635f304f62caf19b12dc178c570828a8bb8a5579ea17a.json - add backend/.sqlx/query-f5476f8976f2c0ab202fe52ea148d95570f6e3901f6ef0637e58701eb42d0120.json - add backend/.sqlx/query-f5d1ab63c42cd0e45cfab56f5f4efd821816137eacf138aa5191dbe47c5bd444.json - add backend/.sqlx/query-f63fca5359b5dc0141d7de8e8f4c3ec1e7b446d48ab6d175c8b876823bd042a9.json - add backend/.sqlx/query-f7bb4e7ba6e7a6abb1549bc112176ca7afdb25923aa3aae3775a65cbd17afeaa.json - add backend/.sqlx/query-f91db2c61f14281c7dfd6f6aefdffc97e080dd9acc5d9c5edd8a865623b44628.json - add backend/.sqlx/query-f9ff82cdb66393d4fdef38cf4e64b93b9f8b062f06cd3f7bde3b0873ecbfc835.json - add backend/.sqlx/query-facfb30591b5abfa384d897e0de7c5d0f0e9f80cf8c6e57a1c5298ad1a990351.json - add backend/.sqlx/query-faf3d877c077b20211fe2cbf92c54322660147ab31fe5036e3e722725c2e3e44.json - add backend/.sqlx/query-fb2e03f8ccf37e8463ee7f14e74fc20fdb46337da0f561b4fa0eb815fb0486b4.json - add backend/.sqlx/query-fcdb75aee759125fdb4169e6c9dd2b47b4f264c512bd62db700083cf479d6d3f.json - add backend/.sqlx/query-fdfe11a59054df6111a7833043bf8cfb772c5897d1aa9c25ccad0579945e74f2.json - add backend/.sqlx/query-fe3dbfffdaca1dcf828be7cc949f7f74b05f694dc8ef3ee37a3dac8f695ec62d.json - add backend/.sqlx/query-fe5ef9f6c10dfb61e236bc955d377dd8b0893e052ee073b55fbb1b8f745a9cd5.json - add backend/Cargo.toml - add backend/Dockerfile - add backend/migrations/20260125180102_initial_schema.sql - add backend/migrations/20260125181224_voting_system.sql - add backend/migrations/20260125183611_comments.sql - add backend/migrations/20260125204900_notifications.sql - add backend/migrations/20260125205600_advanced_voting.sql - add backend/migrations/20260125211000_public_events.sql - add backend/migrations/20260126012000_plugin_packages.sql - add backend/migrations/20260126120000_instance_settings.sql - add backend/migrations/20260126121000_admin_columns.sql - add backend/migrations/20260126130000_deliberation_system.sql - add backend/migrations/20260126140000_advanced_voting.sql - add backend/migrations/20260126150000_liquid_delegation.sql - add backend/migrations/20260126160000_plugin_registry.sql - add backend/migrations/20260126170000_gitlab_integration.sql - add backend/migrations/20260126180000_roles_permissions.sql - add backend/migrations/20260126190000_voting_plugins.sql - add backend/migrations/20260126200000_invitations.sql - add backend/migrations/20260126210000_plugin_kv_store.sql - add backend/migrations/20260126220000_approval_workflows.sql - add backend/migrations/20260126230000_vote_reproducibility.sql - add backend/migrations/20260126240000_topic_voting_methods.sql - add backend/migrations/20260126250000_moderation_ledger.sql - add backend/migrations/20260126260000_decision_workflows.sql - add backend/migrations/20260126270000_self_moderation_rules.sql - add backend/migrations/20260126280000_proposal_lifecycle.sql - add backend/migrations/20260126290000_governance_analytics.sql - add backend/migrations/20260126300000_conflict_resolution.sql - add backend/migrations/20260126310000_structured_deliberation.sql - add backend/migrations/20260126320000_public_data_export.sql - add backend/migrations/20260126330000_federation.sql - add backend/migrations/20260127105000_wasm_plugin_runtime.sql - add backend/migrations/20260127150000_demo_seed_data.sql - add backend/src/api/analytics.rs - add backend/src/api/approvals.rs - add backend/src/api/auth.rs - add backend/src/api/comments.rs - add backend/src/api/communities.rs - add backend/src/api/conflicts.rs - add backend/src/api/delegation.rs - add backend/src/api/deliberation.rs - add backend/src/api/demo.rs - add backend/src/api/exports.rs - add backend/src/api/federation.rs - add backend/src/api/gitlab.rs - add backend/src/api/health.rs - add backend/src/api/invitations.rs - add backend/src/api/lifecycle.rs - add backend/src/api/mod.rs - add backend/src/api/moderation.rs - add backend/src/api/moderation_ledger.rs - add backend/src/api/notifications.rs - add backend/src/api/permissions.rs - add backend/src/api/plugins.rs - add backend/src/api/proposals.rs - add backend/src/api/roles.rs - add backend/src/api/self_moderation.rs - add backend/src/api/settings.rs - add backend/src/api/users.rs - add backend/src/api/voting_config.rs - add backend/src/api/workflows.rs - add backend/src/auth/jwt.rs - add backend/src/auth/middleware.rs - add backend/src/auth/mod.rs - add backend/src/auth/password.rs - add backend/src/config/mod.rs - add backend/src/db/mod.rs - add backend/src/demo/mod.rs - add backend/src/main.rs - add backend/src/models/community.rs - add backend/src/models/mod.rs - add backend/src/models/proposal.rs - add backend/src/models/user.rs - add backend/src/plugins/builtin/comment_notifications.rs - add backend/src/plugins/builtin/conflict_resolution.rs - add backend/src/plugins/builtin/decision_workflows.rs - add backend/src/plugins/builtin/federation.rs - add backend/src/plugins/builtin/governance_analytics.rs - add backend/src/plugins/builtin/mod.rs - add backend/src/plugins/builtin/moderation_ledger.rs - add backend/src/plugins/builtin/proposal_lifecycle.rs - add backend/src/plugins/builtin/public_data_export.rs - add backend/src/plugins/builtin/self_moderation.rs - add backend/src/plugins/builtin/structured_deliberation.rs - add backend/src/plugins/hooks.rs - add backend/src/plugins/manager.rs - add backend/src/plugins/mod.rs - add backend/src/plugins/wasm/host_api.rs - add backend/src/plugins/wasm/mod.rs - add backend/src/plugins/wasm/plugin.rs - add backend/src/plugins/wasm/runtime.rs - add backend/src/voting/mod.rs - add backend/src/voting/quadratic.rs - add backend/src/voting/ranked_choice.rs - add backend/src/voting/schulze.rs - add backend/src/voting/star.rs - add compose/.env.demo.example - add compose/.env.production.example - add compose/demo.yml - add compose/dev.yml - add compose/production.yml - add docs/README.md - add docs/admin/backup.md - add docs/admin/configuration.md - add docs/admin/database.md - add docs/admin/installation.md - add docs/admin/plugins.md - add docs/admin/security.md - add docs/reference/api.md - add docs/reference/glossary.md - add docs/reference/voting-methods.md - add docs/user/communities.md - add docs/user/delegation.md - add docs/user/getting-started.md - add docs/user/settings.md - add docs/user/voting.md - add frontend/.gitignore - add frontend/Dockerfile - add frontend/astro.config.mjs - add frontend/package-lock.json - add frontend/package.json - add frontend/public/favicon.ico - add frontend/public/favicon.svg - add frontend/src/components/AdminNav.astro - add frontend/src/components/ThemeSwitcher.astro - add frontend/src/components/icons/VotingIcons.astro - add frontend/src/components/moderation/LedgerViewer.astro - add frontend/src/components/voting/DelegationGraph.astro - add frontend/src/components/voting/VotingMethodCard.astro - add frontend/src/components/voting/VotingResultsChart.astro - add frontend/src/layouts/Layout.astro - add frontend/src/layouts/PublicLayout.astro - add frontend/src/lib/api.ts - add frontend/src/lib/themes.ts - add frontend/src/pages/about.astro - add frontend/src/pages/admin/approvals.astro - add frontend/src/pages/admin/invitations.astro - add frontend/src/pages/admin/plugins.astro - add frontend/src/pages/admin/roles.astro - add frontend/src/pages/admin/settings.astro - add frontend/src/pages/admin/voting.astro - add frontend/src/pages/communities.astro - add frontend/src/pages/communities/[slug]/index.astro - add frontend/src/pages/communities/[slug]/plugins.astro - add frontend/src/pages/communities/[slug]/proposals/index.astro - add frontend/src/pages/communities/[slug]/proposals/new.astro - add frontend/src/pages/communities/[slug]/settings.astro - add frontend/src/pages/communities/[slug]/voting-config.astro - add frontend/src/pages/communities/new.astro - add frontend/src/pages/dashboard.astro - add frontend/src/pages/delegations.astro - add frontend/src/pages/demo.astro - add frontend/src/pages/docs.astro - add frontend/src/pages/features.astro - add frontend/src/pages/index.astro - add frontend/src/pages/login.astro - add frontend/src/pages/manifesto.astro - add frontend/src/pages/notifications.astro - add frontend/src/pages/proposals.astro - add frontend/src/pages/proposals/[id].astro - add frontend/src/pages/register.astro - add frontend/src/pages/settings.astro - add frontend/src/pages/setup.astro - add frontend/src/pages/users/[username].astro - add frontend/tsconfig.json - add scripts/.dev/state.json - add scripts/demo-reset.ps1 - add scripts/demo-reset.sh - add scripts/dev-start.ps1 - add scripts/dev-start.sh - add scripts/dev-stop.ps1 - add scripts/dev-stop.sh - add scripts/dev-test.ps1 - add scripts/dev.ps1 - add scripts/dev.sh - add scripts/post-reboot-setup.ps1 - add scripts/prepare-production.ps1 Diffstat: - 483 files changed, 61980 insertions(+)
2026-01-27 16:21:58 +00:00
## Acknowledgments
Inspired by:
- [Pol.is](https://pol.is/) — Opinion mapping
- [Decidim](https://decidim.org/) — Participatory democracy
- [LiquidFeedback](https://liquidfeedback.org/) — Liquid democracy
- [Equal Vote Coalition](https://www.equal.vote/) — STAR Voting