{"id":13609406,"url":"https://github.com/chkas/easylang","last_synced_at":"2025-04-12T20:31:52.534Z","repository":{"id":38334960,"uuid":"406023334","full_name":"chkas/easylang","owner":"chkas","description":"An easy programming language that runs in the browser","archived":false,"fork":false,"pushed_at":"2025-03-31T10:39:15.000Z","size":2393,"stargazers_count":172,"open_issues_count":0,"forks_count":4,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-10T07:55:18.786Z","etag":null,"topics":["learn-to-code","programming-language"],"latest_commit_sha":null,"homepage":"","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chkas.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-09-13T15:15:55.000Z","updated_at":"2025-04-07T16:13:32.000Z","dependencies_parsed_at":"2023-11-21T14:27:09.590Z","dependency_job_id":"f452698a-b444-4581-aa3d-b1d6e4b4ae4e","html_url":"https://github.com/chkas/easylang","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chkas%2Feasylang","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chkas%2Feasylang/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chkas%2Feasylang/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chkas%2Feasylang/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chkas","download_url":"https://codeload.github.com/chkas/easylang/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248629675,"owners_count":21136294,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["learn-to-code","programming-language"],"created_at":"2024-08-01T19:01:34.658Z","updated_at":"2025-04-12T20:31:52.528Z","avatar_url":"https://github.com/chkas.png","language":"C","readme":"##  Easylang\n\nEasylang is a simple open-source programming language with built-in graphical features and a user-friendly browser IDE that can be used also offline. It was developed to make learning to program as easy and accessible as possible. You can also use Easylang to write simple graphical programs that can be embedded in a web page.\n\n~~~\n# animate a pendulum\nang = 45\non animate\n   clear\n   move 50 50\n   circle 1\n   x = 50 + 40 * sin ang\n   y = 50 + 40 * cos ang\n   line x y\n   circle 6\n   vel += sin ang / 5\n   ang += vel\nend\n~~~\n\n## Website\n\n**[easylang.online](https://easylang.online/)**\n\n**[chkas.github.io](https://chkas.github.io/)**\n\n## Build in Linux and MacOS\n\n### Dependencies\n\nMacOS: Xcode Command Line Tools\n\nJDK, Emscripten\n\nDownload Emscripten WASM SDK and install it\n\n~~~\ncurl -L https://github.com/emscripten-core/emsdk/archive/refs/heads/main.zip -o main.zip\nunzip -q main.zip\nmv emsdk-main emsdk\n~~~\n\nInstall and activate a tested version\n\n~~~\nsource emsdk/emsdk_env.sh\nemsdk update ; emsdk list\n# vers=latest\nvers=3.1.70\nemsdk install $vers ; emsdk activate $vers\n~~~\n\n### Build and test\n\n~~~\ncurl -L https://github.com/chkas/easylang/archive/refs/heads/main.zip -o main.zip\nunzip -q main.zip\nmv easylang-main easylang\n~~~\n\nThe destination folder is ~/out/easylang. Needs Java for the *closure-compiler*.\n\n~~~\nsource emsdk/emsdk_env.sh\n( cd easylang/main ; make release)\n~~~\n\nTest it locally\n\n~~~\n(cd ~/out/easylang/;python3 -m http.server)\n~~~\n\n[localhost:8000/ide/](http://localhost:8000/ide/)\n\n## Build with Github Actions\n\n[github.com/chkas/chkas.github.io](https://github.com/chkas/chkas.github.io)\n\n## Build native version\n\n~~~\neasylang/native/readme.md\n~~~\n\n","funding_links":[],"categories":["Uncategorized","C"],"sub_categories":["Uncategorized"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchkas%2Feasylang","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchkas%2Feasylang","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchkas%2Feasylang/lists"}