# Table of Contents 1. [Development Log](#org3e76e00) INPUTLOOP.COM - internet service bus Assertion based stream and transactional data federation toolkit. Initial TODO: - [X] Start detailed project planning (this file) - [X] Make a git repository for the project - [ ] Start the homepage - [ ] Add authorized users area to website - [ ] write webservice access control configuration - [ ] create seed password file and set permissions - [ ] create authorized user landing page - [ ] add login form to homepage - [ ] configure feil2ban to guard login form and protected resources - [-] Add simple file upload - [X] install CGI::Upload - [ ] create file upload CGI program in Perl - [ ] accept/require the following multi-part form-data: - file-stream (0bytes .. 1.2GB limit) - filename (required, generate if none, don't error unless stream is also zero bytes) - title (text field, optional, becomes commit short description) - description (textarea, optional, becomes commit message body) - overwrite (optional, checkbox; when form passes a truthy value overwrite, otherwise error) - files are placed in users home directories into ~/Uploads which is a symlink to /srv/git//Uploads - upon first use by user, create this directory structure and initialize git within the upload folder - git commit upon successfully writing the uploaded file to disc - [ ] install within protected site area - [ ] add file browser for Upload area (CGIT probably, but web server allow-indexing might be fine) - [ ] create system users and groups, configure rsync - [ ] Add system users/keys for alpha users/testers - [ ] Add user settings to website - [ ] Add user sync settings to website - [ ] Add live-cast to website - [ ] audio - [ ] video - [ ] Add live-editor page to website - [ ] audio - [ ] video - [ ] Create projects area (ability for users to create system groups and for the various tools to save/load/use them) - [ ] Add user privacy flag and ability to browse non-private users, add them to projects, and share uploaded files and open mixes or active streams with them - [ ] Add ability for users to generate share-with-me links so private users can invite specific people to share directly with them # Development Log `2025-05-16` bought this domain several years back to host a javscript based audio editor I made; I was thinking of making it edit video, sync audio with video, etc. tedious chores which, like clipping big audio files into little ones and annotating them with meta-data, is more fun when several people work together on a given project. Recently, other projects have necessitated additional tooling for arbitrary ad-hoc data-sharing between peers. Things like file sharing on the go or throwing a hunk of audio from one person another in near-real-time have been coming up a lot so it seemed to make sense to re purpose this project somewhat more generally, so it can serve as a "big tent" for working on these problems. Created an initial repo for sources for this on my gitea instance.