Skip to content

MoistCode/ImaginaryNumblr

Repository files navigation

Imaginary Numblr

"Where nerds use numbers to speak to other nerds"

About

A website primarily inspired by Tumblr that takes a more mathematical modus operandi! Although the theme may initially come off as favoring only blogs pertaining to mathematics, it actually takes a much deeper approach. Mathematics is everywhere. From the fluid dynamics naturally taken into consideration by Vincent van Gogh when painting Starry Night, to what we all know and love, Calculus. There are absolutely no boundaries for entry and we welcome mathematicians of all levels, even if you dislike mathematics. So sign up, get that painting you've been working on for months or a photo of your dog and get some analysis from our top-notch Numblrs, maybe not of your dogs...dogs are just cute..

Technologies

Ruby on Rails React Redux HTML5/CSS3/JavaScript PostgreSQL Amazon Web Services S3

Features

Post Creation

Navigate seamlessly as creation is automatically updated and refreshed to show the most recently updated posts on your dashboard. Preview your uploaded items before creating them. No one likes those broken links...yuck... Currently supported types are quotes, long texts, audios, videos, and photos.


  render() {
    return (
        <div id='creation-modal'>
          <div
            className='w3-container w3-center w3-animate-opacity'>
          <div id='creation-form'>
            <i
              onClick={() => {
                this.props.showDashboard();
                this.props.clearErrors();
              }}
              className="fa fa-close"></i>
            <form onSubmit={(e) => this.handleSubmit(e)}>
              <input
                type='text'
                placeholder='Title'
                value={this.state.title}
                onChange={this.update('title')}
                style={{ fontSize: '28px' }} />
              {this._generateForm(this.props.contentType)}
              <button
                type='submit'
                className='create-submit-button'>Submit</button>
              {this._generateErrors(this.props.errors)}
            </form>
          </div>
        </div>
        {this._addEnterEventListener()}
      </div>
    )
  }

  _addEnterEventListener() {
    $('form').keypress(function (e) {
      if (e.which == 13) {
        $('form').submit();
        return false;
      }
    });
  }

Post Edition/Deletion

With the power of React's state, we can create, edit, delete, etc., without ever having to refresh to see the updates! This is done by manipulating the state of the current component which trickles an avalache effect where React compares the changes to the previous information and make changes as necessary.



User Follows

Following a user allows access to every post associated with that user in real time. If you were to ever unfollow a user, your dash would instantly remove all their posts from your dashboard.



Post Likes

Enjoy a post? By liking a post, you will not only show appreciation for the author but will also save that post for future reference for everlasting entertainment!



  • Chatting with other users
  • Allowing users to choose a theme for their show page
  • User settings (i.e., option to change password, username, profile picture)
  • Reblogs and shares
  • Messaging
  • Tags to improve recommendation algorithm
  • LaTeX integration

About

A blogging website with a mathematical twist!

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published