- 📖 About the Project
- 💻 Getting Started
- 👥 Authors
- 🔭 Future Features
- 🤝 Contributing
- 🙏 Acknowledgements
- 📝 License
The project is based on an app to book an appointment to try a motorcycle. and follow the given design of the website but with personalized content for making a car reservation app, this is the project back-end, it's used as an API for the front-end found here.
Client
Server
Database
-
The user logs in to the website by typing the Email and Password.
-
In the navigation panel, the user can see links to:
-
"Items list".
-
"Reserve" form.
-
"My reservations".
-
"Add items".
-
"Delete items" (the link is visible to everybody).
-
On the main page, the user can see a list of motorcycles/doctors/classes/items that you selected as a theme. List
-
When the user selects a specific item, they can see the details page with its full description.
-
On the details page, the user can click the "Reserve" button.
-
When the user clicks the "Add item" link in the navigation panel they can see a form for adding a new item.
-
Make the app responsive, creating both mobile and desktop versions.
-
When the user clicks the "Delete item" link in the navigation panel they can see a list of all items with title and "Delete" button.
-
When the user clicks the "Delete" button, the selected item is marked as removed and does not show on the main list anymore.
-
To reserve an appointment, the user has to select a date and city (username and selected item are auto-filled).
-
Have all necessary inputs.
-
The user can access the "Reserve" page from the navigation panel. In that case, only the username is auto-filled.
-
When the user clicks the "My reservations" link in the navigation panel they can see a list of their reservations (with information about item name, date, and city).
-
Have full documentation for the API.
-
Implement proper user authentication from the front end to the server.
-
The "Add item" and "Delete item" links are accessible only by users who are admins.
To get a local copy up and running, follow these steps.
Install this project with:
bundle install
Setup Database by running these commands:
- Remove config/master.key and config/credentials.yml.enc if they exist.
rm config/master.key config/credentials.yml.enc
- Run in the terminal:
EDITOR=code rails credentials:edit
- Close the editor that opens.
- This command will create a new master.key and credentials.yml.enc if they do not exist.
rails db:create
rails db:migrate
To run the project, execute the following command:
rails server
Use this command to fix Rubocop Linter Errors:
rubocop -A
Use this command to fix Stylelint Errors:
npx stylelint "**/*.{css,scss}" --fix
👤 Javier Aybar
- GitHub: @JavierAybar
- LinkedIn: @JavierAybar
👤 Marc Raphael
- GitHub: @Marcraphael12
- Twitter: @MarcRaphael20
- LinkedIn: Marc Raphael
👤 Reza Merzaie
- GitHub: @Gh-Reza
- Twitter: @RezaMerzie
- LinkedIn: @RezaMerzie
👨🏼🚀 Abdelaziz Mahdi 🐱👤
- GitHub: @Abdelaziz-Mahdi
- Twitter: @_AbdelazizMahdi
- LinkedIn: in/abdelaziz-mahdi
👤 Nurbol Sultanov
- GitHub: @everinurmind
- LinkedIn: LinkedIn
- Add about page.
Contributions, issues, and feature requests are welcome!
Feel free to check the issues page.
Vespa - Responsive Redesign by Murat Korkmaz
This project is MIT licensed.