Skip to content

Commit c0608d0

Browse files
committed
Adding first iteration of UI
1 parent cb260ad commit c0608d0

36 files changed

+7361
-1
lines changed

tsconfig.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,5 +7,6 @@
77
"strict": true,
88
"skipLibCheck": true,
99
"resolveJsonModule": true
10-
}
10+
},
11+
"exclude": ["ui"]
1112
}

ui/.editorconfig

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
[*.{js,jsx,mjs,cjs,ts,tsx,mts,cts,vue}]
2+
charset = utf-8
3+
indent_size = 2
4+
indent_style = space
5+
end_of_line = lf
6+
insert_final_newline = true
7+
trim_trailing_whitespace = true

ui/.gitignore

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
.DS_Store
2+
.thumbs.db
3+
node_modules
4+
5+
# Quasar core related directories
6+
.quasar
7+
/dist
8+
/quasar.config.*.temporary.compiled*
9+
10+
# Cordova related directories and files
11+
/src-cordova/node_modules
12+
/src-cordova/platforms
13+
/src-cordova/plugins
14+
/src-cordova/www
15+
16+
# Capacitor related directories and files
17+
/src-capacitor/www
18+
/src-capacitor/node_modules
19+
20+
# Log files
21+
npm-debug.log*
22+
yarn-debug.log*
23+
yarn-error.log*
24+
25+
# Editor directories and files
26+
.idea
27+
*.suo
28+
*.ntvs*
29+
*.njsproj
30+
*.sln
31+
32+
# local .env files
33+
.env.local*

ui/.npmrc

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# pnpm-related options
2+
shamefully-hoist=true
3+
strict-peer-dependencies=false
4+
# to get the latest compatible packages when creating the project https://github.com/pnpm/pnpm/issues/6463
5+
resolution-mode=highest

ui/.prettierrc.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"$schema": "https://json.schemastore.org/prettierrc",
3+
"semi": false,
4+
"singleQuote": true,
5+
"printWidth": 100
6+
}

ui/.vscode/extensions.json

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
{
2+
"recommendations": [
3+
"dbaeumer.vscode-eslint",
4+
"esbenp.prettier-vscode",
5+
"editorconfig.editorconfig",
6+
"vue.volar",
7+
"wayou.vscode-todo-highlight"
8+
],
9+
"unwantedRecommendations": [
10+
"octref.vetur",
11+
"hookyqr.beautify",
12+
"dbaeumer.jshint",
13+
"ms-vscode.vscode-typescript-tslint-plugin"
14+
]
15+
}

ui/.vscode/settings.json

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
{
2+
"editor.bracketPairColorization.enabled": true,
3+
"editor.guides.bracketPairs": true,
4+
"editor.formatOnSave": true,
5+
"editor.defaultFormatter": "esbenp.prettier-vscode",
6+
"editor.codeActionsOnSave": [
7+
"source.fixAll.eslint"
8+
],
9+
"eslint.validate": [
10+
"javascript",
11+
"javascriptreact",
12+
"typescript",
13+
"vue"
14+
],
15+
"typescript.tsdk": "node_modules/typescript/lib"
16+
}

ui/README.md

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
# pTokens Swap (ui)
2+
3+
Swap UI to redeem pTokens TLOS for OFT TLOS
4+
5+
## Install the dependencies
6+
```bash
7+
yarn
8+
# or
9+
npm install
10+
```
11+
12+
### Start the app in development mode (hot-code reloading, error reporting, etc.)
13+
```bash
14+
quasar dev
15+
```
16+
17+
18+
### Lint the files
19+
```bash
20+
yarn lint
21+
# or
22+
npm run lint
23+
```
24+
25+
26+
### Format the files
27+
```bash
28+
yarn format
29+
# or
30+
npm run format
31+
```
32+
33+
34+
### Build the app for production
35+
```bash
36+
quasar build
37+
```
38+
39+
### Customize the configuration
40+
See [Configuring quasar.config.js](https://v2.quasar.dev/quasar-cli-vite/quasar-config-js).

ui/index.html

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
<!DOCTYPE html>
2+
<html>
3+
<head>
4+
<title><%= productName %></title>
5+
6+
<meta charset="utf-8">
7+
<meta name="description" content="<%= productDescription %>">
8+
<meta name="format-detection" content="telephone=no">
9+
<meta name="msapplication-tap-highlight" content="no">
10+
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width<% if (ctx.mode.cordova || ctx.mode.capacitor) { %>, viewport-fit=cover<% } %>">
11+
12+
<link rel="icon" type="image/png" sizes="128x128" href="icons/favicon-128x128.png">
13+
<link rel="icon" type="image/png" sizes="96x96" href="icons/favicon-96x96.png">
14+
<link rel="icon" type="image/png" sizes="32x32" href="icons/favicon-32x32.png">
15+
<link rel="icon" type="image/png" sizes="16x16" href="icons/favicon-16x16.png">
16+
<link rel="icon" type="image/ico" href="favicon.ico">
17+
</head>
18+
<body>
19+
<!-- quasar:entry-point -->
20+
</body>
21+
</html>

ui/package.json

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
{
2+
"name": "ui",
3+
"version": "0.0.1",
4+
"description": "Swap UI to redeem pTokens TLOS for OFT TLOS",
5+
"productName": "pTokens Swap",
6+
"author": "Jesse Schulman <jes.schulman@gmail.com>",
7+
"type": "module",
8+
"private": true,
9+
"scripts": {
10+
"lint": "eslint -c ./eslint.config.js \"./src*/**/*.{ts,js,cjs,mjs,vue}\"",
11+
"format": "prettier --write \"**/*.{js,ts,vue,scss,html,md,json}\" --ignore-path .gitignore",
12+
"test": "echo \"No test specified\" && exit 0",
13+
"dev": "quasar dev",
14+
"build": "quasar build",
15+
"postinstall": "quasar prepare"
16+
},
17+
"dependencies": {
18+
"@quasar/extras": "^1.16.4",
19+
"@tanstack/vue-query": "^5.62.7",
20+
"@wagmi/vue": "^0.1.3",
21+
"pinia": "^2.0.11",
22+
"quasar": "^2.16.0",
23+
"viem": "2.x",
24+
"vue": "^3.4.18",
25+
"vue-router": "^4.0.12"
26+
},
27+
"devDependencies": {
28+
"@eslint/js": "^9.14.0",
29+
"@quasar/app-vite": "^2.0.0",
30+
"@types/node": "^20.5.9",
31+
"@vue/eslint-config-prettier": "^10.1.0",
32+
"@vue/eslint-config-typescript": "^14.1.3",
33+
"autoprefixer": "^10.4.2",
34+
"eslint": "^9.14.0",
35+
"eslint-plugin-vue": "^9.30.0",
36+
"globals": "^15.12.0",
37+
"prettier": "^3.3.3",
38+
"typescript": "~5.5.3",
39+
"vite-plugin-checker": "^0.8.0",
40+
"vue-tsc": "^2.0.29"
41+
},
42+
"engines": {
43+
"node": "^28 || ^26 || ^24 || ^22 || ^20 || ^18",
44+
"npm": ">= 6.13.4",
45+
"yarn": ">= 1.21.1"
46+
}
47+
}

0 commit comments

Comments
 (0)