101 lines
No EOL
3.3 KiB
Markdown
101 lines
No EOL
3.3 KiB
Markdown
# Cliffbreak TS-Viewer 🔎
|
|
|
|
This is the main Repository containing all required resources to run the server and a corresponding website.
|
|
`/server` contains the complete backend. Offering a REST API for all actions.
|
|
`/webapp` contains the Web App, communicating with the REST API from `/server`.
|
|
|
|
## Getting Started
|
|
|
|
The following instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
|
|
|
|
After setting up you local environment, you can access the following services with your web browser:
|
|
* Web frontend via [http://localhost:8080/](http://localhost:8080/)
|
|
* API documentation via [http://localhost:8080/api-docs/](http://localhost:8080/api-docs/)
|
|
|
|
### Prerequisites
|
|
|
|
`NodeJS (including NPM)` is required to run this project.
|
|
You'll also need `git` if you want to contribute to the project.
|
|
|
|
|
|
### Installing
|
|
|
|
First clone this repository to your local machine by using
|
|
|
|
```
|
|
git clone https://git.cliffbreak.de/Cliffbreak/CliffbreakTS-Viewer.git
|
|
```
|
|
|
|
Change to the cloned repository and inside change your active directory to `server`
|
|
|
|
```
|
|
cd CliffbreakTS-Viewer && cd server
|
|
```
|
|
|
|
To install all required packages run
|
|
|
|
```
|
|
npm install
|
|
```
|
|
|
|
Copy the .env.example and paste it as .env
|
|
|
|
```
|
|
cp .env.example .env
|
|
```
|
|
|
|
To test the application run
|
|
```
|
|
npm test
|
|
```
|
|
|
|
To start the server in development mode run the following npm script
|
|
|
|
```
|
|
npm run dev
|
|
```
|
|
|
|
## Configure Visual Studio Code
|
|
If you haven't a instance of Visual Studio Code up and running download the latest version [here](https://code.visualstudio.com/download).
|
|
Install the recommended extensions by opening the Extensions-Tab (Ctrl+Shift+X).
|
|
Enter `@recommended` and install all extensions.
|
|
After that restart Visual Studio Code to apply all changes.
|
|
|
|
## Contributing
|
|
First create an issue and assign it to yourself. Or assign an existing issue.
|
|
Make sure all issue details (description, labels, milestones) are correct.
|
|
Check out in a new branch. Notice our convention: use either feature or fix followed by a slash (`/`) and then a **short** description using camel case. (`fix/addMissingImports` or `feature/addBasicAuth`).
|
|
After that you may create a Pull Request to merge your changes into master (If it's work in progress add `WIP:` to the title!).
|
|
Also refer to our **[COMMIT_CONVENTION](COMMIT_CONVENTION.md)**
|
|
|
|
## Deployment
|
|
In this section you can read details on the deployment cycle.
|
|
|
|
### Changelog
|
|
After bumping the version in the `package.json` please run:
|
|
```
|
|
npm install
|
|
```
|
|
to update all packages and bump the application version.
|
|
|
|
After that generate a changelog via the `changelog` gulp script.
|
|
```
|
|
npm run changelog
|
|
```
|
|
Then commit and tag your changes using: (use this format for versioning: `v[major][minor][patch]` i.e. v1.2.3)
|
|
```
|
|
git commit -m 'bump: to {version}
|
|
git tag {version}
|
|
git push origin
|
|
git push origin --tags
|
|
```
|
|
|
|
## Built With
|
|
|
|
* [Node.js](https://nodejs.org/) - The JavaScript runtime used as the project's base
|
|
* [NestJS](https://docs.nestjs.com/) - The framework used to create the REST API
|
|
* [HandlebarsJS](https://handlebarsjs.com/) - Dynamic HTML renderer using templates
|
|
|
|
## Authors
|
|
|
|
* **Simon Giesel** - *Initial work* - [Simon Giesel](https://git.cliffbreak.de/SimGie) |