mirror of
https://github.com/originalmk/skrytka-app.git
synced 2025-01-18 08:19:17 +00:00
skrytka.app
Be aware that this app is not stable yet and new commits may introduce breaking changes
To start this application you need to:
- You can use
git clone https://github.com/Skrytka-App/Skrytka.App
to download this app. - Configure database
- Install PostgreSQL DBMS
- Setup some database and user with permissions to it
- Create .env file in the main directory and fill it in with fields DB_USER, DB_PASS, DB_HOST, DB_PORT, DB_NAME and COOKIE_SECRET. In case of confusion you may check exemplary .env file saved as .env.example in the root directory of this repository.
- Run
npm install
in the main directory. - Run SQL migrations. To do that you should have knex installed globally too (npm install knex -g) and then execute
knex migrate:latest
in the root directory. For app to be usable it is also recommended to insert some data to the database.- Note: Images should be added in media/images directory and image paths inserted into database should only contain part starting with images/ for example image may be uploaded at media/images/wozLEFT.webp and path in database should be images/wozLEFT.webp.
- Run
npm install
in the client directory. - Run
npm build
in the client directory.- You need to do this after every update of app's frontend (you can do it every time you pull new version of this app).
- Run
npm start
in the main directory - App will run on localhost:5000
Note: pm2 or/and nginx may be used to run this app for production
Updating
- Stop the app. Execute
pm2 stop <your-app-name>
if you use pm2. - Use
git pull
to get latest changes. - Run
knex migrate:latest
in the root directory. Remember you need to have knex installed both globally and locally (it is in package.json so if you runnpm install
you will have it installed) to do that. - Go to client directory and enter
npm build
. - Start the app. If you use pm2, exectue
pm2 start <your-app-name>
.
Contributing
You are welcome to help us create Skrytka. Just remember to dicuss what you want to work (specified issue - if there is no one then you should create one for that). Code contributed should be tested to work correctly!
Description
🚒 App which helps firefighters to learn equipment placement in fire trucks, because every second matters
Languages
JavaScript
71.7%
SCSS
25.8%
HTML
1.9%
CSS
0.6%