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: 4 months 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 (9 months ago)
- Default Branch: main
- Last Pushed: 2025-02-26T21:31:07.000Z (5 months ago)
- Last Synced: 2025-03-03T14:13:59.345Z (4 months ago)
- Topics: employee-management, monolith, ruby, ruby-on-rails, scheduler, shifts
- Language: Ruby
- Homepage:
- Size: 310 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 4
-
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.