detransport_lviv_telegram

Public transport in Lviv πŸ‡ΊπŸ‡¦

detransport_lviv_telegram

Source code for https://t.me/DetransportBot

image image image

Installation

Requirements

  • Crystal
  • PostgreSQL

Clone repository:

git clone https://github.com/mamantoha/detransport_lviv_telegram.git

Setup Telegram

Copy .env.example to .env and set variables

Setup Database

Copy config/database.yml.example to config/database.yml and set PostgreSQL variables

crystal sam.cr db:setup
crystal sam.cr db:migrate

Run

shards build --release --production
./bin/detransport_telegram

Development

DB Migration

$ crystal sam.cr generate:migration ChangeUserId
./db/migrations/20220709130450248_change_user_id.cr was successfully created.

Update stops

To update ./src/detransport_telegram/data/lviv_stops.json run:

crystal ./utils/update_stops.cr

Deployment

Linux with systemd

Create /etc/systemd/system/detransport_lviv_telegram.service

[Unit]
Description=Detransport Lviv Telegram service
After=network.target
StartLimitIntervalSec=0

[Service]
Type=simple
Restart=always
RestartSec=1
User=user
WorkingDirectory=/path/to/detransport_lviv_telegram
ExecStart=/path/to/detransport_lviv_telegram/bin/detransport_telegram &>/dev/null &
StandardOutput=null
StandardError=null

[Install]
WantedBy=multi-user.target
sudo systemctl enable detransport_lviv_telegram
sudo systemctl start detransport_lviv_telegram

Contributing

  1. Fork it (https://github.com/mamantoha/detransport_lviv_telegram/fork)
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Contributors

Repository

detransport_lviv_telegram

Owner
Statistic
  • 4
  • 0
  • 0
  • 0
  • 9
  • about 1 month ago
  • May 9, 2019
License

MIT License

Links
Synced at

Thu, 21 Nov 2024 16:35:01 GMT

Languages