GithubHelp home page GithubHelp logo

bento-wiki-spider's Introduction

How many hops to Philosophy

https://bento-wiki-spider.herokuapp.com

Self Evaluation

The Good

  • Well, it "works"
  • Used Spark framework for the first time
  • Deployment on Heroku via Maven
  • Gulp + optimizations setup (see Bendystraw)
  • Using Angular 1.5 front-end (not following all of my guidelines but it is something to look at..)
  • I'm using Belly's style framework (Makes it a little prettier and shows just another integration)

The Bad

  • Not fully complete - there are some criteria not met
  • Logic: Edge cases are probably not handled completely
  • Code organization could be improved
  • Data persistence is not leveraged outside of the session
  • Checks for infinite loops could be handled more appropriately
  • No checks for known nodes/paths (potential performance optimization)
  • No tests

This Repo

Done

  • Node, NPM, Bower, Gulp
  • brousalis/bendystraw integration (deployment optimizations and more)
  • bellycard/rolodex integration
  • Base Angular setup with ui-router
  • Angular communication with Spark backend
  • Spark Setup
  • Heroku deployment
  • Use session for temp storage (sorry)
  • Trace wiki route
  • Display hops in angular app
  • Configure heroku plugin to include static files (remove target from git repo)
  • Use heroku maven plugin to deploy (remove public and target folders from repo)

Not Done

  • Hibernate connection with Derby (failed here: #1)
  • Need a better way to develop locally and be able to edit angular code and java code without rebuilding
  • Find a way to build on deploy and not commit compiled resources on every change (this is so annoying)
  • Show loading while parsing / or show progress (but that will take more changes)
  • Configure maven to run gulp build

This is the start of the java hack project.

  • Full-stack java-based app
  • Web view that accepts a wikipedia url (starting point)
  • recursively retrieve the first lowercase link in the main text until the Philosophy page is reached
  • persist and present the path taken (include datastore)
  • handle edge cases or special scenarios
  • display sufficient design and organization of application
  • will be mostly new technologies and I get to use an IDE again (not even sure what is on my personal computer...)

Technologies to tinker with:

  • Spark
  • Hibernate (nvm)
  • Angular (1.5)
  • MySQL (maybe use an in memory data store or filestore) - maybe Postgres if I'm deploying to Heroku
  • Deploy to Heroku?

References:

Running Deploying

brew // all the things (node, npm)
npm install -g bower
npm install --global gulp-cli

npm install
bower install
gulp build
mvn heroku:deploy

heroku open

// and when things catch fire
heroku logs --tail -a bento-wiki-spider

Or if you really need to get your hands dirty

heroku run bash -a bento-wiki-spider

For Angular Development

Just run gulp and then open: http://localhost:4567

When a dev server hangs on the port

kill -kill `lsof -t -i tcp:4567`

bento-wiki-spider's People

Contributors

ashtonthomas avatar

Watchers

 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.