{"id":50055824,"url":"https://github.com/cfms-dev/cfms_on_websocket","last_synced_at":"2026-05-21T13:06:36.321Z","repository":{"id":299436435,"uuid":"922915763","full_name":"cfms-dev/cfms_on_websocket","owner":"cfms-dev","description":"A server-side implementation of a complete system designed for managing confidential documents, called Confidential File Management System (CFMS), running on the WebSocket protocol.","archived":false,"fork":false,"pushed_at":"2026-05-19T14:43:49.000Z","size":620,"stargazers_count":0,"open_issues_count":4,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2026-05-19T14:55:06.203Z","etag":null,"topics":["confidential","file-management","management-system","server","websocket"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cfms-dev.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-01-27T10:18:23.000Z","updated_at":"2026-05-17T04:23:40.000Z","dependencies_parsed_at":"2026-02-11T07:07:20.804Z","dependency_job_id":"cca459f8-0249-43fa-a0d9-6c8a0ced0ac0","html_url":"https://github.com/cfms-dev/cfms_on_websocket","commit_stats":null,"previous_names":["creeper19472/cfms_on_websocket","cfms-dev/cfms_on_websocket"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/cfms-dev/cfms_on_websocket","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cfms-dev%2Fcfms_on_websocket","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cfms-dev%2Fcfms_on_websocket/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cfms-dev%2Fcfms_on_websocket/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cfms-dev%2Fcfms_on_websocket/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cfms-dev","download_url":"https://codeload.github.com/cfms-dev/cfms_on_websocket/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cfms-dev%2Fcfms_on_websocket/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33301558,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-21T12:23:38.849Z","status":"ssl_error","status_checked_at":"2026-05-21T12:22:11.673Z","response_time":62,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["confidential","file-management","management-system","server","websocket"],"created_at":"2026-05-21T13:06:34.584Z","updated_at":"2026-05-21T13:06:36.312Z","avatar_url":"https://github.com/cfms-dev.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# CFMS on WebSocket\n\nCFMS (Confidential File Management System), is a complete solution for \nmanaging confidential documents. This is the repository used to \nimplement server functionality.\n\nThe Project is still in the early stages of development and cannot \nguarantee the security and stability of running the Service. \n\nWelcome to Github Issues for improvements and bug reports.\n\nYou can access the Chinese Simplified version of the development \ndocumentation here: [CFMS Server Documentation][doc-url] \nHowever, Since this document was written specifically for the previous \nversion of CFMS, much of it may be outdated. If possible, use code \ncomments as the primary reference.\n\n[doc-url]: https://cfms-server-doc.readthedocs.io/zh_CN/latest\n\n## Quick Setup\n\n```bash\n# Clone repo\ngit clone https://github.com/cfms-dev/cfms_on_websocket.git\n\n# Enter working dir\ncd cfms_on_websocket/src\n\n# Setup submodules\ngit submodule init\ngit submodule update --depth=1\n\n# Setup dependencies\nuv sync --upgrade\n\n# Activate virtual environment\nsource .venv/bin/activate\n```\n\n## Optional Dependencies\n\nCFMS has some optional features that require additional dependencies to be \ninstalled to enable them. For example, the following command will install \nthe necessary dependencies for cluster functionality and MySQL support:\n\n```bash\nuv sync --extra cluster --extra mysql\n```\n\n## Run\n```bash\npython main.py # DO NOT use `-O`!\n```\n\n## Database Migrations\nThe structure of the database varies between different server versions. In order \nto allow server operators to upgrade to latest versions easily, here, we use \nAlembic to handle database migrations.\n\n**Note:** \n1. Remember to backup your databases in advance to avoid data losses.\n\n2. Configs and generated revisions in `/src/include/alembic/versions/` of \nAlembic is designed for sqlite databases, and we don't guarantee that other types \nof databases can be successfully upgraded via these revisions.\n\nIf you have not used Alembic yet, please run the command below **before** you \ncheckout new changes:\n\n```bash\nalembic stamp head\n```\n\nThen checkout the server version you wanted and run:\n\n```bash\nalembic upgrade head \n``` \n\n## Development\n\nConsider using pre-commit to provide an automated code standardization experience.\n\n```bash\n# Install development dependencies\nuv sync --dev\n\n# Install pre-commit hooks\nuv run pre-commit install\n```\n\n## Testing\n\nThis repository includes an automated test suite built with pytest. Note that\nyou should finish the installation before running tests.\n\nTo run the tests:\n\n```bash\n# Install dependencies\nuv sync --dev\n\n# Run all tests\nuv run pytest\n\n# Run specific test files\nuv run pytest tests/test_basic.py\n```\n\nFor more information about the test suite, see [tests/README.md](tests/README.md).\n\n## Security\n\nWe do our utmost to prevent and resolve security issues within our capabilities. \nIf you discover any existing vulnerabilities, you are welcome to submit a report \nto us.\n\n## Contributing\n\nThis is a project that is under active development and we are looking \nfor people interested in the project to participate in testing. We are \nwell aware that the system still has huge shortcomings as a functional \nsolution – and we want as many people as possible to join in improving \nthem.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcfms-dev%2Fcfms_on_websocket","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcfms-dev%2Fcfms_on_websocket","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcfms-dev%2Fcfms_on_websocket/lists"}