草庐IT

jsmind思维导图多人协作版

kananc 2023-03-28 原文

jsmindmulti

jsmind思维导图多人协作版(可本地安装、可扩展源码)

源码下载地址 https://gitee.com/aqu415/jsmindmulti

介绍

  • 多人协作脑图,站在巨人的肩膀上:前台是赫赫有名的开源的 jsMind (可自己改源码,接口丰富、扩展性强),本工具中对jsMind源码做了小小的改动;
  • 适合不能访问外网、或者不想把数据放外网的公司(现在很多互联网免费的协作脑图产品,但是有的敏感数据并不想放外网)
  • 多人协作思维导图主要采用python django web框架,如果不熟悉的可以先补一下;
  • Django快速入门视频推荐:https://www.bilibili.com/video/BV1JW411i7W1
  • 选择python是因为感觉用django开发一个简单网页会比java更快,但是这里我要吐槽一下python里用缩进区分语句块,稍不注意代码就乱了(感觉还是大括号好)

软件架构


image


安装教程

  • 安装依赖

    • 安装 Python ,我本地(win系统)安装的是 Python 3.7.8rc1 ,版本比这个大就应该可以
    • 安装依赖,在工程根目录执行 pip install -r reuqirements.txt 将项目的依赖安装到python目录(类似java里的maven),如果想把相关依赖安装到其他目录进行分类管理可以采用virtualenvwrapper
    • image
  • 数据库

    • 在 jsmindmulti/settings.py 的 DATABASES 进行配置,配置文件里默认用的mysql,可以改成django支持的数据库

    • image
    • 初始化数据库脚本,执行以下命令就会将系统运行所需要的表结构创建好

       python manage.py makemigrations
      
       python manage.py migrate
      
    • 核心数据主要存在这两个表中:

      -- 思维导图表
      select * from cooperation_mind  order by id desc;
      
      -- 思维导图操作日志表
      select * from cooperation_mind_log order by id desc;
      
  • 启动程序

    • 开发环境启动可以在项目根路径里直接执行 python manage.py runserver 0.0.0.0:8000 开启本地的服务;如果是生产环境,还需要加入nginx(我理解是提高并发等,参考:https://www.jianshu.com/p/3172566156fe/)
    • image

效果

  • 打开多个浏览器点击"编辑"详情进行编辑

[图片上传失败...(image-37b018-1648349706413)]

源码下载地址 https://gitee.com/aqu415/jsmindmulti

有关jsmind思维导图多人协作版的更多相关文章

  1. 常见网络安全产品汇总(私信发送思维导图) - 2

    安全产品安全网关类防火墙Firewall防火墙防火墙主要用于边界安全防护的权限控制和安全域的划分。防火墙•信息安全的防护系统,依照特定的规则,允许或是限制传输的数据通过。防火墙是一个由软件和硬件设备组合而成,在内外网之间、专网与公网之间的界面上构成的保护屏障。下一代防火墙•下一代防火墙,NextGenerationFirewall,简称NGFirewall,是一款可以全面应对应用层威胁的高性能防火墙,提供网络层应用层一体化安全防护。生产厂家•联想网御、CheckPoint、深信服、网康、天融信、华为、H3C等防火墙部署部署于内、外网编辑额,用于权限访问控制和安全域划分。UTM统一威胁管理(Un

  2. ruby - 配置思维 sphinx 和飞行 sphinx 时出错 - 2

    我在Heroku上运行了Rails3应用程序。我在我的应用程序中使用ThinkingSphinx搜索引擎。为了让它与Heroku一起工作,我按照Heroku文档中的建议向我的gemfile添加了一个flying-sphinxgem。这是我的gemfile中的内容gem'thinking-sphinx','2.0.11'gem'flying-sphinx','0.7.0'按照此处提到的步骤https://devcenter.heroku.com/articles/flying_sphinx,添加flying-sphinx插件后(Herokuaddons:addflying_sphinx:

  3. ruby - 思维狮身人面像未知类型 'mysql';跳绳 - 2

    我使用的是ts版本2.0.5、rails3.0.9和mysql20.2.11尝试使用rakets:index创建索引时,出现以下错误:ERROR:source'technical_core_0':unknowntype'mysql';skipping.我的development.sphinx.conf包含:sourcetechnical_core_0{type=mysqlsql_host=localhostsql_user=rootsql_pass=sql_db=ps_developmentsql_sock=/tmp/mysql.socksql_query_pre=SETNAMESut

  4. javascript - 多人游戏 Action 同步 - 2

    我正在开发一款多人游戏,但我在同步玩家时遇到了问题。当玩家按下其中一个移动键(W、A、S、D)时,客户端会发送一个关于按下按钮的数据包,服务器会根据按下的键设置速度,并向所有附近的玩家发回新速度。当玩家释放按键时,客户端发送一个数据包,服务器将玩家速度设置为0,0,并将位置和速度发送给附近的所有玩家。所以问题是当我释放按键时,大部分时间播放器会跳回。我该如何解决这个问题?我正在使用socket.io。客户端:socket.on('positionEntity',function(data){console.log((data.x-entities[data.id].x)+""+(dat

  5. javascript - 浏览器多人网络策略——这看起来是一个可行的解决方案吗? - 2

    关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭3年前。Improvethisquestion我有兴趣制作某种多人Angular色扮演游戏,作为一种纯粹基于浏览器的游戏,几乎没有或没有插件要求。经过大量研究,我得出了以下计划。我知道我在这里引用的某些技术并未在所有浏览器(特别是IE)中采用,但我暂时愿意接受。另外-我知道MMO在任何情况下都是一个值得为之奋斗的崇高目标,但过去我在类似的方向上做过很多较小的项目,我觉得我想好好尝试一下终于。所以这是一个粗略的概述,我很想听听任何人都可

  6. javascript - Phaser 是否能够进行大型多人游戏? - 2

    这里是新手。我正在使用Phaser,特别是等距插件。我想知道是否可以在Phaser中创建类似于agar.io的游戏,在处理实时多重连接方面,生成一张包含大约300名玩家的巨大map,所有这些都不会对游戏性能产生太大影响。我真的不知道如何处理多人游戏部分(可能是套接字,node.js)才能让它工作得很好。至于生成一个非常大的map,我也很空白。是否有可能在Phaser中创建一个等距类型的游戏来处理多个实时多人游戏和当用户到达可见“map”的边缘时生成的巨大map?如何?如果不是,我应该选择什么(js和其他应用程序中的游戏引擎)来实现我想要的? 最佳答案

  7. javascript - 在 javascript 的协作线程意义上是否有正确的 'yield' 方法? - 2

    我正在编写一个无处不在的插件,ajax查询的长函数回调阻塞了GUI线程,导致firefox锁定。明显的解决方案似乎是使用某种延迟执行(即我们希望定期将执行此查询函数添加到事件队列的末尾,然后允许其他命令待执行。我能想到的唯一方法是使用超时为零的settimeout...这是否保证有效,或者是否有更好的方法。 最佳答案 使用setTimeout并设置一个非常小的超时时间(0或者如果您感到偏执,则非常接近于零)是在浏览器上下文中执行此操作的唯一方法。它工作得很好而且非常可靠,但一定要足够频繁地产生,但不要太,因为它确实需要一段时间才能返

  8. javascript - OnClick 突然无法在 Chrome 中的 Google 协作平台上运行 - 2

    我编写了一个页面,该页面使用带有onclick的按钮来调用一个函数,作为我的学生练习题和答案集的一部分。它从7月开始一直有效,至少在9月5日星期五之前没有出现任何问题。今天,这些按钮在Chrome中根本无法运行,我想不通为什么。它们在IE中继续正常运行。我已经发布了我能写的最简单的代码,但在下面是行不通的。这非常简单,老实说我认为这很好。如果我将整个内容粘贴到JSFiddle的HTML框中,它似乎可以工作,但如果我尝试分离脚本,它不会执行任何操作。我不知道那是因为它坏了还是因为我把它分开了。我在尝试调试它时遇到了麻烦,主要是因为Google协作平台将您的工作完全重写为它自己的格式,如果

  9. “SCSA-T学习导图+”系列:IPSec VPN原理与应用 - 2

    本期引言:本章主要讲解IPSecVPN相关理论概念,工作原理。从安全和加密原理入手,讲解了IPSec在VPN对等体设备实现的安全特性,如数据的机密性、数据的完整性,数据验证等。重点分析IPSec封装模式,IPSec安全协议,IPSec密钥交换等知识为整个IPSec知识体系打下坚实的基础。IPsec协议介绍:需求背景随着Internet的发展,由于IP协议未考虑安全性,而且Internet上有大量的不可靠用户和网络设备,所以业务数据要穿越这些未知网络,无法保证数据的安全性,数据易被伪造、篡改或窃取。为了解决上述问题,IPSec(InternetProtocolSecurity)应运而生。IPSe

  10. javascript - 用于团队/教育协作的 Node.js 白板应用程序 - 2

    按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。我正在寻求构建/调整用于团队和教育协作的共享白板应用程序。在板上绘图、写一些文本、保存图片、清除板等。我们已经使用node.js和socket.io设置了一个简单的聊天系统,所以可能想继续走这条路。存在哪些开源应用程序可以插入/适应此用途?哪些node.js/javascript/html5技术可能对这项任务有用?

随机推荐