All Projects → finitum → CSHub

finitum / CSHub

Licence: MIT license
CSHub

Programming Languages

typescript
32286 projects
Vue
7211 projects
HTML
75241 projects
javascript
184084 projects - #8 most used programming language
shell
77523 projects
Dockerfile
14818 projects

Projects that are alternatives of or similar to CSHub

polling-station-app
Voting station app to redeem the suffrage on the blockchain using a machine readable travel document.
Stars: ✭ 39 (+44.44%)
Mutual labels:  delft-university

CSHub Build Status

This is a project made for the TU Delft CSE studies, where everyone can post information, summaries and more, for everyone to see and read.

Running the project

  • Install NodeJS, and install the dependencies of the server and client projects (npm install in the correct directories)
  • For the server, run ts-node, or use the provided IntelliJ runconfigs
  • For the client, run yarn run serve :)

Feature Requests / Bug Reports

Create a GitHub issue on this repository, and we will try to take a look at it.

How does it work?

This project uses TypeScript. This is typed JavaScript, so we can use many advantages of typedness, and use object oriented programming constructs like classes.

The project is divided into different sections:

  • Client
  • Server
  • Shared

In order to facilitate typed communication between server and client, we have a shared package. Here, many models of different parts of the app are defined, so we are sure an object has the properties we need. It also defines how the api-calls function, as it provides classes that can be passed between server and client. These classes include a certain URL, which both the server and client use for their communication. This makes sure that the client always calls a URL on the server which the server can handle.

For the api we make use of express, which gives us a request object we can work with. For the front-end, Vue.JS is used, though also with TypeScript, which is not the default. See the comments in the corresponding files for more information.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].