Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tinchorocks/shiftmanager
Rails Monolith to Manage Employee Shifts
https://github.com/tinchorocks/shiftmanager
employee-management monolith ruby ruby-on-rails scheduler shifts
Last synced: 6 days ago
JSON representation
Rails Monolith to Manage Employee Shifts
- Host: GitHub
- URL: https://github.com/tinchorocks/shiftmanager
- Owner: Tinchorocks
- Created: 2024-10-29T01:59:22.000Z (22 days ago)
- Default Branch: main
- Last Pushed: 2024-11-13T13:19:21.000Z (7 days ago)
- Last Synced: 2024-11-13T14:25:29.805Z (7 days ago)
- Topics: employee-management, monolith, ruby, ruby-on-rails, scheduler, shifts
- Language: Ruby
- Homepage:
- Size: 270 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# ShiftManager
## Project Overview
Rails application that features a web-based scheduling/admin system.
[Stack Used](Stack.md).
## Installation and setup
This project uses Docker to run. You should install Docker & Docker-compose.
[How to install Docker](https://docs.docker.com/engine/install/).
[How to install Docker-compose](https://docs.docker.com/compose/install/).
1. Build docker image
```ruby
docker-compose -f development.yml build
```
2. Start project
```ruby
docker-compose -f development.yml up
```You can acccess to your started project in localhost:3000.
## Running tests
With the project running, you can run all test with the next 2 commands
```ruby
docker exec -it shiftmanager_rails bash
bundle exec rspec
```## Deployment instructions
Note: deployment for this app was removed since fly.io consumes resources ($$). I might add a Heroku free deploy later.
## TODO
Pending items for a future version:
* [ ] Allow user to add notes (forgot to do this when adding the bonus features and i've only added the "acknowledge" feature). Notes exists but are only available for schedulers.
* [ ] Add sorting to both /admin/users and /shifts.
* [ ] Add filtering to both /admin/users and /shifts.
* [ ] Add pagination to both /admin/users and /shifts.
* [ ] Add more integration specs.
* [ ] Add feature tests using selenium.
* [ ] Add the ability to create/modify roles along with permissions (now its hardcoded in the seeds).
* [ ] Add shared contexts to specs to improve readability.
* [ ] Handle strings in views as translations with i18n.
* [ ] Add rubocop or any other code linter.