新起点丨重构UI,JumpServer开源堡垒机v2.0发布

发布于 2020年06月22日

6月18日,JumpServer开源堡垒机正式发布v2.0版本。在此次升级中,JumpServer堡垒机使用Vue+ElementUI进行了前端页面的重构,同时完成若干功能优化和Bug修复。

重构 Web 前端界面

相比上一个发布的JumpServer v1.5.9版本,JumpServer项目的版本号跨度较大,主要原因是在前端架构发生了重要的变化。

在v2.0版本中,JumpServer堡垒机通过前端重构向用户交付全新的应用体验。JumpServer原来的前端架构自2015年启用,已经使用了5年的时间。伴随着前后端分离技术趋势的盛行,JumpServer自2019年第四季度开始酝酿前端重构工作,并且在开源社区广泛征求用户的意见和建议。

上一版本的前端架构采用了BootStrap+JQuery的组合,应用体验与用户的实际需求存在落差。同时,由于前后端没有分离,开发逻辑存在冗余问题,页面操作和API也存在不统一等问题。此外,JQuery的开发相对繁琐,限制了开发的延展性。

JumpServer项目研发团队自2020年1月正式启动前端重构工作,选择的是Vue+ElementUI的技术路线。在做技术路线选择时,研发团队首先抛弃了React这样的纯前端语言,在Angular和Vue中选择了具有更加快捷开发模式的Vue。UI框架方面,研发团队选择了ElementUI,与FIT2CLOUD旗下的KubeOperator、MeterSphere产品线保持一致。

整个前端重构过程耗时6个月,新的前端架构对大量基础组件进行抽象,同时在样式方面保留了原有的风格,使得用户的使用习惯得以延续,并且会在未来持续优化和改进。新的前端界面在通用组件封装、基础组件抽象等方面投入了大量资源,让用户操作更加容易。

▲图1 JumpServer堡垒机v2.0仪表盘

■ 各模块间统一了导入/导出及搜索界面

▲图2 用户列表界面

■ 修改了包括Table、Heading在内的布局

▲图3 资产列表界面

■ 用户详情页布局统一,均使用Tab格式

▲图4 用户详情界面

■ 优化创建更新页面

▲图5 用户创建界面

功能优化

■ Core优化、添加部分API;

■ Core优化、删除大部分View及Template模块。

Bug 修复

■ Luna修复API请求路径错误的问题。