|
|
--- |
|
|
title: Visual Studio Code |
|
|
emoji: 💻 |
|
|
colorFrom: blue |
|
|
colorTo: indigo |
|
|
sdk: docker |
|
|
pinned: true |
|
|
license: mit |
|
|
short_description: An online VS Code on the Web, now equipped with toolchains. |
|
|
--- |
|
|
# 💻 VS Code on the Web IDE with Auto Backup |
|
|
|
|
|
This Space runs **VS Code on the Web** with a **full developer toolchain**, ready for mega collaboration: |
|
|
|
|
|
# Checklist |
|
|
|
|
|
## Compilers / Runtimes (Installed) |
|
|
- Python ✔ (3.12.11 64-bit, pip 25.2) |
|
|
- C (gcc) ✔ (11.4.0) |
|
|
- C++ (g++) ✔ (11.4.0) |
|
|
- Clang ✔ (14.0.0) |
|
|
- Fortran ✔ (11.4.0) |
|
|
- Rust ✔ (rustc 1.89.0, cargo 1.89.0) |
|
|
- Go ✔ (1.23.0) |
|
|
- Java ✔ (OpenJDK 17.0.16, javac 17.0.16) |
|
|
- .NET / C# ✔ (dotnet SDK 8.0.413) |
|
|
- Node.js ✔ (v20.19.5, npm 10.8.2) |
|
|
- Yarn ✔ (global, latest) |
|
|
- pnpm ✔ (global, latest) |
|
|
|
|
|
## Compilers (Planned) |
|
|
- Haskell ✖ (ghc + cabal) |
|
|
- Julia ✖ |
|
|
- Scala ✖ (scala + sbt) |
|
|
- PHP ✖ (php + composer) |
|
|
- Ruby ✖ |
|
|
|
|
|
--- |
|
|
|
|
|
## Build Tools |
|
|
- GNU Make ✔ (4.3) |
|
|
- CMake ✔ (3.22.1) |
|
|
- Ninja ✔ (1.10.1) |
|
|
- pkg-config ✔ |
|
|
- LLVM toolchain ✔ (llvm, clang, lld, lldb) |
|
|
- Valgrind ✔ |
|
|
- GDB ✔ |
|
|
- Strace ✔ |
|
|
- Ltrace ✔ |
|
|
|
|
|
## Build Tools (Planned) |
|
|
- pigz ✖ |
|
|
- lcov ✖ |
|
|
- zlib1g-dev ✖ |
|
|
- libssl-dev ✖ |
|
|
- libffi-dev ✖ |
|
|
- autoconf ✖ |
|
|
- automake ✖ |
|
|
- libtool ✖ |
|
|
- m4 ✖ |
|
|
- nasm ✖ |
|
|
- yasm ✖ |
|
|
- graphviz ✖ |
|
|
- doxygen ✖ |
|
|
|
|
|
--- |
|
|
|
|
|
## Dev/Utility Tools |
|
|
- Git ✔ |
|
|
- Git LFS ✔ |
|
|
- Git Extras ✔ |
|
|
- curl ✔ |
|
|
- wget ✔ |
|
|
- unzip ✔ |
|
|
- rsync ✔ |
|
|
- sqlite3 ✔ |
|
|
- jq ✔ |
|
|
- htop ✔ |
|
|
- fzf ✔ |
|
|
- Silver Searcher (ag) ✔ |
|
|
- ripgrep (rg) ✔ |
|
|
- tree ✔ |
|
|
- net-tools ✔ |
|
|
- iputils-ping ✔ |
|
|
|
|
|
## Debug + Productivity |
|
|
- tmux ✖ |
|
|
- screen ✖ |
|
|
- neovim ✖ |
|
|
- httpie ✖ |
|
|
- shellcheck ✖ |
|
|
- man-db ✖ |
|
|
- manpages-dev ✖ |
|
|
|
|
|
--- |
|
|
|
|
|
## Code Tools (npm + pip) |
|
|
### npm |
|
|
- typescript ✔ |
|
|
- ts-node ✔ |
|
|
- nodemon ✔ |
|
|
|
|
|
### pip |
|
|
- black ✔ |
|
|
- flake8 ✔ |
|
|
- mypy ✔ |
|
|
- jupyterlab ✔ |
|
|
- ipython ✔ |
|
|
- notebook ✔ |
|
|
- huggingface_hub ✔ |
|
|
- hf_transfer ✔ (with env activated for high-speed upload) |
|
|
|
|
|
## pip Packages (Planned) |
|
|
- numpy ✖ |
|
|
- scipy ✖ |
|
|
- pandas ✖ |
|
|
- matplotlib ✖ |
|
|
- seaborn ✖ |
|
|
- scikit-learn ✖ |
|
|
- jupyter ✖ |
|
|
- torch ✖ |
|
|
- torchvision ✖ |
|
|
- torchaudio ✖ |
|
|
- tensorflow ✖ |
|
|
- keras ✖ |
|
|
- datasets ✖ |
|
|
- transformers ✖ |
|
|
- accelerate ✖ |
|
|
|
|
|
--- |
|
|
|
|
|
## Database Clients (Planned) |
|
|
- mysql-client ✖ |
|
|
- postgresql-client ✖ |
|
|
- redis-tools ✖ |
|
|
- mongodb-clients ✖ |
|
|
|
|
|
--- |
|
|
|
|
|
## Extra Features (WIP) |
|
|
- Global npm install directory: `~/npm_pkg_glob` (to avoid sudo & path issues) |
|
|
|
|
|
|
|
|
### 🔒 Security Hardening |
|
|
|
|
|
- **Bash history is disabled globally**: |
|
|
All interactive shells inside this container are launched with: |
|
|
- `HISTFILE` unset |
|
|
- `HISTSIZE=0`, `HISTFILESIZE=0` |
|
|
- `.bash_history` linked to `/dev/null` |
|
|
|
|
|
👉 This ensures **no command history is ever logged to disk**, protecting sensitive tokens and commands. |
|
|
|
|
|
--- |
|
|
|
|
|
### 🗂️ Auto Backup |
|
|
|
|
|
This feature is still WIP. Stay tuned! |
|
|
|
|
|
--- |
|
|
|
|
|
### ⚠️ Important Notes |
|
|
|
|
|
1. I **STRONGLY ADVISE** against putting credentials directly into the IDE. If you must use them, *remove them immediately* after use to prevent accidental leaks and misuse. |
|
|
2. All command history is disabled for your safety — but *always treat the `/workspace` folder contents as sensitive*. |
|
|
3. If you plan to duplicate this Space for backups, **DO NOT** make the Space public! Environment variables in Hugging Face Spaces can be exposed to anyone with container access (e.g., via `env`, `printenv`, or process inspection). |
|
|
4. I am **NOT** responsible for any damages caused by leaked passwords/tokens from this Space — so take extreme care with your credentials. |
|
|
|
|
|
### ℹ️ Additional Notes |
|
|
|
|
|
- Since this Space is hosted remotely (not locally), you may experience some latency when performing actions. |
|
|
- This IDE is designed for collaborative coding — so feel free to invite friends and enjoy a **feature-packed online coding adventure**! 🚀 |