open-source-ideas / ideas

πŸ’‘ Looking for inspiration for your next open source project? Or perhaps you've got a brilliant idea you can't wait to share with others? Open Source Ideas is a community built specifically for this! πŸ‘‹

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Open Source Ideas Website

mikaelbr opened this issue Β· comments

Project description

Make a website for this repository. This can be a great way to get involved. To make the issues and project suggestions as accessible as possible we should have a website with search, potentially categories and a pretty design. This project is pretty open for the person who is interested

I was thinking this could be pretty easy implemented by basing all the data on the Github Issue API. Using the Github API as Backend means there is no need for a server side component or a administration. Which makes it much smaller of a task. This can be done as simple as possible initially. A listing of all the issues and when navigating to the issue you see relevant comments and updates on the issue.

The goal should be that people could open the website and see if there are any new project suggestions and open that issue to claim it if they so please.

This is a great opportunity to experiment with GraphQL from the Github API, a no-server dynamic JavaScript application.

Feel free to ask if there are any questions.

Relevant Technology

JavaScript, GraphQL, Github, CSS, HTML, Web.

Who is this for

This project is for anyone looking to get involved with this project. It's not very technically difficult, but depending on the direction it might require some design knowledge or help from someone who has that.

Sounds like something I would love to spend time on :) I might be able to start working on it tomorrow

Forgot to mention I also have a designer on board who might be up for it!

Brilliant! That sounds like a perfect fit. I can add you to the repo as a collaborator so you have access to it also. I think this is a pretty cool project to test out the new GraphQL API for Github, and will be an important extension for this initiative.

Is that still in early access? If so the api might change later.. :/

Maybe. I haven't gotten around to digging into it yet. So maybe one would have to stick with the stable API (or do an adapter approach if one really want to explore GraphQL).

Regardless; is there any requirements as far as languages go? Rails would definitely be the easiest for me!

Feel free to do what ever by me. All yours. I've got no experience with ruby or rails myself, though. I wouldn't think it's too much server side code required here, though. Depending on what you want to do here, but you could let Github be most of the backend (much like a "BaaS") and just have the site as a presenter layer on top of Github Issues. For instance.

Yeah, you don't really need much back-end, but I do prefer to keep data management and the rest separated. I can probably look into GraphQL, but I've never used it before :o

2016-10-18-091611_1920x1080_scrot

Here's the first draft.

Things todo as of now;

  • tags
  • make a modal appear with all the text (and perhaps even comments) when the user clicks the body of the card
  • categories, back-end is mostly done

And then we need to look into hosting. Might also do some testing, but don't really see the need for it here.

@FredrikAugust Maybe look into GitHub Pages to host it directly on GitHub? Backed by git by default, makes updates incredibly easy via pull requests and is free.

I think doing something like @timosta is the simplest way to the goal, and why I was talking so much about not doing a backend. Just by doing Github as a backend we don't have to think about things like hosting, deployment routines, and what not. It is very easy to jump straight to the conclusion of needing all features and a backend doing all kinds of things, but I think it's better to do these things incrementally, and learn a long the way. Github as a backend + gh-pages I think would suffice for a long time as the project matures. This is obviously not the definitive solution or the only way to solve it, but it's something to consider.

The screenshots look good, I think. Simple and sufficient design with focus on the content and with green as a main colour which seems as the typical Open Source colour πŸ˜„

Hello everyone,
Good idea to only use Github pages at the beginning, even with a custom back-end you could keep it on gh-pages if you wanted to.

gh-pages support rails? wow

@FredrikAugust No, I don't think so. I'm thinking @teunw is referring to hosting the backend and the client side at separate locations if one at one point need to use a custom backend.

API-based back-end?

I would guess so.

Hmm. That's a good idea, but if load times aren't a huge concern we could use a heroku free dyno

Should suffice for our needs, but it isn't very elegant

One problem with Heroku Free Dyno is that it's down for some amount of time during the day due to some changes they did last year or so. So even if there's no massive load, it's not too suitable for production hosting.

I know, you can get 16 hours of uptime per day, and if you don't use it for 30min it shuts down, and takes about 30sec to boot back up

Well, guess I got to whip out JS again then :) I'll see what I can do today

For @mikaelbr 's initial project description. Github pages is more than enough, we could utilise the gh-pages or /docs for this project. If the governance process grows more and complicated, we could build a dedicated backend for that later. I'll see if I can build this tomorow. I'm already taking up and doing one project from this repo which needs much work.. lol

I'm working on it now Nirmal. Using only js/html/css, so should work on
ghpages

On Wed, Oct 19, 2016, 10:37 Nirmal Almara notifications@github.com wrote:

For @mikaelbr https://github.com/mikaelbr 's initial project
description. Github pages is more than enough, we could utilise the
gh-pages or /docs for this project. If the governance process grows more
and complicated, we could build a dedicated backend for that later. I'll
see if I can build this tomorow. I'm already taking up and doing one
project from this repo which needs much work.. lol

β€”
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#1 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHVdG7A7tLrUT8lRnaDF8ucxE890kfRkks5q1dbPgaJpZM4KVUEO
.

Using /docs on this repo sounds smart. That way we can have it close to the issues and @FredrikAugust you already have access to committing here.

I was referring to an API based backend @FredrikAugust (should have made it more clear).
That way, you can keep the frontend on Github. No need to move it over later.

@FredrikAugust Just a simple remainder. you said js/html/css but Github pages are based upon Jekyll engine. We have to make the directory structure and apply the jekyll configuration. Let me know if you need any help :)

Ah yeah @teunw, making this into a back-end would take a matter of minutes. I already have most of the back-end in place, not as an API though. @mysticmode Yeah, don't know anything about working with ghpages/jekyll. If you could help out with that it would be great. Think I should be done with v0.1 soon(tm) :)

@FredrikAugust Sure, just an idea :).
Good luck on v0.1

Haha, thanks

On Wed, Oct 19, 2016, 11:01 Teun Willems notifications@github.com wrote:

@FredrikAugust https://github.com/FredrikAugust Sure, just a idea :).
Good luck on v0.1

β€”
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#1 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AHVdG24bznfUz07OU3kaJbaEO49xu5f6ks5q1dxUgaJpZM4KVUEO
.

Alright, basic functionality is done. You can find it in the js branch of my repo (linked further up) @mysticmode

Looks good!

You could have a simple directory structure like this

  _includes/ (for top nav and footer)
  _layouts/
      default.html (default layout for both landing and detail page)
      detail.html (showing the issue in detail with comments if available)
  index.html (which has issues list)
  ...config_files...

You can read the jekyll docs. Let me know if you can setup this, or I can do this tomorow morning IST

It would be great if you could do it, and I'll focus on adding the rest of the functionality! :)

Not saying that we have to, but Jekyll can easily be turned off for GitHub Pages. But in my understanding, even if it is not turned off, you should still be able to host any static application you want as long as you avoid Jekyll's magic file/folder names starting with an underscore?

Alright, got the base implementation down. Doing like @timosta sounds good, we don't really need any fancy features. If someone wants to implement this into GH Pages that would be great, as I have no experience with it.

commented

+1 for jekyll

Hey guys, what's the status of this? Any new progress? Is there a url with the current implementation?

I'm not in favor of jekyll. If we have clean pure js/html/css frontend, we can move the site anywhere in a matter of seconds. I don't see the added value of jekyll, or having a Ruby on Rails backend, if the only thing the website does is uses a github API.

The page is out on http://mib.im/open-source-ideas/. No custom domain yet, and it inherits my domain in a catch-all CNAME. See the implementation here: https://github.com/mikaelbr/open-source-ideas/tree/master/docs

Good you are checking in on the status.

The design looks clean and simple. I think it should be kept that way. v1 can do a full page refresh to show a single issue. Maybe in v2 we can add some frontend js library for simple routing.

Just saw the website now. Looks great! :)
I don't remember seeing this in this repo's readme. I think it should be there. /cc @mikaelbr

Absolutely. I think this works well for now - and isn't slow at all so client side rendering isn't as necessary if you ask me. @FredrikAugust has done a good job there.

Should do a custom domain in time and probably some sort of logo. Also, one thing I'd like to see is more of a full overview on the homepage, where it's easier to see more projects at once. Now, there is a lot of scrolling and hard to see that there are many projects.

I'll add a link now πŸ‘

I'd also say that this is sort-of finished project, at least v1. :)
You could add it to the list of finished projects.

I want to contribute more to this repo's projects. I hope to find some time in the future.

πŸ‘ Great

Also, I think closing this can be productive to clean up some issues. The discussion can still go on.