Giter Site home page Giter Site logo

chitter-challenge's Introduction

Chitter Challenge

๐Ÿš‚๐Ÿš‹๐Ÿš‹๐Ÿš‹๐Ÿš‹๐Ÿš‹
Weekend challenge
"Creating a twitter clone over the weekend"

Contents:

User Stories:


STRAIGHT UP

As a Maker
So that I can let people know what I am doing  
I want to post a message (peep) to chitter

As a maker
So that I can see what others are saying  
I want to see all peeps in reverse chronological order

As a Maker
So that I can better appreciate the context of a peep
I want to see the time at which it was made

As a Maker
So that I can post messages on Chitter as me
I want to sign up for Chitter

HARDER

As a Maker
So that only I can post messages on Chitter as me
I want to log in to Chitter

As a Maker
So that I can avoid others posting messages on Chitter as me
I want to log out of Chitter

ADVANCED

As a Maker
So that I can stay constantly tapped in to the shouty box of Chitter
I want to receive an email if I am tagged in a Peep

Technology Used

  • Ruby
  • Sinatra
  • Bootstrap
  • Javascript

Models

Installation

  • Install Ruby
  • Git Clone the repo into its own folder
  • From inside the repo folder, run 'bundle install'
  • run 'rake'
  • run 'rackup config.ru'
  • now run 'ruby app.rb'

Usage example

Signup Page

chitter signup

Users must sign up with their email address, passwords, username and full name.

Login Page

login form

After a user has registered successfully, he will be rerouted to a longin page where they can login using their new details.

Home Page

homepage
On this page, the user can leave peeps on the public timeline.

Testing

  • run 'rspec' in the folder

Thoughts

I found this project quite interesting. It was a a good challenge to build a bare basics CRUD application in a new tech stack (Sinatra).
I really enjoyed putting together the backend but the most enjoyable part for me was styling the page. I used bootstrap as a styling framework as I had limited time (Just 2 days) and wanted to get something decent looking so I could present it to my cohort on review day.

This challenge has really helped me have an idea of how social media sites are put together.

TODO

If I had more time, I would have Implemented

  • Ability to mention different users
  • User notifications
  • Fix bug where certain characters are not parsed properly into the database

All in all for 2 days work I was pretty happy with what I came up with.

Meta

Alfie Darko - [email protected]

Distributed under the MIT license.

https://github.com/AlfieDarko/chitter-challenge

Contributing

  1. Fork it (https://github.com/AlfieDarko/chitter-challenge/fork)
  2. Create your feature branch (git checkout -b feature/fooBar)
  3. Commit your changes (git commit -am 'Add some fooBar')
  4. Push to the branch (git push origin feature/fooBar)
  5. Create a new Pull Request

chitter-challenge's People

Contributors

alfiedarko avatar anitacanita avatar chrisjbatts avatar dearshrewdwit avatar domvernon avatar neoeno avatar ptolemybarnes avatar sdorunga avatar silvabox avatar sjmog avatar spike01 avatar tansaku avatar

Stargazers

 avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.