Simplism IDE is a "local cloud development environment" (*) to develop Extism plug-ins for the Simplism HTTP server without the need to install all the "complicated things".
(*) but you can use it remotely
The current version of Simplism is: simplism v0.1.1 🌕 [full moon]
- git clone this repository
- The parameters (architecture and version of the installed softwares) are defined in the
.env
.
Start Simplism IDEI:
docker compose --env-file arm64.env up -d
# docker compose --env-file amd64.env up -d
- ✋ if you are on a arm architecture (mac silicon or linux arm) use
arm64.env
- otherwise use
amd64.env
Then go to: http://0.0.0.0:4060/?folder=/workspace
If you updated ./.docker/compose/Dockerfile
or get a new version of this project, run this command before starting the builder:
docker compose --env-file arm64.env build
# docker compose --env-file amd64.env build
Stop the builder:
docker compose --env-file arm64.env down
# docker compose --env-file amd64.env down
If you want to start some initial tasks (like installing VSCode extension) once the Simplism IDE container is started, you can update ./.tasks/init.sh
To write a Simplism plug-in have a look to the Simplism documentation:
- Create and serve an Extism (wasm) plug-in
- Create a JSON service with an Extism plug-in
- Start an Simplism service from a configuration file
- Start all the Slimplism services from a config file with the Flock mode
Update the *.env
files with the name of the certificate and the key:
For example:
TLS_CERT=ide.simplism.cloud.crt
TLS_CERT_KEY=ide.simplism.cloud.key
- Copy the certificate and the key to the
./certs
folder - Give the appropriates rights to the files:
chmod 777 ide.simplism.cloud.*
- Add this to your hosts file:
0.0.0.0 ide.simplism.cloud
- Use this entrypoint in the
compose.yaml
file:entrypoint: ["code-server", "--cert", "/workspace/certs/${TLS_CERT}", "--cert-key", "/workspace/certs/${TLS_CERT_KEY}", "--auth", "none", "--host", "0.0.0.0", "--port", "${CODER_HTTP_PORT}", "/workspace"]
open https://ide.simplism.cloud:4060
Install mkcert
On macOS:
brew install mkcert
# just once
# Install a new local CA in the system trust store
mkcert -install
cd certs
mkcert \
-cert-file pi.personal.faas.crt \
-key-file pi.personal.faas.key \
personal.faas "*.personal.faas" localhost 127.0.0.1 ::1
0.0.0.0 pi.personal.faas
the URL will be https://pi.personal.faas:4060
Open a terminal from the Web IDE
- Type this command
git config --global --add safe.directory /ide.simplism.cloud
- And configure git (if necessary):
git config --global user.name @your-handle git config --global user.email your@e.mail