As a small-scale farmer of chicken, I have always struggled to keep track of my flock. Now, as a software developer, I have an advantage and I am challenging myself to build a system that will help me manage my flock by leveraging the advantages that tech has to offer. This will also be a neater, faster, and more automated process that will make the process of data storage of poultry details and retrieval faster.
With the software, you will be able to track a chicken from the time it is a chick all the way to when it is a fully grown chicken and become a rooster and provide meat or a hen and provide eggs and also count the number of eggs it will have laid throughout its lifetime.
You will be able to create a "collection" having groups such as local (Kienyeji) or broiler chicken. Kuku is Swahili for chicken.
This application will help me practice:
- The REST framework by creating CRUD API endpoint for adding, deleting updating data
- Writing integrated unit tests using the Rspec library for unit tests for my API end points.
- API documentation using the Rswag library to document the endpoint for my API application.
- The Ruby on Rails MVC. Technically just the Models and controllers as this is an API application there will be no view here but the view will be an external application.
- Project documentation by writing a detailed README upon completion to help anyone who might be interested with my project
- Project deployment making use of render which will host my API application.
Enjoy!
- Ruby on Rails
- PostgreSQL
- Test-driven development
- Rubocop
- Ruby Gems
To get local copy of the project and run
git clone git@github.com:Nemwel-Boniface/my_kuku.git
- ``cd my_kuku`
gem install bundler
bundle install
rails s
Setup db
su - postgres
psql
create role nemwel with createdb login password 'root'
rails db:setup
rails db:create
rails db:seed
bundle exec rspec
rubocop
rake
rspec
rubocop
rubocop --auto-correct-all
orrubocop -A
Have fun with TDD!
👤 Nemwel Boniface
- GitHub: @Nemwel Boniface
- Twitter: @Nemwel Boniface
- LinkedIn: @Nemwel Bonifacej
Contributions, issues, and feature requests are welcome!
Feel free to check the issues page.
Give a ⭐️ if you like this project!
- Anyone whose code will be used
This project is MIT licensed.