/tsmean

Typescript-mysql-express-angular-node seed for your next web-app!

Primary LanguageTypeScriptMIT LicenseMIT

Build Status

Disclaimer

Note that this project is still in furious development (currently it's pre-alpha) and only a glimpse of it’s full potential is publicly visible today. To get notified when the next major public release is ready, sign up to the mailing list for releases. To apply for alpha testing, visit www.tsmean.com/alpha. To read more about the project, visit www.tsmean.com.


tsmean logo

Current State

This is a starter kit for webapps completely written in TypeScript.

The starter kit is using the following technologies:

  • MySQL
  • ExpressJS
  • Angular 6
  • NodeJs

... and that's why it's called tsmean! We've carefully elected those technologies to be the best suit for building web apps with TypeScript. You get to use TypeScript now on the client and the server! This leads to efficiency through consistency. Read more about it here: www.tsmean.com.

Installation

Prerequisits

Install

Cloning the project

git clone https://github.com/tsmean/tsmean your-project-name
cd your-project-name

Setting up the database

The easiest way to set up the MySQL database is to use docker and run:

docker run -p 3306:3306 --name mysql tsmean/mysql:2

This spins up a docker container with a MySQL instance that has matching settings with the backend. Read more about the "MySQL in docker" option here. You can also set up MySQL directly on your system and create the databases with settings like you find them in backend/properties/development.properties and backend/properties/test.properties manually. Of course, you can also change the settings you find there to match your needs (for example setting a different user or password or database name).

Installing all node modules

npm install

Under the hood lerna is used to install the multiple packages in backend, frontend and shared, but you don't need to be concerned with this too much for now.

Backend

First cd backend, then:

  • to spin up a REST-API server npm start. Check it out at http://localhost:4242
  • To run the tests npm test

Frontend

First cd frontend, then:

  • to start the Angular app npm start. Check it out on http://localhost:4200
  • you can develop all modules independently. For example, cd src/app/user and run ng serve. This launches a minimal app only displaying the user module (i.e. without login etc). You can test all modules using ng test.

More info available in frontend docs.

Live Demo

https://demo.tsmean.com

screenshot

Homepage

http://www.tsmean.com