This app is a warehouse booking app. It is built with a Ruby on Rails API and a React frontend. 📦🚚
Features Summary:
- users can search for available slots and book an available one
- users can view slots that have already been booked on the calendar
- slots can't overlap with existing ones
- slots start at multiple of 15 minutes i.e 9:15, 10:00
- minimum duration for a slot is 10 minutes
To run the app successfully, the following must be installed in your local environment:
- Node JS
- Ruby
- Ruby on Rails
- SQLite
- Git
Clone the repo by running:
git clone [email protected]:briankabiro/warehouse-booking-app.git
- From the terminal, navigate to the backend folder:
cd warehouse-booking-app/backend
- Install the dependencies by running:
bundle install
- Setup the database:
rails db:setup
- Run the migrations:
rails db:migrate
- Start the Rails application on port 8080:
rails s -p 8080
Backend tests
- Run the tests for the Rails API:
rspec -f d
- The controller tests are in the
spec/requests
folder - Model tests are in the
spec/models
folder
Rubocop
- In the main backend directory, run the linter for the backend code:
rubocop
- Navigate to the frontend folder
cd frontend
- Install dependencies
yarn install
- Start the application:
yarn start
- Visit
localhost:8081
on the browser to see the React app - You are now ready to book some slots! Enjoy.
- Ant Design
- Full Calendar
- SQLite