~tpt/imstransport-web-site

An interactive Web presentation for the auto-transport firm 'Nikola Josifović'
Consolidate license text
9cfafa44 — Dejan Josifović 6 years ago
Update readme and prepare for GH release.

refs

master
browse  log 

clone

read-only
https://git.sr.ht/~tpt/imstransport-web-site
read/write
git@git.sr.ht:~tpt/imstransport-web-site

You can also use your local clone with git send-email.

#imstransport-web-site

A interactive Web presentation for the auto-transport firm 'Nikola Josifović'. The main feature/usage of the site is to calculate the price of the transportation by marking the start and end points on the map. Only considered area is Serbia and all routes that are outside the borders are not calculated. Site has only Serbian version.

The site was hosted under www.imamesvuda.rs. Because of some technical difficulties with the DNS provider, we had to use redirect.center to route the domain name to the Heroku repo.

The firm was terminated in September 2018. and the site is released to public under GNU general public license v3.

#Developing

Some development documentation, as well as a todo list can be found here.

#Setup

When you first clone this repository, run:

lein setup

This will create files for local configuration, and prep your system for the project.

#Environment

To begin developing, start with a REPL.

lein repl

Then load the development environment.

user=> (dev)
:loaded

Run go to initiate and start the system.

dev=> (go)
:started

By default this creates a web server at http://localhost:3000.

When you make changes to your source files, use reset to reload any modified files and reset the server. Changes to CSS or ClojureScript files will be hot-loaded into the browser.

dev=> (reset)
:reloading (...)
:resumed

If you want to access a ClojureScript REPL, make sure that the site is loaded in a browser and run:

dev=> (cljs-repl)
Waiting for browser connection... Connected.
To quit, type: :cljs/quit
nil
cljs.user=>

#Testing

Testing is fastest through the REPL, as you avoid environment startup time.

dev=> (test)
...

But you can also run tests through Leiningen.

lein test

#Generators

This project has several generator functions to help you create files.

To create a new endpoint:

dev=> (gen/endpoint "bar")
Creating file src/foo/endpoint/bar.clj
Creating file test/foo/endpoint/bar_test.clj
Creating directory resources/foo/endpoint/bar
nil

To create a new component:

dev=> (gen/component "baz")
Creating file src/foo/component/baz.clj
Creating file test/foo/component/baz_test.clj
nil

To create a new boundary:

dev=> (gen/boundary "quz" foo.component.baz.Baz)
Creating file src/foo/boundary/quz.clj
Creating file test/foo/boundary/quz_test.clj
nil

#Deploying

Production version is deployed on Heroku environment. Before running setup install Heroku cli. To deploy run:

lein deploy

Copyright (C) 2016-2023. Auto-transport firm 'Nikola Josifović'

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see http://www.gnu.org/licenses/.