Giter Site home page Giter Site logo

skinofstars / call-to-action Goto Github PK

View Code? Open in Web Editor NEW
2.0 0.0 1.0 355 KB

Add actionable buttons to selected news stories.

Home Page: http://call-to-action.skinofstars.com

License: MIT License

Ruby 71.00% CoffeeScript 0.60% JavaScript 6.80% CSS 3.85% HTML 17.76%

call-to-action's Introduction

Call To Action

About

Call to Action is a method to provide meaningful actions to people based on a body of text. In particular, it is designed to make news more than just entertainment.

More info on the purpose can be found at http://call-to-action.skinofstars.com

The tech jist

The project currently has two parts.

The approach today is very simple. The server returns a list of JSON ctas (call to actions) that look like this:

[{
  "title":"Disasters Emergency Committee - Nepal appeal",
  "url":"http://www.dec.org.uk/appeals/nepal-earthquake-appeal",
  "always":"Nepal",
  "keywords":["quake","earthquake"]
}]

you can see them all at http://call-to-action.skinofstars.com/ctas.json

The client then looks at the story content on the page (defined by a known css class/id), checks that it has the "always" word, then that it has one of the "keywords". If it does, it appends that cta to the end of the story content.

Help wanted

The project is in super-alpha-releasse-mode. There are lots of things that need to be done to make it truly useful. If you think it's a good idea, then please get involved in helping. Some ideas include:

  • Submit actions -> http://call-to-action.skinofstars.com for info
  • Ask for a news site to be added
  • Work out a way of extracting just the story text from a page
  • Improve the text analysis
  • Do server side text analysis based on submission (currently all done in client's extension)
  • Do server side text analysis based on a URL
  • Provide a method to hook up with charity/action group's databases to auto populate
  • Improve the server side management console (you kinda have to know the routes)
  • Make it easy for people to submit action ideas (anonymous user submission?)
  • Make the site pretty
  • Make the logo pretty
  • Make the call-to-action buttons more appealing
  • Create a Firefox Add-on
  • Suggest other things that need doing

This is still very proof of concept, so don't consider anything in stone. If you reckon the text analysis could be super if the server side was actually in Python, then great. Let's look at how we can make it! Nothing is sacred :)

Hacking

The project set-up requires provisioning roles from another repo, so use a recursive clone.

git clone --recursive [email protected]:skinofstars/call-to-action.git

To hack on the Chrome extension, load up chrome://extensions/ in your browser, click 'Load unpacked extension...' and select the /chrome folder in the project root. If you make any changes, just refresh on that extension page.

You should be able just use vagrant up to get the server running. There may be a little extra tweaking needed to get the ruby puma webserver running, though that should be little more than running rails s in your vagrant.

That's it really. Feel free to post any questions, concerns, quandaries and quibbles in the issues.

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.