A simple electronic punch clock to track hours spent on projects.
Ruby 3.1
Rails 7.0
Postgres >= 13.7
Node 16.13.1
Yarn >= 1.22.19
$ git clone [email protected]:Codeminer42/Punchclock.git
$ cd Punchclock
$ Install Postgres
$ Install Redis
$ Install Yarn as a global dependency (npm i -g [email protected])
$ bin/setupAfter installation steps the following admin users will be created in database
- An Admin User
E-mail: [email protected]
Password: password
Javascript with ES6 syntax should be compiled by webpack instead of sprockets as of now. The Javascript may work in development mode in modern browsers, but it will break in production mode, be aware.
Run it on development mode using thin
$ foreman start -f Procfile.devTo enable guard-livereload, you need to install the LiveReload extension on your browser.
In another terminal, start Guard:
$ bundle exec guard
After that, start the extension on your browser. You'll see a browser connection browser on the terminal.
Freely make your changes and the page will be refreshed after you save it.
Install the docker and docker compose plugin versions:
- Docker
~>v20.10 - Docker compose plugin
~>v2.10
$ cp config/database.yml.example config/database.yml
$ docker compose build
$ docker compose run --rm app bin/setupAccess Rails console:
$ docker compose run --rm app rails cIf you want to run tests:
$ docker compose run --rm app bundle exec rspecNow run the servers:
$ docker compose upThis app uses RSpec, Factory Girl, Forgery and Faker to fake reality. Please read betterspecs.org.
At first time:
$ bundle exec rake db:migrateRunning tests:
$ bundle exec rake specRunning with Guard:
$ bundle exec guardTo debug this app, follow the following steps, for more details about debugging with pry, read the official documentation here: https://pry.github.io/ .
At the point of code that you want to debug, add:
binding.remote_pryRun you application, the app should stop at the point that you added binding.remote_pry.
In you terminal, run:
$ bundle exec pry-remoteNow you will get the piece of code where you can debug.
At the point of code that you want to debug, add:
binding.pryRun you application, the app should stop at the point that you added binding.pry and you will get the piece of code where you can debug.
At the point of code that you want to debug, add:
binding.pryIn you terminal, run:
$ bundle exec rspec <PATH_TO_FILE>To exit the pry console, type:
To hard exit:
-> !!!To soft exit:
-> exitCopyright 2013-2021, Codeminer 42.
Punchclock is made available under the Affero GPL license version 3, see LICENSE.txt.