Skip to content

Commit

Permalink
feat: initial
Browse files Browse the repository at this point in the history
  • Loading branch information
ya7on authored Sep 28, 2024
1 parent 9601989 commit 5056fce
Show file tree
Hide file tree
Showing 24 changed files with 7,828 additions and 0 deletions.
25 changes: 25 additions & 0 deletions .github/workflows/commitlint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: Commit Lint

on:
push:
branches: [ "master" ]
pull_request:
branches: [ "master" ]

jobs:
commitlint:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Install commitlint
run: npm install

- name: Validate current commit (last commit) with commitlint
if: github.event_name == 'push'
run: npx commitlint --last --verbose

- name: Validate PR commits with commitlint
if: github.event_name == 'pull_request'
run: npx commitlint --from ${{ github.event.pull_request.head.sha }}~${{ github.event.pull_request.commits }} --to ${{ github.event.pull_request.head.sha }} --verbose
26 changes: 26 additions & 0 deletions .github/workflows/contracts.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
name: Contract checks

on:
push:
branches: [ "master" ]
pull_request:
branches: [ "master" ]

jobs:
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 22

- name: NPM Install
run: npm install

- name: Build contracts
run: npm run build

- name: Run tests
run: npm test
16 changes: 16 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
node_modules
temp
build
dist
.DS_Store

# VS Code
.vscode/*
.history/
*.vsix

# IDEA files
.idea

# VIM
Session.vim
1 change: 1 addition & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
build
7 changes: 7 additions & 0 deletions .prettierrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"printWidth": 120,
"tabWidth": 4,
"singleQuote": true,
"bracketSpacing": true,
"semi": true
}
25 changes: 25 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,27 @@
# jetton
TON jetton standard implementation on tact

## Project structure

- `contracts` - source code of all the smart contracts of the project and their dependencies.
- `wrappers` - wrapper classes (implementing `Contract` from ton-core) for the contracts, including any [de]serialization primitives and compilation functions.
- `tests` - tests for the contracts.
- `scripts` - scripts used by the project, mainly the deployment scripts.

## How to use

### Build

`npx blueprint build` or `yarn blueprint build`

### Test

`npx blueprint test` or `yarn blueprint test`

### Deploy or run another script

`npx blueprint run` or `yarn blueprint run`

### Add a new contract

`npx blueprint create ContractName` or `yarn blueprint create ContractName`
1 change: 1 addition & 0 deletions commitlint.config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
module.exports = { extends: ['@commitlint/config-conventional'] };
1 change: 1 addition & 0 deletions contracts/consts.tact
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
const JETTON_WALLET_SYSTEM: Cell = cell("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");
6 changes: 6 additions & 0 deletions contracts/errors.tact
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
// Defaul Tact error code for invalid owner
const ERROR_CODE_INVALID_OWNER: Int = 132;
// Jetton wallet balance doesn't have enough tokens
const ERROR_CODE_NOT_ENOUGH_BALANCE: Int = 6911;
// Need more TONs in request for fee
const ERROR_CODE_NEED_FEE: Int = 6912;
Loading

0 comments on commit 5056fce

Please sign in to comment.