ColabGeek is designed to help run useful tools on Google Colab, including port forwarding, web IDE and so on. It is worth noting that this package is also compatible with other Ubuntu operating system servers, so try on other platforms as well.
Project description
ColabGeek
ColabGeek Python package is designed to help run useful tools on Google Colab, including web IDE, port forwarding and so on. It is worth noting that this package is also compatible with other Ubuntu operating system based servers, so try this package on other platforms as well.
Installation
pip install ColabGeek
Get started
First load the ColabGeek module and update all the packages and dependencies in the system.
import ColabGeek
ColabGeek.update_environment()
Initiate the Colab session by add linux users and mount Google Drive.
main = ColabGeek.ColabSession(user='Knight',password='midnight',mount_GD=True)
As a cloud computing platform based on Jupyter notebooks, Google Colab does not provide a top-notch comfortable environment for R language data analysis and other non-Python programming. Therefore, this project provides a method for quickly installing other web IDE on Google Colab, enabling it to expand its range of capabilities.
Run code server
code server is a web IDE provided by Coder that enables developers to write, run and debug code from a web browser. It is built on the open-source Visual Studio Code editor and offers many of the same features, such as code highlighting, auto completion, and debugging.
# ColabGeek.Run_code_server has the following parameters:
# - port The port you want to run code server on, set to None to use the default port.
# - password The code server login password, set to None and use the linux user password by default.
# - verbose Show the running logs.
main.Run_code_server()
You can also install code server extension by providing extension id or the path of the VSIX file downloaded from vscode marketplace.
# ColabGeek.Install_code_server_extension has the following parameters:
# - extension The extension id or the path of the VSIX file.
# - verbose Show the running logs.
main.Install_code_server_extension(extension='ms-python.anaconda-extension-pack')
You can also config code server through ColabGeek.Config_code_server
method.
# ColabGeek.Config_code_server has the following parameters:
# - property Matching the key in settings.json config file.
# - value Matching the value in settings.json config file.
main.Config_code_server(property='workbench.colorTheme',value='Default Dark+')
main.Config_code_server(property='editor.fontSize',value=18)
main.Config_code_server(property='terminal.integrated.fontSize',value=18)
main.Config_code_server(property='files.autoSave',value='off')
Run Rstudio server
Rstudio server is a web IDE for R programming. With Rstudio server, users can run R scripts, create and manage R projects, develop and test code, and share their work with others. Rstudio server also offers powerful features such as syntax highlighting, code completion, debugging and data visualization.
# ColabGeek.Run_Rstudio_server has the following parameters:
# - port The port you want to run Rstudio on, set to None to use the default port.
# - verbose Show the running logs.
main.Run_Rstudio_server()
Google Colab does not allow any internet connections to their servers except the official web interface. So, port forwarding methods are required to proxy the web IDE installed.
localtunnel
# ColabGeek.Run_localtunnel has the following parameters:
# - port The port you want to expose to localtunnel, set to None and you will use the default port.
# - host Check the localtunnel document.
# - subdomain The customized localtunnel URL, check the localtunnel document. (Do not include '_' in the subdomain!)
main.Run_localtunnel()
ngrok
# ColabGeek.Run_ngrok has the following parameters:
# - token The token of your personal ngrok account. Sign up one, it is free.
# - port The port you want to expose to ngrok, set to None and you will use the default port.
# - domain The customized ngrok URL, check the ngrok document.
main.Run_ngrok()
For now, all the port forwarding methods built in ColabGeek only accept http protocal. I am still tring to add TCP forwarding methods to ColabGeek. If you have any good ideas and advices, leave an issue.
shadowsocks
Although not allowed by Google and not recommended by myself, building a proxy server using Colab sounds pretty 'Geek'. However, due to the lack of TCP forwarding method, ColabGeek can now only install shadowsocks on Colab but have no method to help to connect it. Just use this method on your own Ubuntu servers, that should work.
# ColabGeek.Run_shadowsocks has the following parameters:
# - port The server port of shadowsocks, set to None and you will use the default port.
# - password The shadowsocks password.
# - encrypt The shadowsocks encrypt method.
main.Run_shadowsocks()
Jekyll
Jekyll is a simple, blog-aware, static site generator that allows users to create their own websites or blogs without the need for databases or server-side programming languages. It takes text written in Markdown, processes it through a template engine, and generates a ready-to-publish static website. ColabGeek now provides a method to automatically install Jekyll and all of its dependencies. Users can easily access their Jekyll sites using tunneling methods, also provided by ColabGeek.
# ColabGeek.Install_Jekyll has the following parameters:
# - version Which version of Ruby you would like to install? The latest stable version is recommended.
# - verbose Show the running logs.
main.Install_Jekyll(version='3.2.2',verbose=True)
Statement
ColabGeek violated numerous community rules of Google Colab. But still, I developed ColabGeek, because the simple Jupyter interface just does not meet the requirements of many software applications and is not user-friendly for coding in non-Python languages. I recommend all ColabGeek users purchase Colab Pro or Pro+ to support the excellent services provided by Google. Keep in mind, avoid misuse and Don't Be Evil.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file ColabGeek-1.2.3.tar.gz
.
File metadata
- Download URL: ColabGeek-1.2.3.tar.gz
- Upload date:
- Size: 10.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5e695e8f36b29c9d019e05af03f3dcc319a176b097a4814aba3a8d807293d088 |
|
MD5 | dbba8bc699aff995492273bcedd1a28c |
|
BLAKE2b-256 | a01b3ccfc900c0b5895570ef8bb3b845c21d58891ae0c9a0f2625dbea956c89a |
File details
Details for the file ColabGeek-1.2.3-py3-none-any.whl
.
File metadata
- Download URL: ColabGeek-1.2.3-py3-none-any.whl
- Upload date:
- Size: 9.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.10.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b1e107f67ac8f8b37e355fd599a359fdf6431222d700241b141f86e4d71fe1b8 |
|
MD5 | fd8e53fb716b1c8f1ea26b09104c3abe |
|
BLAKE2b-256 | 9a5c55ba0ab74ece86c00979053ab1368d2bb0fe0418a0e61134bb948272d51e |