Git Product home page Git Product logo

maps's Introduction

概要

  • 2地点間の距離と角度を求め、その地点からの距離と角度から緯度経度を求める
  • ズームレベルから縮尺を求める
  • 緯度経度から地図タイルを取得し、タイル左上原点の「緯度、経度」と標高タイル(TXT、PNG)から「標高」を求める
  • GPS ログデータ(GPX)を読み込み、「時間、経度、緯度、標高」に加え「距離、角度、勾配、速度」を算出して表示

使用技術

環境

言語

ライブラリー

テスト

データベース

インストール

npm install

ビルド

build.sh
  • gulp + prettier
    • [./src] のソースファイルを自動整形して保存
  • gulp + eslint
    • [./src] のソースファイルを構文チェック
  • gulp + tsc
    • TypeScript を tsconfig.json の設定でコンパイルして出力 [./dist/public]
    • TypeScript を tsconfig.node.json の設定でコンパイル [./dist/node]
  • gulp + babel
    • tsc でコンパイルした JavaScript[./dist/public] を変換して出力 [./dist/public.babel]
  • gulp + webpack
    • babel で変換した JavaScript[./dist/public.babel] を結合・圧縮して出力 [./public/js]
  • gulp + uglify
    • tsc でコンパイルした JavaScript[./dist/public/js/app.js] を圧縮して出力 [./public/js/appp.min.js]
  • gulp + sass
    • scss をコンパイル、結合、圧縮して出力 [./public/css]

ビルド - 開発モード(TypeScript)

build.sh dev
  • gulp + eslint
    • [./src] のソースファイルを構文チェック
  • gulp + tsc
    • TypeScript を tsconfig.json の設定でコンパイルして出力[./dist/public]
  • gulp + uglify
    • tsc でコンパイルした JavaScript[./dist/public/js/app.js] を圧縮して出力[./public/js/appp.min.js]
  • gulp + tsc
    • TypeScript のファイルを監視しコンパイル

ソースコードのチェック

  • 構文チェック+自動整形

     npm run check
    
  • 構文チェック

     npm run formatter
    
  • 自動整形

     npm run linter
    
  • git commit

    • husky + lint-staged
       # 構文チェック
       eslint --fix --max-warnings=0
       +
       # 自動整形
       prettier --write
      

起動

  • docker コンテナで Next.js, Node.js, MongoDB, Mongo Express, Redis を起動します

    • Next.js

       ./start.sh next
      
    • Node.js[PM2]:本番モード

       ./start.sh
      
    • Node.js[ts-node]:開発モード

       ./start.sh tsn
      
    • Node.js[ts-node-dev]:開発モード

       ./start.sh tsndev
      
  • Node.js の起動 docker コンテナを使わない= docker コンテナが停止している状態で動作します
    Node.js の実行するホスト名が docker コンテナのホスト名 [maps] でない場合、
    docker コンテナにより動作する MongoDB に関係する処理のみ機能させずに起動します

    • ts-node

       npm run tsn_start
      

      = npm run ts-node --project ./tsconfig.node.json src/node/index.ts

    • ts-node-dev

       npm run tsn_start_dev
      

      = npm run-dev ts-node --project ./tsconfig.node.json src/node/index.ts

    • node(トランスパイル済み js)

       node dist/node/node/index.js
      
  • Next.js の起動

     npm run next
    
  • Node.js の起動と制御[PM2]

    • 起動

       npm run prod_start
      
    • 起動状況のモニター

       npm run prod_moni
      
    • 停止

       npm run prod_stop
      
    • 削除

       npm run prod_delete
      
  • docker コンテナ操作スクリプトの説明

サイト表示

テスト

  • JEST

     npm run test
    
  • Cypress - GUI

     npx cypress open
    
  • Cypress - CUI

     npx cypress run
    

MongoDB

Collection

maps's People

Contributors

cqyadokari avatar

Watchers

 avatar  avatar

maps's Issues

redis

  • redis を使った何かをやる

redux

  • 状態管理の実装を進める

next.js - pages

  • React コンポーネント化したページを Next.js で実装する

  • Distance
    leaflet が csr 専用のため、dynamic import で csr 時描画される react コンポーネントにする

  • Scale

  • Tile

  • MongoDB
    leaflet が csr 専用のため、dynamic import で csr 時描画される react コンポーネントにする

next.js - leaflet

  • leaflet を使う部分だけを React コンポーネント化して CSR 対応を行う

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.