{"id":48931258,"url":"https://github.com/sohamxda7/openskill","last_synced_at":"2026-04-19T12:01:23.637Z","repository":{"id":351957534,"uuid":"1212723164","full_name":"sohamxda7/openskill","owner":"sohamxda7","description":null,"archived":false,"fork":false,"pushed_at":"2026-04-17T08:44:30.000Z","size":93,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-17T09:07:01.111Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sohamxda7.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"zenodo":null,"notice":"NOTICE","maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-04-16T17:03:45.000Z","updated_at":"2026-04-17T08:43:06.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/sohamxda7/openskill","commit_stats":null,"previous_names":["sohamxda7/openskill"],"tags_count":11,"template":false,"template_full_name":null,"purl":"pkg:github/sohamxda7/openskill","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sohamxda7%2Fopenskill","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sohamxda7%2Fopenskill/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sohamxda7%2Fopenskill/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sohamxda7%2Fopenskill/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sohamxda7","download_url":"https://codeload.github.com/sohamxda7/openskill/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sohamxda7%2Fopenskill/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32005831,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T20:23:30.271Z","status":"online","status_checked_at":"2026-04-19T02:00:07.110Z","response_time":55,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2026-04-17T09:02:42.580Z","updated_at":"2026-04-19T12:01:23.620Z","avatar_url":"https://github.com/sohamxda7.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c!-- Author: Soham Sen \u003csensoham135@gmail.com\u003e \u003csohamsen2000@outlook.com\u003e --\u003e\n\n# OpenSKILL - Run, Learn, and Explore SKILL Without Cadence Installed\n\nOpenSKILL lets you run SKILL locally, learn the language, and search an offline reference on your own computer without Cadence installed.\n\nIt gives EDA engineers, custom IC teams, chip design learners, and student-friendly lab environments a practical **Cadence-free** setup for **EDA scripting**: a standalone SKILL interpreter, REPL, desktop shell, and **SKILL IDE** for Linux or Windows. The interpreter logic and bundled reference content are original work created for this project.\n\nIf you are searching for a **SKILL interpreter**, **SKILL REPL**, **offline SKILL reference**, or a **Cadence-free** way to **learn SKILL** for **custom IC** and broader EDA workflows, this repository is built for that use case.\n\n## New users start here\n\n- **User manual:** [`docs/user-manual.md`](docs/user-manual.md)\n- **Command reference:** [`docs/command-reference.md`](docs/command-reference.md)\n- **Runnable starter files:** [`examples/`](examples/)\n\n## Quick start\n\n### Fastest way\n\n1. Download the latest build from **GitHub Releases**: \u003chttps://github.com/sohamxda7/openskill/releases\u003e\n2. Run the binary for your platform:\n   - **Linux CLI:** `./openskill-\u003cversion\u003e-linux`\n   - **Windows CLI:** `openskill-\u003cversion\u003e-windows.exe`\n   - **Linux IDE:** `./openskill-ide-\u003cversion\u003e-linux`\n   - **Windows IDE:** `openskill-ide-\u003cversion\u003e-windows.exe`\n3. Start typing SKILL code and exploring the offline reference.\n\n### From source\n\n```bash\npython3 -m pip install -e .\nopenskill\n```\n\nFrom a checkout without installing:\n\n```bash\nPYTHONPATH=src python3 -m openskill.cli\n```\n\nRun a starter script:\n\n```bash\nopenskill examples/hello.il\n```\n\nLaunch the desktop shell from source:\n\n```bash\nopenskill --gui\n# or, from a checkout without installing\nPYTHONPATH=src python3 -m openskill.ui.app\n```\n\n## Why EDA users care\n\n- Run core SKILL scripts locally without a Cadence license checkout\n- Learn SKILL syntax, control flow, lists, strings, tables, and file I/O in one place\n- Search an offline SKILL reference while you code\n- Try beginner-friendly runnable examples before moving to your own scripts\n- Download single-file CLI and IDE binaries from GitHub Releases\n- Use it as a teaching, experimentation, and scripting workbench for custom IC, chip design, and EDA workflows\n\n## Releases\n\nPrebuilt binaries are published on **GitHub Releases** for **Linux** and **Windows**:\n\n- **CLI:** `openskill-\u003cversion\u003e-linux` / `openskill-\u003cversion\u003e-windows.exe`\n- **Desktop IDE:** `openskill-ide-\u003cversion\u003e-linux` / `openskill-ide-\u003cversion\u003e-windows.exe`\n- **Integrity file:** `SHA256SUMS.txt`\n\nDownload the latest release here:\n\n\u003chttps://github.com/sohamxda7/openskill/releases\u003e\n\nEach push to `main` creates a new prerelease snapshot with commit-based versioning, and version tags create stable releases.\n\n## What it supports\n\n- Reader, parser, and evaluator for a growing standalone-safe core SKILL surface\n- File execution, one-shot expressions, and a REPL\n- Offline API catalog for the commands currently implemented\n- Desktop shell with editor, console, REPL, API Finder, line numbers, bracket matching, rainbow brackets, and autocomplete\n- Runnable examples for arithmetic, procedures, lists, strings, Fibonacci, and a simple state machine\n- Core language areas including bindings, procedures, macros, conditionals, loops, lists, strings, tables, arrays, printing, file/port utilities, and a minimal SKILL++ object layer\n- Prefix forms, classic immediate-paren calls such as `println(\"hello\")`, infix arithmetic with `+ - * /`, table helpers such as `tableToList`, and object syntax such as `defclass`, `makeInstance`, and `obj-\u003eslot`\n- Self-contained catalog examples that are exercised by the test suite against every documented symbol\n\nOpenSKILL is **not** a full core-SKILL-complete environment yet, but it already covers a broad standalone-safe subset with **200+ documented commands/forms** in the offline catalog.\n\n## What it does not support\n\n- Virtuoso, OpenAccess, CDB, and layout/database APIs\n- Cadence UI automation and live-session integration\n- Any network dependency for help lookup\n\n## Repository layout\n\n```text\nsrc/openskill/\n  interpreter/   Core reader, parser, evaluator, runtime\n  api/           Offline API catalog and search helpers\n  apifinder/     Offline API search helpers\n  ide/           Tk-based desktop shell\n  runtime/       REPL utilities\ntests/           Unit coverage for interpreter/runtime behavior\nscripts/         Packaging helpers\n```\n\n## CLI and GUI usage\n\n```bash\nopenskill [path/to/script.il]\nopenskill --expr '(println \"hello\")'\nopenskill --gui\n```\n\nUse the manual for setup, workflow, language basics, and beginner examples, and use the command reference when you want the browsable catalog of currently documented symbols.\n\n## Documentation provenance\n\nThe shipped help text, signatures, and examples in this repository were written independently for this project. Publicly available reference material was used to study externally visible behavior and language surface area, but the bundled catalog content is original to this repository.\n\n## License\n\nThis project is distributed under **GPL-3.0-or-later**. See `LICENSE` for the full license text and `NOTICE` for project-specific legal notices and disclaimers.\n\n## Legal notice\n\n- This project is an independent educational implementation and is **not affiliated with, endorsed by, or sponsored by Cadence Design Systems, Inc.**\n- This repository does **not** contain, bundle, or redistribute proprietary Cadence source code, binaries, documentation, or data files.\n- Names such as **SKILL**, **Cadence**, and **Virtuoso** are used only to describe compatibility goals and remain the property of their respective owners; such use does **not** imply certification, approval, or endorsement.\n- This repository uses independently written documentation and examples, but it **does not claim immunity from copyright, trademark, contract, DMCA, or other legal challenges**.\n- Contributors and users are responsible for ensuring that any source materials or scripts they contribute may be used lawfully.\n\n## Development\n\n```bash\npython3 -m unittest discover -s tests\n```\n\nThat suite now checks the interpreter/runtime behavior, starter examples, and every catalog example entry.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsohamxda7%2Fopenskill","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsohamxda7%2Fopenskill","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsohamxda7%2Fopenskill/lists"}