Git Product home page Git Product logo

awesome-go's Introduction

Hey, I'm Avelino !

What I'm working on ๐Ÿ‘จโ€๐Ÿ’ป

ฮป: moclojer - Simple and efficient HTTP mock server with specification in yaml, edn or OpenAPI
๐Ÿ˜: prestd - PostgreSQL + REST, simplify and accelerate development, โšก instant, realtime, high-performance on any Postgres application, existing or new

Find me elsewhere ๐ŸŒŽ

๐Ÿš€: Site
๐Ÿ˜: mastodon ๐Ÿฆ: Twitter
๐Ÿ’ผ: LinkedIn
๐Ÿ“ธ: Instagram - good dream is dream lived, triathlete ๐ŸŠโ€โ™‚๏ธ ๐Ÿšดโ€โ™‚๏ธ ๐Ÿƒโ€โ™‚๏ธ

Avelino profile views

awesome-go's People

Contributors

appleboy avatar avelino avatar bitfield avatar bobg avatar bschoch-schwarz avatar carlescere avatar cassiobotaro avatar ceriath avatar codingsince1985 avatar deankarn avatar dmitshur avatar dukex avatar felipeweb avatar hoffoo avatar kazhuravlev avatar kirilldanshin avatar lincolnjpg avatar linxgnu avatar matrixik avatar mattn avatar mehrdadrad avatar mholt avatar nikolaydubina avatar panjf2000 avatar patdhlk avatar pbnj avatar phanirithvij avatar pjebs avatar spekary avatar twharmon avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

awesome-go's Issues

Contribution guidelines? And quality checks? Updates?

Lists like this have been made before and have these problems (many of which are highlighted in HN comments) -- some over time, and some immediately:

  • Some packages are often broken (weak deployment discipline)
  • Links break, names change
  • Some packages are largely incomplete or experimental
  • Packages become abandoned (projects lacks interest or following)
  • Ordering is contrived (or manipulated; why not list your own package first?)
  • Descriptions are promotional more than descriptive, or overly long

The one on the Go wiki is huge and still updated) is the best I've seen to date, but you need contributor permissions so using GitHub is definitely an advantage. Here's what I hope to see for this repository:

  • Quality checks. Packages are only added if they meet a certain, well-defined standard. It shouldn't be sky-high, but packages that are more likely to cause problems than solve them shouldn't be listed.
  • Contribution guidelines. This way people won't be as likely to be upset if you ask them to amend a pull request or if you change their listing. It also should prevent advertising and promotional ordering (putting your own or favorite package at the top) -- maybe sort the items alphabetically or by maturity (newer packages at bottom).
  • Regular updates. Someone (probably the repo owner or designated contributors) should review the list occasionally for dead projects. It might also be encouraged at the top of the README for issues to be opened to report items that don't meet the quality standards.

I think with these lightweight, and useful, regulations in place, it can make for a truly useful list rather than a honeypot of links.

Bring existing list into conformity with contribution guidelines

I drafted up a contribution guidelines page just to get something started. (Feedback is welcome.)

If it looks mostly good, we should start updating the list as it stands to help it to conform with the quality standards. This mainly means:

  • Sort items alphabetically (should categories be alphabetical, too?)
  • Remove items that lack documentation or are not maintained
  • Decide on whether to keep Go software (see this issue comment)
  • Move software into its own category or file
  • Mark packages as experimental or transitory as necessary
  • Links should go to repository pages, not marketing/frontage pages (unless the pages contain more useful documentation and links back to the actual repository)

I'll have some time to work on this but the list got huge really fast so help would be nice.

Consider rakyll/go-hardware?

There is a new directory for hardware related libraries, tools, and tutorials for Go.

https://github.com/rakyll/go-hardware

See https://twitter.com/rakyll/status/600007636579266560 for the announcement. /cc @rakyll

Awesome-go list already has a hardware section, but it's pretty brief. It contains two libraries, both of which are already a part of go-hardware list.

Honestly, it seems the easiest and best option would be to simply replace our hardware section with a reference to go-hardware. Go-hardware seems a lot more thorough, complete, and targeting Go hardware side specifically. Thoughts?

Duplicates

The list is full of duplicates. The idea of a list of "best-in-class" package is great. It makes it easier to know where to start when looking for a package with the desired functionality. But there are for many packages, 2, 3, 4 or more that do the same thing.

CUI vs. CLI

I noticed that the section regarding tools for building Command Line Interfaces is titled "CUI", which was brought to my attention by a PR to awsome-cpp. However, a quick Google search for "CUI" or "CUI Applications" yields very few results for this being a thing. Is it common to refer to CLI as CUI in the Go community? Or are people trying to make it a thing?

If you're open to a pull request, I can change the heading from "CUI" to "CLI", which is, as far as my common knowledge and Google search abilities show, a much more well-understood name for this.

bleve missing ?

Hello,
I just found this repo and didn't see the only lib i know in Go. http://www.blevesearch.com/.
I though it may deserve a place here.

Sorry for not making a pull request. I was just surfing around.

404 on v8-go

Hi,

sadly the v8-go - V8 JavaScript engine bindings for Go repository was somehow removed. mhrdev/v8.go looks like a fork of it (has commits by @idada from oct 2014) but without a copy of the original repo I can't tell where they diverged.

I'm not sure how to proceed on something like this, just a FYI.

go-nude

I am not sure if this should be included: https://github.com/koyachi/go-nude

Its a really cool but niche project. Personally I think it should, if only for reference of how to do this kind of thing, even if not a lot of people would need it.

Remove ServeMux

I have decided to retire my project ServeMux because I couldn't get it to the point where I wanted it API and speed wise. There is no reason to have a lot of frameworks out there that doesn't have a purpose. Please remove it.

Thanks.

Contribution guidelines don't match README.

As mentioned in #465 (comment), the README says:

If you see a package or project here that is no longer maintained or is not a good fit, please submit a pull request to improve this file. Thank you!

But the contribution guidelines haven't been updated to match, they still say one should open an issue (implying they shouldn't make a PR) to remove packages:

To remove from the list: Open an issue

Non-go utilities for go development

I wrote/maintain Starscope, a project for code search that happens to support Go but is written entirely in Ruby. It's a critical piece of my personal Go development workflow, but since it's not actually written in Go I'm not sure it belongs on this list?

Could you clarify please if utilities that are useful to gophers but are not themselves written in go are eligible to be submitted?

https://github.com/eapache/starscope

"Web frameworks" category

To the question of categories, there is something strange with Web frameworks. It is described as "Full stack web frameworks". But most elements there are neither frameworks nor fullstack. There should be at least 3 subcategories:

  1. Routers (aka mux): bone, httprouter, mux, pat, etc.
  2. Micro-frameworks: those which provide only middleware + mux.
  3. Full-stack frameworks: all-in-one solutions.
    It is possible to go even further, and rename "Web frameworks" into "Web-development". Then it would be possible to create a "Client-side" category for projects such as gopherjs, minify, etc. and "Tools" for things like #422 (as for at least 3 items rule: I'm sure more than 3 tools in Go for web-development exist).

Any git libraries?

There are a lot of libraries listed, so it's surprising there isn't a single one for git repository access.

I know of github.com/libgit2/git2go, which is a wrapper around libgit2 (C library). Are there any attempts at a native Go package? Or at least an auto-generated version that embeds libgit2 via cgo so that it's go-gettable?

Change name for the package geo_pattern

Hi folks,

Although the package is already there in the list in images section.
But today I made some changes to the project that also involves renaming it to geoPattern. Actually I was trying my best to follow the new golang blog, Package Names

GitHub usually redirects renamed projects very well but I just felt like asking to you all.

So, is this fine to change name for it or not?

AwesomeOpenSource

We are creating a github org for all awesome open source repos. I am working with a few individuals who are also managing their own awesome repos, and I think to gain more traction we need to work together. What are your thoughts about collectively moving your awesome repos to https://github.com/AwesomeOpenSource

The idea is that visibility for these repos would be increased due to more traffic to the org. What are your thoughts? Let me know if there is anything you'd like to discuss!

Higher level separation.

Currently, there are two high level categories:

  • Awesome Go
    • Both importable Go libraries, but also DevOps tools, Utilities, etc.
  • Resources

I would change that to be three:

  • Awesome Go
    • (Only importable Go libraries that people would use in their code)
  • Go Tools
    • (Go binaries, plugins for editors, websites like gocover.io, etc., but no importable code)
  • Resources

Some currently missing must have things:

  • Awesome Go
    • API Bindings
      • github.com/google/go-github - GitHub API bindings
    • OpenGL
      • github.com/go-gl/gl - OpenGL bindings
      • github.com/go-gl/glfw3 - glfw3 bindings
      • github.com/errcw/glow - OpenGL bindings (via generation)
      • github.com/go-gl/mathgl - Vectors, Matrices, other math
  • Go Tools
    • Development Tools
      • goimports - drop-in replacement for gofmt, updates your Go import lines, adding missing ones and removing unreferenced ones.
      • doc - CLI tool by Rob Pike, has a convenient interface, e.g., doc fmt.Println to see docs for Println
    • Editor Plugins

Thank you!

test duplicate link

Today the tests tests whether this in alphabetically, it would be important to check if there is already a link (ex: github.com/...)

Consider gitter.im over Slack?

Just a thought - but since Slack has kind of an awkward invite-only system, it has a pretty high barrier to entry. I found gitter pretty easy to join, since I think it just uses a GitHub login which most everyone here has anyway - no invites needed.

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.