Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 30 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: CI

on:
pull_request:
branches: [main]
types: [opened, synchronize, reopened, ready_for_review]
push:
branches: [main]

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
ci:
runs-on: ubuntu-slim
permissions:
contents: read

steps:
- name: Checkout
uses: actions/checkout@v6

- name: Set up Deno
uses: denoland/setup-deno@v2
with:
deno-version: v2.x

- name: Run checks
run: deno run check
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@ node_modules

# dot files
.vscode
.pnpm-global

# Logs
logs
Expand Down
29 changes: 0 additions & 29 deletions .oxfmtrc.json

This file was deleted.

118 changes: 0 additions & 118 deletions .oxlintrc.json

This file was deleted.

46 changes: 7 additions & 39 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,9 @@
<p align="center">
<img src="https://img.shields.io/badge/%F0%9F%96%90%EF%B8%8F%20Made%20by-Humans-333333?labelColor=25C260" alt="Made by Humans">
<img src="https://img.shields.io/badge/%F0%9F%A6%BE%20Agent%20Skill-Available-333333?labelColor=8A2BF2" alt="Agent Skill Available">
<a href="https://github.com/hesprs/synthkernel/actions">
<img src="https://img.shields.io/github/actions/workflow/status/hesprs/synthkernel/ci.yml?style=flat&logo=github&logoColor=white&label=CI&labelColor=d4ab00&color=333333" alt="ci">
</a>
</p>

<p align="center">
Expand Down Expand Up @@ -40,9 +43,7 @@ SynthKernel provides a Jupyter Notebook whitepaper running TypeScript, you can f

VSCode or any fork of it is recommended to view it. To correctly execute the whitepaper, you need to do some setup:

**Normal OS**:

Install Git, Python3, Node.js, VSCode or its fork, and ensure you have installed the following extensions for VSCode:
Install Python3 and Deno (because it provides a Jupyter Notebook TypeScript kernel), ensure you have installed the following extensions for VSCode if you are using it:

- `ms-toolsai.jupyter`
- `bierner.markdown-mermaid`
Expand All @@ -53,44 +54,11 @@ Then open your terminal at a proper directory (we will create some file in it) a
# install Jupyter if you haven't
pip3 install jupyterlab

# clone and enter this repp
git clone https://github.com/hesprs/synthkernel.git
cd synthkernel

# install dependencies, use your preferred package manager
npm install

# register TS kernel, you can also use pnpm or whatever
npx tslab install
```

Then open your VSCode in the cloned repo and open `whitepaper.ipynb`, choose `Select Kernel` -> `Jupyter Kernel...` -> `TypeScript`, now you can read the notebook.

**Nix Approach**:

Install Git, Python3, Node.js, VSCode or its fork, and ensure you have installed the following extensions for VSCode:

- `ms-toolsai.jupyter`
- `bierner.markdown-mermaid`

Then open your terminal at a proper directory (we will create some file in it) and run following commands:

```sh
# clone and enter this repp
git clone https://github.com/hesprs/synthkernel.git
cd synthkernel

# install dependencies, use your preferred package manager
npm install

# enter nix shell
nix-shell shell.nix

# run VSCode, if you are using Cursor or whatever forks, change accordingly
code .
# register TS kernel
deno jupyter --install
```

Open `whitepaper.ipynb`, choose `Select Kernel` -> `Jupyter Kernel...` -> `TypeScript`, now you can read the notebook.
Then open `whitepaper.ipynb` in your viewer, choose the Deno kernel (in VSCode, it's `Select Kernel` -> `Jupyter Kernel...` -> `Deno`). Now you can read the notebook.

## 🤖 Agent Skill

Expand Down
44 changes: 44 additions & 0 deletions deno.jsonc
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
{
"description": "A type-safe and composable meta architecture for modular monolith development.",
"keywords": [
"modular-monolith",
"typescript",
"architecture",
"agent-skills",
"agentic-coding"
],
"license": "CC BY-SA 4.0",
"author": "",
"type": "module",
"tasks": {
"run:example": "deno run skill/examples/example.ts",
"lint": "deno lint --fix && deno fmt",
"check": "deno lint && deno fmt --check --ignore=\"*.ipynb\"" // Deno always report Jupyter Notebooks as unformatted for no reason
},
"imports": {
"@needle-di/core": "jsr:@needle-di/core@^1.1.1"
},
"compilerOptions": {
"module": "NodeNext",
"moduleResolution": "NodeNext",
"strict": true,
"skipLibCheck": true,
"verbatimModuleSyntax": true,
"lib": ["ESNext", "DOM", "DOM.Iterable"]
},
"fmt": {
"indentWidth": 4,
"useTabs": true,
"singleQuote": true,
"proseWrap": "never"
},
"lint": {
"rules": {
"tags": ["recommended"],
"exclude": [
"ban-types",
"no-this-alias"
]
}
}
}
16 changes: 16 additions & 0 deletions deno.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

24 changes: 0 additions & 24 deletions package.json

This file was deleted.

Loading