- 📖 About the Project
- Frontend
- Kanban Board
- 💻 Getting Started
- 👥 Authors
- 🔭 Future Features
- 🤝 Contributing
- ⭐️ Show your support
- 🙏 Acknowledgements
- 📝 License
[DriveWise Backend] is a Ruby on Rails API that serves data to the DriveWise Frontend application. It is a RESTful API that allows users to create, read, update, and delete data from the database.
- The link to the frontend repository of the app can be found here
- The Kanban board can be found here
- Screenshot of the initial state of our Kanban board can be found here
Framework
Database
- User - Create, read, update, and delete users
- Car - Create, read, update, and delete cars
- Reaservation - Create, read, update, and delete reservations.
The API endpoints are:
Users
- GET /users
- GET /users/:id
- POST /users
- PATCH /users/:id
- DELETE /users/:id
Cars
- GET /cars
- GET /cars/:id
- POST /cars
- PATCH /cars/:id
- DELETE /cars/:id
Reservations
- GET /reservations
- GET /reservations/:id
- GET /users/:user_id/reservations
- GET /cars/:car_id/reservations
- POST /users/:user_id/reservations
- PATCH /users/:user_id/reservations/:id
- DELETE /users/:user_id/reservations/:id
To get a local copy up and running, follow these steps.
In order to run this project you need:
- Ruby
- Rails
- PostgreSQL
Clone this repository to your desired folder:
cd my-folder
git clone git@github.com:iamchristianani/drivewise-backend.git
Install this project with:
cd drivewise-backend
bundle install
Setup database with:
rails db:create
rails db:migrate
rails db:seed
To run the project, execute the following command:
rails server
To test the endpoints with swagger, visit:
http://localhost:3000/api-docs
To run tests locally, run the following command:
rspec
We have a total number of 4 team members, namely:
👤 Yuvenal Njoroge
- GitHub: @yuvenalmash
- Twitter: @YuvenalNjoroge
- LinkedIn: Yuvenal Njoroge
👤 Roy Jumah
- GitHub: @RoyJumah
- Twitter: @roy_issues
- LinkedIn: Roy Jumah
👤 Christian Ani
- GitHub: @iamchristianani
- Twitter: @kriznode
- LinkedIn: Christian Ani
👤 Ahmed Abas
- GitHub: @boo-shehab
- Twitter: @boo-shehab2000
- LinkedIn: @ahmed-al-ali-77b6a0246
- [Authentication] - Add authentication to the API endpoints to allow only authorized users to access the data.
- [Authorization] - Add authorization for only admin users to access some specific data.
Contributions, issues, and feature requests are welcome!
Feel free to check the issues page.
If you like this project, give it a ⭐️!
I would like to thank all the contributors to this project.
This project is MIT licensed.