command
module
Version:
v0.0.0-...-2210eac
Opens a new window with list of versions in this module.
Published: Oct 14, 2015
License: Apache-2.0
Opens a new window with license information.
Imports: 23
Opens a new window with list of imports.
Imported by: 0
Opens a new window with list of known importers.
README
¶
Wide
Have a try first, then download and setup it on your local area network, enjoy yourself!
先试试我们搭建好的在线服务,你可以在这里下载并在本地环境运行,然后邀请小伙伴们来玩吧!
- 关于 Wide 的产品定位,请看这里,并欢迎参与讨论~
- 加入黑客派,与其他程序员、设计师共同成长!
Introduction
A Web-based IDE for Teams using Go programming language/Golang.
Motivation
- Team IDE:
- Safe and reliable: the project source code stored on the server in real time, the developer's machine crashes without losing any source code
- Unified environment: server unified development environment configuration, the developer machine without any additional configuration
- Out of the box: 5 minutes to setup a server then open browser to develop, debug
- Version Control: each developer has its own source code repository, easy sync with the trunk
- Web-based IDE:
- Developer needs a browser only
- Cross-platform, even on mobile devices
- Easy to extend
- Easy to integrate with other systems
- For the geeks
- A try for commercial-open source: versions customized for enterprises, close to their development work flows respectively
- Currently more popular Go IDE has some defects or regrets:
- Text editor (vim/emacs/sublime/Atom, etc.): For the Go newbie is too complex
- Plug-in (goclipse, etc.): the need for the original IDE support, not professional
- LiteIDE: no modern user interface :p
- No team development experience
- There are a few of GO IDEs, and no one developed by Go itself, this is a nice try
Features
- Code Highlight, Folding: Go/HTML/JavaScript/Markdown etc.
- Autocomplete: Go/HTML etc.
- Format: Go/HTML/JSON etc.
- Build & Run
- Multiplayer: a real team development experience
- Navigation, Jump to declaration, Find usages, File search etc.
- Shell: run command on the server
- Web development: HTML/JS/CSS editor with Emmet integrated
- Go tool: go get/install/fmt etc.
- File Import & Export
- Themes: editor and UI adjust, respectively
- Cross-Compilation
- Debug
- Git integration: git command on the web
Screenshots
-
Overview
-
Goto File
-
Autocomplete
-
Theme
-
Show Expression Info
-
Build Error Info
-
Git Clone
-
Cross-Compilation
Architecture
Build & Run
- A browser tab corresponds to a Wide session
- Execution output push via WebSocket
Flow:
- Browser sends
Build
request
- Server executes
go build
command via os/exec
2.1. Generates a executable file
- Browser sends
Run
request
- Server executes the file via
os/exec
4.1. A running process
4.2. Execution output push via WebSocket channel
- Browser renders with callback function
ws.onmessage
Code Assist
- Autocompletion
- Find Usages/Jump To Declaration/etc.
Flow:
- Browser sends code assist request
- Handler gets user workspace of the request with HTTP session
- Server executes
gocode
/ide_stub(gotools)
3.1 Sets environment variables (e.g. ${GOPATH})
3.2 gocode
with lib-path
parameter
Documents
Setup
Download Binary
We have provided OS-specific executable binary as follows:
- linux-amd64/386
- windows-amd64/386
- darwin-amd64/386
Download HERE!
Build Wide for yourself
- Download source or by
git clone https://github.com/b3log/wide
- Get dependencies with
go get
go get github.com/visualfc/gotools github.com/nsf/gocode github.com/bradfitz/goimports
- Compile wide with
go build
Docker
- Get image:
sudo docker pull 88250/wide:latest
- Run:
sudo docker run -p 127.0.0.1:7070:7070 88250/wide:latest ./wide -docker=true -channel=ws://127.0.0.1:7070
- Open browser: http://127.0.0.1:7070
Known Issues
Terms
- This software is open sourced under the Apache License 2.0
- You can not get rid of the "Powered by B3log" from any page, even which you made
- If you want to use this software for commercial purpose, please mail to support@liuyun.io for a commercial license request
- Copyright © b3log.org, all rights reserved
Credits
Wide is made possible by the following open source projects.
Documentation
¶
There is no documentation for this package.
Source Files
¶
Directories
¶
Package conf includes configurations related manipulations.
|
Package conf includes configurations related manipulations. |
Package editor includes editor related manipulations.
|
Package editor includes editor related manipulations. |
Package event includes event related manipulations.
|
Package event includes event related manipulations. |
Package file includes file related manipulations.
|
Package file includes file related manipulations. |
Package i18n includes internationalization related manipulations.
|
Package i18n includes internationalization related manipulations. |
Package log includes logging related manipulations.
|
Package log includes logging related manipulations. |
Package notification includes notification related manipulations.
|
Package notification includes notification related manipulations. |
Package output includes build, run and go tool related manipulations.
|
Package output includes build, run and go tool related manipulations. |
Package shell include playground related mainipulations.
|
Package shell include playground related mainipulations. |
scm
|
|
|
|
Package session includes session related manipulations.
|
Package session includes session related manipulations. |
Package shell include shell related mainipulations.
|
Package shell include shell related mainipulations. |
Package util includes common utilities.
|
Package util includes common utilities. |
Click to show internal directories.
Click to hide internal directories.