Skip to content

Commit

Permalink
feat: frontend project setup (#2)
Browse files Browse the repository at this point in the history
  • Loading branch information
pedronauck authored Aug 25, 2022
1 parent 65dba8e commit bc933f7
Show file tree
Hide file tree
Showing 83 changed files with 17,105 additions and 379 deletions.
5 changes: 5 additions & 0 deletions .browserslistrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Supported browsers

last 3 version
> 5%
not dead
5 changes: 5 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
root = true

[*]
tab_width = 2
indent_size = 2
10 changes: 10 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
**/node_modules/
**/coverage/
*.js
*.html
dist
CHANGELOG.md
packages/app/src/types
contracts
**/*.typegen.ts
.eslintrc.js
13 changes: 13 additions & 0 deletions .eslintrc.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
const config = require('./packages/config');
const path = require('path');

const resolveRoot = (dir = '') => path.resolve(__dirname, dir);

module.exports = {
...config,
parserOptions: {
...config.parserOptions,
tsConfigRootDir: resolveRoot(),
project: [resolveRoot('./tsconfig.eslint.json'), resolveRoot('./**/**/tsconfig.json')],
},
};
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Syntax highlighting of sway files as rust
*.sw linguist-language=Rust
44 changes: 44 additions & 0 deletions .github/ISSUE_TEMPLATE/bug.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
name: 🐛 Bug Report
description: Something is wrong with Fuel Wallet.
labels: ['bug']
body:
- type: markdown
attributes:
value: |
Thank you for helping to improve our Wallet!
## The best bug report is a failing test!
The fastest way to get a bug fixed is to add a failing test and send a pull request. **It's usually easy to do with our bug report test template**.
1. Click the "Fork" button
2. Open our contributions guideline!
3. Follow the instructions!
## I'd rather just report the bug
That's fine too! Go ahead and fill out this form.
- type: input
attributes:
label: What version of Wallet are you using?
validations:
required: true
- type: textarea
attributes:
label: Steps to Reproduce
description: Steps to reproduce the behavior.
validations:
required: true
- type: textarea
attributes:
label: Expected Behavior
description: A concise description of what you expected to happen.
validations:
required: true
- type: textarea
attributes:
label: Actual Behavior
description: A concise description of what you're experiencing.
validations:
required: true
18 changes: 18 additions & 0 deletions .github/ISSUE_TEMPLATE/feature.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: 🚀 Feature request
description: Suggest an idea for this project.
labels: ['enhancement']
body:
- type: textarea
attributes:
label: Motivation
description: Outline the motivation for the proposal.
validations:
required: true
- type: textarea
attributes:
label: Usage example
description: Provide documentation and code examples for how this feature would be used.
- type: textarea
attributes:
label: Possible implementations
description: If possible, describe how this feature could be implemented.
29 changes: 29 additions & 0 deletions .github/actions/ci-setup/action.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: "CI setup"
inputs:
node-version:
description: "Node version"
default: 16.15
pnpm-version:
description: "PNPM version"
default: latest
runs:
using: "composite"
steps:
- name: Cache PNPM modules
uses: actions/cache@v3
with:
path: ~/.local/share/pnpm/store/v3
key: ${{ runner.os }}-node-${{ inputs.node-version }}-pnpm-${{ inputs.pnpm-version }}-lock-${{ hashFiles('**/pnpm-lock.yaml') }}
restore-keys: |
${{ runner.os }}-pnpm
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: ${{ inputs.node-version }}

- name: Setup PNPM
uses: pnpm/[email protected]
with:
version: ${{ inputs.pnpm-version }}
run_install: true
36 changes: 36 additions & 0 deletions .github/workflows/pr.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
name: "PR Checks"

on:
pull_request:
types: [opened, synchronize, edited, closed]

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

jobs:
validate-title:
name: Validate PR Title
runs-on: ubuntu-latest
steps:
- uses: amannn/action-semantic-pull-request@v4
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

audit:
name: Audit
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: ./.github/actions/ci-setup
- run: pnpm audit --prod

lint-and-test:
name: Lint & Test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: ./.github/actions/ci-setup
- run: |
pnpm ts:check
pnpm lint
167 changes: 60 additions & 107 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,130 +1,83 @@
# Generated by Cargo
# will have compiled files and executables
/target/

# Remove Cargo.lock from gitignore if creating an executable, leave it for libraries
# More information here https://doc.rust-lang.org/cargo/guide/cargo-toml-vs-cargo-lock.html
Cargo.lock
Forc.lock

# These are backup files generated by rustfmt
**/*.rs.bk

# Remove macOS's .DS_Store files
.DS_Store

# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*
lerna-debug.log*

# Diagnostic reports (https://nodejs.org/api/report.html)
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json

# Runtime data
pids
*.pid
*.seed
*.pid.lock

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage
*.lcov

# nyc test coverage
.nyc_output

# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files)
.grunt

# Bower dependency directory (https://bower.io/)
bower_components

# node-waf configuration
.lock-wscript

# Compiled binary addons (https://nodejs.org/api/addons.html)
build/Release

# Dependency directories
node_modules/
jspm_packages/

# TypeScript v1 declaration files
typings/

# TypeScript cache
*.tsbuildinfo

# Optional npm cache directory
.npm

# Optional eslint cache
.eslintcache

# Microbundle cache
.rpt2_cache/
.rts2_cache_cjs/
.rts2_cache_es/
.rts2_cache_umd/

# Optional REPL history
.node_repl_history

# Output of 'npm pack'
*.tgz

# Yarn Integrity file
.yarn-integrity

# dotenv environment variables file
.env
.env.test

# parcel-bundler cache (https://parceljs.org/)
.cache

# Next.js build output
.next

# Nuxt.js build / generate output
.nuxt
dist

# Gatsby files
.cache/
# Comment in the public line in if your project uses Gatsby and *not* Next.js
# https://nextjs.org/blog/next-9-1#public-directory-support
# public

# vuepress build output
.vuepress/dist

# Serverless directories
.serverless/

# FuseBox cache
.fusebox/

# DynamoDB Local files
.dynamodb/

# TernJS port file
.tern-port
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
# Editor directories and files
.vscode/*
!.vscode/extensions.json
.idea
.DS_Store
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?

# dependencies
/node_modules
/.pnp
node_modules
.pnp
.pnp.js
*.local

# testing
/coverage
coverage
/cypress

# production
/build
# next.js
.next/
out/
build
dist
dist-ssr

# misc
.DS_Store
*.pem

# local env files
.env
!docker/.env
.env.local
.env.development.local
.env.test.local
.env.production.local

npm-debug.log*
yarn-debug.log*
yarn-error.log*
# Local db
docker/db

# turbo
.turbo
tsconfig.tsbuildinfo

# storybook
storybook-static

# general
contracts/token_contract/.rustc_info.json
.vercel

# Local actions to test CI using ACT
act-actions

*-lock.json
*.lock
# XState typegen
*.typegen.ts
4 changes: 4 additions & 0 deletions .husky/pre-commit
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"

pnpm lint-staged
6 changes: 6 additions & 0 deletions .lintstagedrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
{
"./**/*.{js,jsx,ts,tsx,html}": [
"pnpm prettier:check",
"pnpm lint:check"
]
}
1 change: 1 addition & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
strict-peer-dependencies=false
1 change: 1 addition & 0 deletions .nvmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
16
8 changes: 8 additions & 0 deletions .prettierignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
.changeset
.coverage_*
.github
CHANGELOG.md
coverage
dist
node_modules
pnpm-lock.yaml
Loading

0 comments on commit bc933f7

Please sign in to comment.