|
|
--- |
|
|
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 local), 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**! π |