play

module
v0.0.0-...-abfb1be Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 15, 2023 License: Unlicense

README

play

Short experimental programs for playing with and learning new things. No importable Go packages here.

License

Directories

Path Synopsis
Displays Go package source code with dot imports inlined.
Displays Go package source code with dot imports inlined.
101
format
Package format implements standard formatting of Go source.
Package format implements standard formatting of Go source.
printer
Package printer implements printing of AST nodes.
Package printer implements printing of AST nodes.
Play with generating entire body from html/template in frontend.
Play with generating entire body from html/template in frontend.
Play with live html/template editor.
Play with live html/template editor.
Play with posting HID events on OS X.
Play with posting HID events on OS X.
109
Try switching pages in frontend by rendering different html/template, without reloading page.
Try switching pages in frontend by rendering different html/template, without reloading page.
Creates a subprocess and forwards stdin/stdout/stderr over, until the subprocess exits.
Creates a subprocess and forwards stdin/stdout/stderr over, until the subprocess exits.
Try net/rpc (using encoding/gob) between backend and frontend (via GopherJS) through a websocket connection.
Try net/rpc (using encoding/gob) between backend and frontend (via GopherJS) through a websocket connection.
Render a simple 2D polygon using "golang.org/x/mobile/gl" package (with CL 8793 merged).
Render a simple 2D polygon using "golang.org/x/mobile/gl" package (with CL 8793 merged).
Render a basic triangle using "golang.org/x/mobile/gl" package (with CL 8793 merged).
Render a basic triangle using "golang.org/x/mobile/gl" package (with CL 8793 merged).
Render plain terrain using "golang.org/x/mobile/gl" package (with CL 8793 merged).
Render plain terrain using "golang.org/x/mobile/gl" package (with CL 8793 merged).
Render terrain with textures using "golang.org/x/mobile/gl" package (with CL 8793 merged).
Render terrain with textures using "golang.org/x/mobile/gl" package (with CL 8793 merged).
Play with "testing/quick".
Play with "testing/quick".
Play with basic walking a vfs.
Play with basic walking a vfs.
Play with resizing an image via NearestNeighbor.
Play with resizing an image via NearestNeighbor.
Play with compiling existing Go packages using GopherJS and serving archive objects over http with CORS.
Play with compiling existing Go packages using GopherJS and serving archive objects over http with CORS.
Play with WebGL using GopherJS.
Play with WebGL using GopherJS.
Play with "testing/quick" package to find an input that causes html.Parse to return an error.
Play with "testing/quick" package to find an input that causes html.Parse to return an error.
Play with go/doc.ToHTML and html_to_markdown.
Play with go/doc.ToHTML and html_to_markdown.
Play with tests for GopherJS handling of js.Undefined (https://github.com/gopherjs/gopherjs/issues/237).
Play with tests for GopherJS handling of js.Undefined (https://github.com/gopherjs/gopherjs/issues/237).
Play with rwvfs.Union.
Play with rwvfs.Union.
Play with finding minimal time difference via subsequent calls to time.Now().
Play with finding minimal time difference via subsequent calls to time.Now().
Reproduce for https://github.com/russross/blackfriday/issues/178.
Reproduce for https://github.com/russross/blackfriday/issues/178.
Play with finding discontinuities on a func via binary search.
Play with finding discontinuities on a func via binary search.
127
Play with benchmarking a tight loop with many iterations and a func call, compare gc vs GopherJS performance.
Play with benchmarking a tight loop with many iterations and a func call, compare gc vs GopherJS performance.
if
Play with benchmarking a tight loop with many iterations and a func call, compare gc vs GopherJS performance.
Play with benchmarking a tight loop with many iterations and a func call, compare gc vs GopherJS performance.
Play with basic walking a vfs.
Play with basic walking a vfs.
Play with doing net/http.Get in browser.
Play with doing net/http.Get in browser.
Render a basic triangle using "golang.org/x/mobile/gl" package.
Render a basic triangle using "golang.org/x/mobile/gl" package.
Reproduce case for "struct size calculation error" of https://github.com/go-gl/glfw/issues/136.
Reproduce case for "struct size calculation error" of https://github.com/go-gl/glfw/issues/136.
Display a code diff with single-line JSON diffs expanded/indented for easier readability.
Display a code diff with single-line JSON diffs expanded/indented for easier readability.
Test for pipe's new Kill() API.
Test for pipe's new Kill() API.
Tools to help with creating font texture maps.
Tools to help with creating font texture maps.
Learn about diffmatchpatch handling of invalid utf8 input.
Learn about diffmatchpatch handling of invalid utf8 input.
Learn about a bug in an problematic implementation of isCommitOnlyChange.
Learn about a bug in an problematic implementation of isCommitOnlyChange.
Benchmark Go and GopherJS when dealing with lots of func calls and mgl32.Vec2 values.
Benchmark Go and GopherJS when dealing with lots of func calls and mgl32.Vec2 values.
gopherjs test issue where main() is executed even during tests, when it shouldn't be.
gopherjs test issue where main() is executed even during tests, when it shouldn't be.
Learn about https://github.com/gopherjs/gopherjs/issues/275.
Learn about https://github.com/gopherjs/gopherjs/issues/275.
Play with mathgl matrix String methods.
Play with mathgl matrix String methods.
148
Try switching tabs in frontend, without reloading tabs.
Try switching tabs in frontend, without reloading tabs.
pages
Package pages contains code to render pages, used from backend and frontend.
Package pages contains code to render pages, used from backend and frontend.
Work with https://github.com/gopherjs/gopherjs/issues/279.
Work with https://github.com/gopherjs/gopherjs/issues/279.
Learn about https://github.com/gopherjs/gopherjs/issues/287.
Learn about https://github.com/gopherjs/gopherjs/issues/287.
151
Learn about https://github.com/gopherjs/gopherjs/issues/290.
Learn about https://github.com/gopherjs/gopherjs/issues/290.
a
b
c
c/htmlg
Package htmlg contains helper funcs for generating HTML nodes and rendering them.
Package htmlg contains helper funcs for generating HTML nodes and rendering them.
Learn about JSON unmarshaling into time.Time and *time.Time, how nulls are handled.
Learn about JSON unmarshaling into time.Time and *time.Time, how nulls are handled.
Play with implementing goon dumper using go/ast and go/printer.
Play with implementing goon dumper using go/ast and go/printer.
Play with experimental use of initialization order to do dependency resolution.
Play with experimental use of initialization order to do dependency resolution.
155
Learn about Server-Sent Events.
Learn about Server-Sent Events.
Check when Readdir happens.
Check when Readdir happens.
Play with HTML5 paste event, uploading image, etc.
Play with HTML5 paste event, uploading image, etc.
eX0 client test.
eX0 client test.
160
a
WIP: Render a colored canvas using "golang.org/x/mobile/gl" package (with CL 8793 merged) and goxjs/glfw.
WIP: Render a colored canvas using "golang.org/x/mobile/gl" package (with CL 8793 merged) and goxjs/glfw.
b
Learn about using x/mobile/app API directly.
Learn about using x/mobile/app API directly.
162
a
Play with sending an ICMP ping packet.
Play with sending an ICMP ping packet.
Play with a debug implementation of issues.CopierFrom interface.
Play with a debug implementation of issues.CopierFrom interface.
Learn about getting httputil.ReverseProxy to play nice with SSE.
Learn about getting httputil.ReverseProxy to play nice with SSE.
Learn if it's possible to detect when a web window is focused.
Learn if it's possible to detect when a web window is focused.
Play with deleting/hiding error handling from Go AST.
Play with deleting/hiding error handling from Go AST.
Play with a react-like Render method that generates HTML for a page.
Play with a react-like Render method that generates HTML for a page.
AST-explorer is for inspecting Go AST nodes, like Elements tab of Chrome Deverloper Tools is for DOM elements.
AST-explorer is for inspecting Go AST nodes, like Elements tab of Chrome Deverloper Tools is for DOM elements.
Example package for https://github.com/tools/godep/issues/391.
Example package for https://github.com/tools/godep/issues/391.
173
wordpress
Package wordpress implements issues.Service using a WordPress XML export.
Package wordpress implements issues.Service using a WordPress XML export.
Learn about printing all addresses that are being served.
Learn about printing all addresses that are being served.
175
Play around with CSS rendering library ideas.
Play around with CSS rendering library ideas.
idea3/cd
Package cd defines CSS declarations of CSS properties.
Package cd defines CSS declarations of CSS properties.
idea3/cv
Package cv defines CSS values.
Package cv defines CSS values.
svg
Play with an experimental web server that generates HTML pages in a type safe way on the backend only.
Play with an experimental web server that generates HTML pages in a type safe way on the backend only.
Play with an experimental web server that generates HTML pages in a type safe way on the frontend only.
Play with an experimental web server that generates HTML pages in a type safe way on the frontend only.
Play with user logins and sessions.
Play with user logins and sessions.
Learn about blocking process execution by not reading its stdout.
Learn about blocking process execution by not reading its stdout.
Play with bcrypt.
Play with bcrypt.
Play with go-travis API client library.
Play with go-travis API client library.
Learn about OAuth.
Learn about OAuth.
Play with crypto/rand in frontend.
Play with crypto/rand in frontend.
186
issuesutil
Package issuesutil has a utility to dump all users in a given issues.Service.
Package issuesutil has a utility to dump all users in a given issues.Service.
Play with a VFS abstraction that implicitly creates/removes directories.
Play with a VFS abstraction that implicitly creates/removes directories.
Benchmark for predictive *RateLimitError for go-github.
Benchmark for predictive *RateLimitError for go-github.
Play with blackfriday Markdown renderers.
Play with blackfriday Markdown renderers.
Benchmark two ways of getting pointer to int.
Benchmark two ways of getting pointer to int.
192
Play with and learn about heap profiles, memory usage stats.
Play with and learn about heap profiles, memory usage stats.
Play with Twitter API.
Play with Twitter API.
195
goon
Package goon is an unfinished rewrite of go-goon from scratch.
Package goon is an unfinished rewrite of go-goon from scratch.
Learn about ways to make Chrome display spinner for the current page (in a controlled manner).
Learn about ways to make Chrome display spinner for the current page (in a controlled manner).
Learn about Quip API.
Learn about Quip API.
command-spy is a wrapper around a command that intercepts the stdin/stdout/stderr streams and copies them to a temporary directory.
command-spy is a wrapper around a command that intercepts the stdin/stdout/stderr streams and copies them to a temporary directory.
199
Prints a random song from Songs.txt.
Prints a random song from Songs.txt.
200
cmd/importpathof
importpathof prints the import path of a compiled Go binary.
importpathof prints the import path of a compiled Go binary.
Try gopkg.in/gcfg.v1.
Try gopkg.in/gcfg.v1.
Try parsing git version with fmt.Sscanf.
Try parsing git version with fmt.Sscanf.
Play with benchmarking a tight loop with many iterations and a func call.
Play with benchmarking a tight loop with many iterations and a func call.
Play with serving golang.org/x/tools/present slides over HTTP.
Play with serving golang.org/x/tools/present slides over HTTP.
Learn about how req.URL.Path and req.RequestURI compare after http.StripPrefix.
Learn about how req.URL.Path and req.RequestURI compare after http.StripPrefix.
206
207
go-build-missing-not-found-error
Test program for https://golang.org/cl/33158.
Test program for https://golang.org/cl/33158.
Work on an activity visualization page.
Work on an activity visualization page.
Test Markdown parser with the debug renderer.
Test Markdown parser with the debug renderer.
212
Reproduce case for GopherJS using stale archives when build fails, see https://github.com/gopherjs/gopherjs/issues/559.
Reproduce case for GopherJS using stale archives when build fails, see https://github.com/gopherjs/gopherjs/issues/559.
213
frontend/assets
Package assets contains assets.
Package assets contains assets.
Look at time it takes to decode some simple JSON.
Look at time it takes to decode some simple JSON.
Benchmark a best-case scenario RenderBodyInnerHTML performance.
Benchmark a best-case scenario RenderBodyInnerHTML performance.
Decode a 2x1 png image and dump its pixel colors.
Decode a 2x1 png image and dump its pixel colors.
217
Experiment with a vecty-like API for backend HTML rendering.
Experiment with a vecty-like API for backend HTML rendering.
vec
Test program for https://github.com/gopherjs/gopherjs/issues/603.
Test program for https://github.com/gopherjs/gopherjs/issues/603.
Package version contains a constant with different values depending on Go version.
Package version contains a constant with different values depending on Go version.
Benchmark program for https://github.com/gopherjs/gopherjs/pull/628.
Benchmark program for https://github.com/gopherjs/gopherjs/pull/628.
Play with various ways of encoding events.
Play with various ways of encoding events.
Play with a store for events.
Play with a store for events.
Play with accessing a notifiations API via authenticated client.
Play with accessing a notifiations API via authenticated client.
Play with events/fs service (fs store implementation).
Play with events/fs service (fs store implementation).
Play with x/build/maintner/godata.
Play with x/build/maintner/godata.
Play with rendering a component, think about how it can be more accessible.
Play with rendering a component, think about how it can be more accessible.
227
Walk the given filesystem path, count the number and size of files.
Walk the given filesystem path, count the number and size of files.
229
vcs
230
lib
p
231
Play with git server over SSH protocol.
Play with git server over SSH protocol.
sshgit
Package sshgit provides functionality for a git server over SSH.
Package sshgit provides functionality for a git server over SSH.
Play with git server over HTTPS protocol.
Play with git server over HTTPS protocol.
Play with rendering eX0 player with CanvasRenderingContext2D API.
Play with rendering eX0 player with CanvasRenderingContext2D API.
Play with rendering to a 2D canvas at 60 fps.
Play with rendering to a 2D canvas at 60 fps.
Play with rendering a TrueType font.
Play with rendering a TrueType font.
Play with rendering a TrueType font to a CanvasRenderingContext2D (in browser).
Play with rendering a TrueType font to a CanvasRenderingContext2D (in browser).
Walk git repositories and list all Go packages inside.
Walk git repositories and list all Go packages inside.
238
Play with playing back mp3, ogg vorbis, wav audio files.
Play with playing back mp3, ogg vorbis, wav audio files.
Sample values of Go types.
Sample values of Go types.
Play with streaming mutations from maintner.NewNetworkMutationSource.
Play with streaming mutations from maintner.NewNetworkMutationSource.
Play with Metal API to get system default device name.
Play with Metal API to get system default device name.
246
Play with creating a (minimal) library for Metal API.
Play with creating a (minimal) library for Metal API.
mtl
Package mtl is a tiny subset of the Metal API.
Package mtl is a tiny subset of the Metal API.
A one-off tool to transfer all public repositories from one GitHub account to another.
A one-off tool to transfer all public repositories from one GitHub account to another.
248
Play around with RelMeAuth.
Play around with RelMeAuth.
250
Play with rendering a header component on the frontend, with support for both light and dark color schemes.
Play with rendering a header component on the frontend, with support for both light and dark color schemes.
component
Package component contains individual components that can render themselves as HTML.
Package component contains individual components that can render themselves as HTML.
Learn about doing query batching with a Go GraphQL client by using reflection.
Learn about doing query batching with a Go GraphQL client by using reflection.
Play around with listing all issues on dmitri.shuralyov.com.
Play around with listing all issues on dmitri.shuralyov.com.
Play around with testing of shortening text at rune boundaries.
Play around with testing of shortening text at rune boundaries.
254
Play around with annotated go.mod files and visualizing module graphs, using a Go module proxy.
Play around with annotated go.mod files and visualizing module graphs, using a Go module proxy.
255
Play with a lightweight text-based UI that is rendered on frontend with WebAssembly.
Play with a lightweight text-based UI that is rendered on frontend with WebAssembly.
256
Play around with rendering godoc on frontend with WebAssembly using a Go module proxy.
Play around with rendering godoc on frontend with WebAssembly using a Go module proxy.
moduleproxy
Package moduleproxy provides a Go module proxy client and server.
Package moduleproxy provides a Go module proxy client and server.
moduleproxy/std
Package std provides a Go module proxy server augmentation that adds the module std, containing the Go standard library.
Package std provides a Go module proxy server augmentation that adds the module std, containing the Go standard library.
Play with a simple local module host.
Play with a simple local module host.
258
Play around with showing Go package source code on frontend with WebAssembly using a Go module proxy.
Play around with showing Go package source code on frontend with WebAssembly using a Go module proxy.
frontend/jsutil
Package jsutil provides utility functions for interacting with native JavaScript APIs.
Package jsutil provides utility functions for interacting with native JavaScript APIs.
frontend/tableofcontents
Package tableofcontents provides a table of contents component.
Package tableofcontents provides a table of contents component.
259
Benchmark syscall/js performance between WebAssembly, GopherJS, and native JavaScript.
Benchmark syscall/js performance between WebAssembly, GopherJS, and native JavaScript.
Gets issues that were closed during the current week for a GitHub organization, uses auth and memory cache.
Gets issues that were closed during the current week for a GitHub organization, uses auth and memory cache.
260
Play with listing all Go release versions via maintner.
Play with listing all Go release versions via maintner.
srcdgit
Play with listing all Go release versions via src-d/go-git.v4.
Play with listing all Go release versions via src-d/go-git.v4.
261
Play with walking Go repositories via sourcegraph/go-vcs.
Play with walking Go repositories via sourcegraph/go-vcs.
srcdgit
Play with walking Go repositories via src-d/go-git.v4.
Play with walking Go repositories via src-d/go-git.v4.
Play with creating a simple pubsubhelper client.
Play with creating a simple pubsubhelper client.
263
Play with fetching repo root for import path using stripped down copies of latest cmd/go/internal packages (instead of via golang.org/x/tools/go/vcs package).
Play with fetching repo root for import path using stripped down copies of latest cmd/go/internal packages (instead of via golang.org/x/tools/go/vcs package).
auth
Package auth provides access to user-provided authentication credentials.
Package auth provides access to user-provided authentication credentials.
cfg
Package cfg holds configuration shared by multiple parts of the go command.
Package cfg holds configuration shared by multiple parts of the go command.
get
web
Package web defines minimal helper routines for accessing HTTP/HTTPS resources without requiring external dependenicies on the net package.
Package web defines minimal helper routines for accessing HTTP/HTTPS resources without requiring external dependenicies on the net package.
264
Play with creating a new HTML component while rendering the page with WebAssembly (which has convenient reload).
Play with creating a new HTML component while rendering the page with WebAssembly (which has convenient reload).
Play with gopkg.in/src-d/go-git.v4 API.
Play with gopkg.in/src-d/go-git.v4 API.
Play with serving an augmented Go module proxy server that adds the module std, containing the Go standard library.
Play with serving an augmented Go module proxy server that adds the module std, containing the Go standard library.
Play with using go/microformats to fetch a GitHub login from a website URL.
Play with using go/microformats to fetch a GitHub login from a website URL.
Play with a human/machine friendly API for generating Markdown.
Play with a human/machine friendly API for generating Markdown.
Play with printing the value of maximumPotentialExtendedDynamicRangeColorComponentValue.
Play with printing the value of maximumPotentialExtendedDynamicRangeColorComponentValue.
Play with a live Go module index viewer.
Play with a live Go module index viewer.
Play with counting occurrences of module requirements by walking latest module versions from module index.
Play with counting occurrences of module requirements by walking latest module versions from module index.
Dummy package for testing import sorting of "github.com/shurcooL/go/exp/11".InlineDotImports.
Dummy package for testing import sorting of "github.com/shurcooL/go/exp/11".InlineDotImports.
Simple web server, for testing live Go editing.
Simple web server, for testing live Go editing.
Play with net/rpc, compare performance of local calculations vs rpc calculations on localhost.
Play with net/rpc, compare performance of local calculations vs rpc calculations on localhost.
Walk the given filesystem path, search for filenames containing "conflicted".
Walk the given filesystem path, search for filenames containing "conflicted".
Cover is a program for analyzing the coverage profiles generated by 'go test -coverprofile=cover.out'.
Cover is a program for analyzing the coverage profiles generated by 'go test -coverprofile=cover.out'.
Test GitHub Flavored Markdown rendered locally using go gettable native Go code.
Test GitHub Flavored Markdown rendered locally using go gettable native Go code.
Try net/rpc/jsonrpc between backend and frontend (via GopherJS) through a websocket connection.
Try net/rpc/jsonrpc between backend and frontend (via GopherJS) through a websocket connection.
Move all my Go library packages from gist.github.com/{{.GistId}}.git to github.com/shurcooL/go/gists/gist{{.GistId}}.
Move all my Go library packages from gist.github.com/{{.GistId}}.git to github.com/shurcooL/go/gists/gist{{.GistId}}.
5
6
7
Play with a simple typed representation of words, sentences, etc.
Play with a simple typed representation of words, sentences, etc.
77
lib
8
Expose private values, by rogpeppe.
Expose private values, by rogpeppe.
Extract a .zip file.
Extract a .zip file.
9
92
Package 93 is a test of "package documentation" functionality.
Package 93 is a test of "package documentation" functionality.
Render a 3D textured terrain with flying camera controls.
Render a 3D textured terrain with flying camera controls.
Play with go-collada to load and render a simple 3D model (browser and desktop).
Play with go-collada to load and render a simple 3D model (browser and desktop).
An example of creating a custom blackfriday.Renderer that reuses blackfriday.Html while overriding Link rendering.
An example of creating a custom blackfriday.Renderer that reuses blackfriday.Html while overriding Link rendering.
Runs another Go program (specified via first argument) and recompiles/restarts it whenever its source code file is modified.
Runs another Go program (specified via first argument) and recompiles/restarts it whenever its source code file is modified.
Command gist4670289 returns a list of Go keywords (first Go code I ever wrote).
Command gist4670289 returns a list of Go keywords (first Go code I ever wrote).
Looking at dependencies in typical sequential code.
Looking at dependencies in typical sequential code.
Count the total and unique number of words in a text, prints their frequencies.
Count the total and unique number of words in a text, prints their frequencies.
Encode a gob and try to decode it without having original struct.
Encode a gob and try to decode it without having original struct.
Splits phraseswithoutspaces (e.g.
Splits phraseswithoutspaces (e.g.
WebSocket server test.
WebSocket server test.
Playing with displaying a timestamp in various ways.
Playing with displaying a timestamp in various ways.
More playing with "encoding/gob".
More playing with "encoding/gob".
Try a func that ignores output of another func call.
Try a func that ignores output of another func call.
Play with OpenGL 4.1.
Play with OpenGL 4.1.
Tries to generate Go programs that compile.
Tries to generate Go programs that compile.
Experiment with various things.
Experiment with various things.
Experiment in running gist commands and streaming output via HTTP.
Experiment in running gist commands and streaming output via HTTP.
Play with go/types package, list all types in Conception-go that implement Widgeter interface.
Play with go/types package, list all types in Conception-go that implement Widgeter interface.
old_snippets is a collection of short single-file .go commands written long ago, for learning purposes.
old_snippets is a collection of short single-file .go commands written long ago, for learning purposes.
HTML Video Stream server.
HTML Video Stream server.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL