Skip to content

Bare bones social media clone showcasing modern backend development principles: cloud hosting, CI/CD, unit testing, functional testing, and user authentication.

Notifications You must be signed in to change notification settings

davidmakoto/social-media-backend-clone

Repository files navigation

Blog Clone

This project is a bare bones backend app modeled after instagram/twitter. The purpose of the app is to show off modern programming practices such as:

  • data validation (in User/Microposts models)
  • testing (functional and unit tests for Users/Microposts)
  • deployment via Heroku
  • CI/CD using Heroku and GitHub
  • user authentication via Devise

Demos

Live demo: https://tweetir.herokuapp.com

Auth demo

sample app auth demo

CRUD demo

sample app demo of crud operations on posts

Dependancies

  • Ruby on Rails 3.1.2 (it's recommended to use ruby version manager (rvm) however if you prefer not to, instead install Rails 3.12 instead of the rvm step below)
  • SQLite3 v1.4 for development/testing and PostgreSQL v1.35 for production

Running instructions:

Navigate to parent directory

git clone https://github.com/davidmakoto/social-media-backend-clone.git
cd social-media-backend-clone
rvm install 3.1.2 && rvm use 3.1.2
bundle install 
bundle exec rails db:setup
bundle exec rails db:migrate
bundle exec rails server

Testing

bundle exec rails test

CI/CD Details

GitHub Actions runs tests on new commits to main branch which deploys automatically to heroku when passed

Resources used:

About

Bare bones social media clone showcasing modern backend development principles: cloud hosting, CI/CD, unit testing, functional testing, and user authentication.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published