1
0
mirror of https://github.com/xuthus83/pigallery2.git synced 2024-11-03 21:04:03 +08:00

Create CONTRIBUTING.md

This commit is contained in:
Patrik J. Braun 2021-03-26 21:54:35 +01:00 committed by GitHub
parent 24942b2ee1
commit e754f31cd9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

44
CONTRIBUTING.md Normal file
View File

@ -0,0 +1,44 @@
# PiGallery2 Contribution guide (draft)
## Intro
This project reached to a point when I cannot maintain it alone.
I'm happy to see that some people already submitted some pull requests (PR) so everyone can benefit their changes.
In general I'm happy to merge PRs, but I recommend to file a ticket and ask first if it is OK.
## How to develop
1. Download the sourcefiles
2. install dependencies `npm install`
3. Build client `npm run run-dev`
* This will build the client with english localization and will keep building if you change the source files
4. Build the backend `npm run build-backend`
* This runs `tsc` that transpiles `.ts` files to `.js` so node can run them.
* To rebuild on change run `tsc -w`
* Note: you can skip this test if you use and IDE that supports typescript (e.g.: webstorm, vscode)
5. Run the server `npm start`
## Developer docs
### Project structure
Overview:
```
|-- benchmark --A benchmark tool to test the speed of the app (not needed for development)
|-- demo -- contains some sample photo for https://pigallery2.herokuapp.com/ (not needed for development)
|-- docker -- contains all docker and docker realted configurations (this is the recommended way for app deplyoment)
|-- docs -- webpage for http://bpatrik.github.io/pigallery2/
|-- src -- contains the rource files <-------- This is what you need
|-- test -- contains the unit and integration tets <----- be nice and write tests to your feature
```
Source strucure:
```
|-- src -- contains the rource files <-------- This is what you need
|-- backend -- nodejs backend code
|-- common -- shared files (mostly DTOs) between the frontend and the backend
|-- frontend -- angular based frontend
```
TODO...