Skip to content

Miru | Time Tracking and Invoicing and Employee Benefits. Built using RubyonRails and ReactJS

License

Notifications You must be signed in to change notification settings

RubyOnWorld/miru-web

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Miru is an open-source tool, designed to make time tracking, invoice management, and accounting easy for small businesses worldwide. It is a platform for organizations to help them streamline their workflow.

GitHub contributors GitHub stars GitHub release (latest by date) GitHub commit activity GitHub license Twitter Follow

Miru Monthly Timetracking page

Miru Invoice page


Installation

  1. Clone repo to local
git clone https://github.com/saeloun/miru-web.git
  1. Install rvm and nvm

    (Tip: To allow nvm to automatically detect and change node versions for your project as you cd into the directory follow this)

  2. Install ruby 3.1.1

rvm install $(cat .ruby-version)
  1. Install Node 16.4.2(can be skipped if you followed the tip mentioned in (2) above)
nvm install $(cat .nvmrc)
  1. Install Postgres
brew install postgresql
  1. Install elasticsearch
brew install elastic/tap/elasticsearch-full
brew services start elasticsearch-full
  1. Install Redis
brew install redis
  1. Setup the app
# Go to the miru-web app directory

bin/setup
  1. Run app in local env
foreman start -f Procfile.dev
  1. Navigate to http://0.0.0.0:3000

To receive the emails in non-production apps.

Go to /sent_emails for accessing the emails(for /sent_emails route to work, add EMAIL_DELIVERY_METHOD='letter_opener_web' to .env)

Tests & Coverage

Tests

  1. Run bin/rails db:create RAILS_ENV=test
  2. Run bin/rails db:migrate RAILS_ENV=test
  3. Run bundle exec rspec

Coverage

  1. Run COVERAGE=true bundle exec rspec
  2. Open coverage/index.html(open coverage/index.html in MacOS and xdg-open coverage/index.html in Debian/Ubuntu)

Testing in Review apps

User Test credentials

Role Email Password
Owner [email protected] password
Admin [email protected] password
Employee [email protected] password

Installation of Cypress Dependencies

Install the cypress dependencies using the following command:

cd cypress
yarn install

Running Cypress tests

Cypress tests can be run on local, staging and production environment.

To run the cypress tests on the local environment and in headless mode use the following command:

cd cypress
yarn run cy:run:dev

To run the tests on local environment and in chrome browser use the following command:

cd cypress
yarn run cy:open:dev

To run the tests on staging environment and in headless mode use the following command:

cd cypress
yarn run cy:run:staging

To run the tests on staging environment and in chrome browser use the following command

cd cypress
yarn run cy:open:staging

Deployment

Heroku one-click deploy

You can deploy Miru on Heroku using the one-click-deployment button:

Deploy

Community Support

Feel free to join our Slack workspace for support and questions.

Contributors ✨

Thanks goes to all our contributors

License

Miru © 2022, Saeloun - Released under the MIT License.

About

Miru | Time Tracking and Invoicing and Employee Benefits. Built using RubyonRails and ReactJS

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Ruby 49.2%
  • TypeScript 41.0%
  • HTML 5.8%
  • JavaScript 2.2%
  • SCSS 1.7%
  • Shell 0.1%