Skip to content

tfbern/m141

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

78 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Aufgabenmanager

This is a demo app. It has been developed during ICT module 141 at Technische Fachschule Bern. The application consists of tree parts: the database, the API and the GUI.

Database

The database can be either relational database supported by knex. We have tested MySQL and PostgreSQL. The data model mainly consists of the two entities user and task. To setup such a database, the SQL DDL statements are provided. There are two supported designs: one making use of columns with the ENUM data type and another one using lookup tables.

Application Programming Interface (API)

There is a REST API that provides access to the database via HTTP/JSON for the application.

Grafical User Interface (GUI)

There is a grafical user interface programmed with vue.js that uses the API.

Development

To start the API and server change to server and run nodemon. This will start the API and also serve static content in the client/dist folder, if available. This folder contains the latest build of the GUI.

For GUI development start the development server by changing to client folder and running npm run serve. You can build the GUI by running npm run build.

Production

After building the GUI by running npm run build, you can serve the whole application (API and GUI) together on a single web server. Just run npm start or nodemon from the root directory of this project.

Hosting

The application can be hosted locally, at Heroku or any other host that supports node.js.

Hosting at Heroku

If hosting at heroku you must upload a package that contains a package.json file in the root folder. Heroku will then compile the project and start it using npm start. Heroku will provide the environment variables process.env.PORT and process.env.DATABASE_URL, hence the application must use them as port and database connection string.

Releases

No releases published

Packages

No packages published