Name: learn-ide-3
Owner: Learn.co
Description: This package is in beta, https://github.com/learn-co/learn-ide is the stable release
Created: 2017-07-27 14:44:19.0
Updated: 2017-11-05 19:19:14.0
Pushed: 2017-08-04 18:59:49.0
Size: 5546
Language: JavaScript
GitHub Committers
User | Most Recent Commit | # Commits |
---|
Other Committers
User | Most Recent Commit | # Commits |
---|
Learn IDE 3 is a fully featured text editor for Learn. It provides a remote development environment to allow users to get started coding using real tools without the pain of setting one up locally. It is built on top of Github's open source Atom editor.
The Learn IDE client is a modified Atom build with two packages injected to provide functionality with a remote backend that provides a ready to go development environment for Learn users.
Atom Packages:
Related libraries:
The Learn IDE application currently uses Atom at v1.14.4, which runs Electron at v1.3.13. While developling, be sure that you are referring to the documentation that corresponds to these specific versions.
clone https://github.com/learn-co/learn-ide-3.git
clone https://github.com/learn-co/learn-ide-3-tree.git
clone https://github.com/learn-co/learn-ide-3-notifications.git
npm install
in each repoapm link
inside each repo - This will create a sym link to your .atom directory, making the plugin available for use.gulp build
- Builds the Atom application with our packages injected ready for distribution and swaps out icons and names to brand it the Learn IDE. On Mac, this will automatically attempt to sign the application using Flatiron School's development certificate (which must be installed on your machine). On Windows, the installer must be signed manually.
./scripts/build-linux
This scripts will ssh
onto a host that you give it, and output .deb
and .rpm
distros to a given location. It's useful if you are working on a mac, and have a dedicated linux build server. See the script itself for more info on usage.
Ensure the packageDependencies
are up-to-date in package.json
, then:
apm publish <major|minor|patch>
- bumps the package version according to the specified semver segment, tags it, and publishes the tag to apmpackage.json
, e.g. the pre-release version for v2.5.0 would be 2.5.0-beta0
v<version>
, e.g. git commit -am "prep v2.5.0-beta0" && git tag v2.5.0-beta0
git push && git push --tags
apm publish --tag <tag>
, e.g. apm publish --tag v2.5.0-beta0
You can configure the Learn IDE by creating a .env
file either in Atom's home (e.g. ~/.atom/.env
) or wherever the package is being run (e.g. ~/development-stuff/learn-ide/.env
). The following keys can be used:
Key | Default Value | Function
—————- | —————— | ——–
IDE_WS_HOST | ide.learn.co
| The host used for websocket connections
IDE_WS_PORT | 443
| The port used for websocket connections
IDE_WS_TERM_PATH | socket
| The path used for websocket connections
IDE_LEARN_CO | https://learn.co
| The location of learn to connect to
The IDE_LEARN_CO
key is useful for developers and testers at Flatiron School, as it can be used to point the client to a local or QA environment; however, it does not change the IDE server's knowledge of Learn's location. In other words, you must sign in to the IDE with a production user, as the IDE servers will authenticate you against the Learn production environment.
Learn IDE is MIT licensed