Project by Thales Neves
Created with Ruby On Rails.
Surfriends is a twitter like social media web app with the porpuse of finding new surf friends and share ideas about surfing.
I created the basic features of a social media app.
Each user has a profile with proper authentication with email and password for login and logout, users can also upload his profile picture and also edit all information at any time. The profile also stores and show stats of the user.
The User also can access other users profile to check their stats, posts and follow them.
The main features of the page it's the Posts and Feed.
Each user can create Posts to share his thoughts to other users, the user can delete his own posts at any time.
The Feed shows all other users posts also in order of creation in the Home Page.
Like any social media I implemented a way to create a connection with other users by follow and unfollow feature. After following another user, his posts will appear now in your feed. The user can also unfollow the user at anytime.
In each user profile there is also a link to the list of the people he is following and his followers.
A list of users that you're not following yet will appear in your home page as suggestion for you to follow them.
When visiting other user profile, also it shows a list of the users that are following him.
- MVC architecture pattern
- Active Record as ORM, validations and associations
- Active Storage for uploading and manage images
- Test Driven Development with Rspec and Capybara
- RESTful routes
To get a local copy up and running follow these simple example steps.
Install Ruby: 2.7.0
Install Rails: 5.2
Install Postgres: >=9.5
Instal gems with:
bundle install
Setup database with:
rails db:create
rails active_storage:install
rails db:migrate
Start server with:
rails server
Open http://localhost:3000/ in your browser.
rpsec --format doc
In order to deploy this app to Heroku follow the steps below
Install the Heroku CLI
After that type the command to create the app and add the heroku repository to your project
heroku create
Then deploy the app.
git push heroku {your-branch}:master
Change {your-branch} for the name of your local branch
For example:
git push heroku surfriends:master
If you are deploying from the master branch you can just push with just master.
git push heroku master
Follow the instructions on your terminal to get the URL where your app was deployed
Finally run the command to create your database and tables on Heroku's server
heroku run rake db:migrate
👤 Thales Neves
- Github: thneves
- Twitter: @tsneves11
- LinkedIn: Thales Neves
Contributions, issues and feature requests are welcome!
Just go to project's issues page.
Give a ⭐️ if you like this project!
- This project was inspired in Twitter Redesign by Gregoeire Vella.
