Open devinhalladay opened 6 years ago
@devinhalladay Wait.... is this for the screenshot thing or something else? I have literally zero knowledge on everything mentioned above... Just curious as to what it is for.
@mazzybell this is for something else! there's probably a way for the screenshot thing to be looped into this project eventually, but this project is for the webapp Calvin and I wanted to build for the TV in Brown 307.
My knowledge is pretty limited. Whatever route we take, I'm going to have to learn a language. I'm ok with that. Choo looks pretty accessible.
I have no backend experience. However, I'm willing take the plunge into the deep end.
The are.na API looks really limited. It's not capable of doing what we want.
The dropbox API has a bit more functionality. However I don't think it's a sustainable choice for our app.
Looks like we're going to be learning Apollo and GraphQL.
The more I think about this the more I think our best options are probably Next.js, Choo, or Vue.js.
Vue and Next both have larger developer ecosystems and have been around longer, so even though Choo seems really cool, maybe it's not the best option. I'll look into this further this weekend.
As far as drag-and-drop uploads, we can probably just use this library and integrate it into our app: http://www.dropzonejs.com/.
As far as servers go, for the sake of simplicity, we can just deploy to Heroku or if we use Next.js we can deploy to Zeit
Alright after thinking about this more I think it makes most sense to learn and use Vue.js for the frontend stuff. They have a pretty active community and while Vue isn't as "trendy" as Next or Choo, it seems really functional and lots of people are using it.
You also sort of need to know React in order to use Next and in order to extend Choo, but since Vue is its own framework, you can just learn Vue and not worry about the crazy react ecosystem.
@millenniallglyphs — this week do you want to look into solutions for some of the technical problems we discussed in class on Friday? It would be cool to have some rudimentary implementations of our volume idea (volume increases as an object nears the center of your screen) and perhaps of the way each object in the space will move.
I'll take a look at backend architecture things this week, but I encourage you to also take a look at Vue and see if it seems manageable for you to learn the basic ropes as we develop this—we'll both be on level playing ground when it comes to our knowledge about this thing so as long as we agree that it looks reasonable we should be fine.
@devinhalladay Sounds like a plan. I'll investigate movement and sound variables. I will also familiarize myself with Vue.
Idk what is the best stack to build on these days.
For the frontend: We could maybe just use React? That might be too heavy and complex for what we need. I've also seen Choo picking up a lot of steam by indie devs these days, so it could be cool to check out; Next.js is also cool. Or if you're comfortable with Ruby, we can use Rails or Sinatra.
For the backend: ??? — I really don't know my backend tech anymore, so this will be the biggest challenge I think. I know Apollo and GraphQL are picking up speed for interfacing with databases, so that's probably a good place to start.
However, I also considered the option of using the Dropbox API, or possibly the Are.na API, to retrieve and upload content. This could potentially be valuable because it's cheap and hopefully will take less time than a custom solution using the previously mentioned technologies. In this case, we'd upload images to an Are.na channel or public Dropbox folder when a user drops them on the page, and fetch them from that channel or folder when the site is loaded.
I suspect the above approach may also run into limitations at some point due to API limitations; and I'm not entirely sure if either of these APIs allow the things we need (mainly, file upload), so we'll need to do a little more research.