GithubHelp home page GithubHelp logo

jherax / ts-app-boilerplate Goto Github PK

View Code? Open in Web Editor NEW

This project forked from lukeautry/ts-app

0.0 1.0 0.0 2.21 MB

Boilerplate project for a TypeScript API (Express, tsoa) + UI (React/TSX)

JavaScript 2.00% TypeScript 97.66% Dockerfile 0.05% EJS 0.29%

ts-app-boilerplate's Introduction

ci

ts-app: Full-stack TypeScript Development Framework

This project is a starting point for developing an API-first application using TypeScript, Node.js, and React.

This project aims to support a "domain driven" approach. A client library is automatically generated from the API, providing a statically typed interface with which to interact with the API from the React UI. The goal is to provide a type-safe and productive developer experience for rapid web application development.

** Check out the new SaaS branch! Includes login flow, password reset, routing, emails and email previews, component library development via Cosmos, and more **

Getting started

  • yarn to install dependencies
  • yarn build to build from source
  • yarn cli start to start developer environment
  • yarn cli to use developer CLI
    • Includes dev environment setup, docker management, database management, and more
    • Full CLI docs

Developer experience

alt text

Project structure

This project uses TypeScript Project References to organize modules. This gives us:

  • Faster builds
  • Formal project dependencies; subprojects can't import from other subprojects unless the dependency is configured

Packages

  • cli - Developer CLI tool
  • client - Front-end React App
  • common - Modules used by either browser or node environments
  • node - Modules used by node environments
  • server - Express server w/ tsoa API
  • openapi-client - Autogenerated TypeScript client; used to communicate with OpenAPI REST API from client
  • cypress - Cypress tests

System Requirements

Technologies Used

Running Tests

Jest Tests

Includes server node.js tests and front-end react-testing-library tests.

yarn cli test jest

Cypress Tests

End to end tests that touch everything and hit a running version of the application

yarn cli test cypress

Contributing

  • Features and bug fixes welcome

ts-app-boilerplate's People

Contributors

cipherzzz avatar lukeautry avatar

Watchers

 avatar

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.