Skip to content

Instantly share code, notes, and snippets.

@davestewart
Last active April 28, 2022 23:09
Show Gist options
  • Save davestewart/cca96633b4d56213348c70e155704be1 to your computer and use it in GitHub Desktop.
Save davestewart/cca96633b4d56213348c70e155704be1 to your computer and use it in GitHub Desktop.

Package Wiki

This file documents Metalink Frontend's package.json in a human-readable manner designed to make it easy for contributors to see how related units work together.

Units are ordered by Dependency Type > Category > Group, then listed with Titles, Descriptions, Links and Notes.

Please edit or improve the sections and descriptions as required, then keep this document up to date.

Dependencies

Front end

Core Vue libraries:

  • vue
    The progressive JavaScript framework for buiding modern web UI.

  • vue-router #template
    Official router for Vue

  • vue-i18n
    Internationalization plugin for Vue.js

  • vee-validate
    Form Validation for Vue.js

  • pinia on 2022-04-14 by @ds
    Intuitive, type safe and flexible Store for Vue

    🎯 Leaving a note about how we use this right here

Examples using details:

  • pinia

    Intuitive, type safe and flexible Store for Vue

    Committed on 2022-04-14 by @ds

    🎯 Leaving a note about how we use this right here

  • pinia

    Intuitive, type safe and flexible Store for Vue
    • Committed on 2022-04-14 by @ds
    • 🎯 Leaving a note about how we use this right here

Supporting Vue libraries:

  • @vueuse/core
    Collection of essential Vue Composition Utilities

  • @vueuse/head
    Document head manager for Vue 3. SSR ready.

  • vue-demi
    Write universal Vue libraries for Vue 2 & 3

Vue UI:

3rd party UI:

Backend

Sockets:

Graph QL:

  • graphql
    A Query Language and Runtime which can target any service.

  • graphql-tag
    A JavaScript template literal tag that parses GraphQL queries

  • graphql-ws
    Coherent, zero-dependency, lazy, simple, GraphQL over WebSocket Protocol compliant server and client

  • urql
    A highly customizable and versatile GraphQL client for React

  • @urql/vue
    A highly customizable and versatile GraphQL client for vue

Database:

  • firebase
    Firebase JavaScript library for web and Node.js

Services

Third-party:

Web 3:

Utilities

Vue

  • axios
    Promise based HTTP client for the browser and node.js

  • yup
    Dead simple Object schema validation

  • marked
    A markdown parser built for speed

  • intersection-observer
    A polyfill for IntersectionObserver

Pure

System

  • dotenv
    Loads environment variables from .env file

Dev Dependencies

Core build

TypeScript:

  • typescript
    TypeScript is a language for application scale JavaScript development

  • vue-tsc
    ...

Transpiling:

Environment

  • cross-env
    Run scripts that set and use environment variables across platforms

Application

Vite core

Environments

Build

Developer Experience

Assets

Windi CSS

Tooling

Project:

  • pnpm
    Fast, disk space efficient package manager

  • husky
    Modern native Git hooks made easy

  • https-localhost
    HTTPS server running on localhost

  • testcafe
    Automated browser testing for the modern web development stack.

Linting:

Services

Web 3:

  • @openzeppelin/contracts
    Secure Smart Contract library for Solidity

  • hardhat
    Hardhat is an extensible developer tool that helps smart contract developers increase productivity by reliably bringing together the tools they want.

Caching:

  • workbox-core
    This module is used by a number of the other Workbox modules to share common code.

  • workbox-precaching
    This module efficiently precaches assets.

Scripts

Application

Run the development server:

npm run dev

Build the production app:

npm run build

...:

npm run preview

...:

npm run preview-https

Storybook

...:

npm run story

...:

npm run build-story

Linting

Lint:

npm run lint

Lint and fix:

npm run lint-fix

Testing

Test using (Cypress?):

npm run test:e2e

Smart contracts

...:

npm run sc-test

...:

npm run sc-ganache

...:

npm run sc-goerli

...:

npm run sc-rinkeby

...:

npm run sc-mainnet

Wiki

Update this file:

npm run wiki
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment