Path | Synopsis |
---|---|
app/hello | The hello application serves as an example on how to make stand-alone server applications, interacting with a Perkeep server. |
app/publisher | The publisher application serves and renders items published by Perkeep. |
app/publisher/js | This package contains source code for gopherjs, to generate javascript code that is included in the publisher web UI. |
app/scanningcabinet | The scanning cabinet program is a server application to store scanned documents in Perkeep, and to manage them. |
app/scanningcabinet/scancab | The scancab tool scans document and uploads them to the scanning cabinet Perkeep application. |
app/scanningcabinet/ui | TODO(steve.armstrong): Until app/scanningcabinet/handler.go handleUiFile() properly manages Content-Type, be sure to update it whenever adding a new file type to the pattern below. |
clients/web/embed/closure | The updatelibrary command allows to selectively download from the closure library git repository (at a chosen revision) the resources needed by the Perkeep ui. |
clients/web/embed/fontawesome | Package fontawesome provides access to the Font Awesome font library and embeds them into the Go binary when compiled with the genfileembed tool. |
clients/web/embed/glitch | Package glich embeds the little piggy animation resources. |
clients/web/embed/keepy | Package keepy embeds the keepy parakeet animation resources. |
clients/web/embed/leaflet | Package leaflet provides access to the Leaflet JavaScript and CSS resources, as well as the Leaflet.awesome-markers, and embeds them into the Go binary when compiled with the genfileembed tool. |
clients/web/embed/less | Package less provides the LESS CSS framework/rewriter. |
clients/web/embed/opensans | Package opensans provides access to the Font Awesome font library and embeds them into the Go binary when compiled with the genfileembed tool. |
clients/web/embed/react | Package react provides access to the React JavaScript libraries and embeds them into the Go binary when compiled with the genfileembed tool. |
cmd/pk | The pk binary is a collection of commands to help with the use of a camlistore server. |
cmd/pk-deploy | The pk-deploy program deploys Perkeep on cloud computing platforms such as Google Compute Engine or Amazon EC2. |
cmd/pk-devimport | The pk-devimport command runs an importer, using the importer code linked into the binary, against a Perkeep server. |
cmd/pk-get | The pk-get tool fetches blobs, files, and directories. |
cmd/pk-mount | The pk-mount tool mounts a root directory blob onto the given mountpoint. |
cmd/pk-put | The pk-put tool mainly pushes blobs, files, and directories. |
dev | update_closure_compiler downloads a new version of the closure compiler if the one in tmp/closure-compiler doesn't exist or is older than the requested version. |
dev/devcam | The devcam tool is a collection of wrappers around the camlistore programs (camistored, pk-put, pk...) which take care of setup and configuration, so they can be used by developers to ease hacking on camlistore. |
dev/envvardoc | Program envvardoc will verify all referenced environment variables in go source are properly documented. |
internal/azure/storage | Package storage implements a generic Azure storage client, not specific to Perkeep. |
internal/chanworker | |
internal/closure | Package closure provides tools to help with the use of the closure library. |
internal/closure/genclosuredeps | The genclosuredeps command, similarly to the closure depswriter.py tool, outputs to os.Stdout for each .js file, which namespaces it provides, and the namespaces it requires, hence helping the closure library to resolve dependencies between those files. |
internal/closure/jstest | Package jstest uses the Go testing package to test JavaScript code using Node and Mocha. |
internal/geocode | Package geocode handles mapping user-entered locations into lat/long polygons. |
internal/gpgagent | Package gpgagent interacts with the local GPG Agent. |
internal/hashutil | Package hashutil contains misc hashing functions lacking homes elsewhere. |
internal/httputil | Package httputil contains a bunch of HTTP utility code, some generic, and some Perkeep-specific. |
internal/images | |
internal/images/fastjpeg | Package fastjpeg uses djpeg(1), from the Independent JPEG Group's (www.ijg.org) jpeg package, to quickly down-sample images on load. |
internal/images/resize | Package resize resizes images. |
internal/leak | |
internal/lru | Package lru implements an LRU cache. |
internal/magic | Package magic implements MIME type sniffing of data based on the well-known "magic" number prefixes in the file. |
internal/media | Package media provides means for querying information about audio and video data. |
internal/netutil | Package netutil identifies the system userid responsible for localhost TCP connections. |
internal/osutil | Package osutil provides operating system-specific path information, and other utility functions. |
internal/osutil/gce | Package gce configures hooks for running Perkeep for Google Compute Engine. |
internal/pinentry | Package pinentry interfaces with the pinentry(1) command to securely prompt the user for a password using whichever user interface the user is currently using. |
internal/pools | |
internal/testhooks | Package testhooks is a shared package between Perkeep packages and test code, to let tests do gross things that we don't want to expose normally. |
misc/docker | Command dock builds Perkeep's various Docker images. |
misc/docker/synology | Command build_syno builds and packages Perkeep for Synology appliances. |
misc/release | Command make-release builds the tarballs and zip archives for the Perkeep release downloads. |
pkg/app | Package app provides helpers for server applications interacting with Perkeep. |
pkg/auth | Package auth implements Camlistore authentication. |
pkg/blob | Package blob defines types to refer to and retrieve low-level Perkeep blobs. |
pkg/blobserver | Package blobserver defines how raw blobs are stored and accessed. |
pkg/blobserver/archiver | Package archiver zips lots of little blobs into bigger zip files and stores them somewhere. |
pkg/blobserver/azure | Package azure registers the "azure" blobserver storage type, storing blobs in a Microsoft Azure Blob Storage container. |
pkg/blobserver/b2 | |
pkg/blobserver/blobpacked | Package blobpacked registers the "blobpacked" blobserver storage type, storing blobs initially as one physical blob per logical blob, but then rearranging little physical blobs into large contiguous blobs organized by how they'll likely be accessed. |
pkg/blobserver/cond | Package cond registers the "cond" conditional blobserver storage type to select routing of get/put operations on blobs to other storage targets as a function of their content. |
pkg/blobserver/dir | Package dir implements the blobserver Storage interface for a directory, detecting whether the directory is file-per-blob (localdisk) or diskpacked. |
pkg/blobserver/diskpacked | Package diskpacked registers the "diskpacked" blobserver storage type, storing blobs packed together into monolithic data files with an index listing the sizes and offsets of the little blobs within the large files. |
pkg/blobserver/encrypt | Package encrypt registers the "encrypt" blobserver storage type which stores all blobs and metadata with NaCl encryption into other wrapped storage targets (e.g. |
pkg/blobserver/files | Package files implements the blobserver interface by storing each blob in its own file in nested directories. |
pkg/blobserver/gethandler | Package gethandler implements the HTTP handler for fetching blobs. |
pkg/blobserver/google/cloudstorage | Package cloudstorage registers the "googlecloudstorage" blob storage type, storing blobs on Google Cloud Storage (not Google Drive). |
pkg/blobserver/google/drive | Package drive registers the "googledrive" blobserver storage type, storing blobs in a Google Drive folder. |
pkg/blobserver/google/drive/service | Package service translates blobserver.Storage methods into Google Drive API methods. |
pkg/blobserver/handlers | Package handlers implements the HTTP interface to the Perkeep blob server. |
pkg/blobserver/local | Package local implements functionality common to both the "localdisk" and "diskpacked" storage mechanisms. |
pkg/blobserver/localdisk | Package localdisk registers the "filesystem" blobserver storage type, storing blobs in a forest of sharded directories at the specified root. |
pkg/blobserver/memory | Package memory registers the "memory" blobserver storage type, storing blobs in an in-memory map. |
pkg/blobserver/mongo | Package mongo registers the "mongo" blobserver storage type, storing blobs using MongoDB. |
pkg/blobserver/namespace | Package namespace implements the "namespace" blobserver storage type. |
pkg/blobserver/overlay | Package overlay registers the "overlay" blobserver storage type that presents storage that is the result of overlaying a storage ("upper") on top of another storage ("lower"). |
pkg/blobserver/protocol | Package protocol contains types for Perkeep protocol types. |
pkg/blobserver/proxycache | Package proxycache registers the "proxycache" blobserver storage type, which uses a provided blobserver as a cache for a second origin blobserver. |
pkg/blobserver/remote | Package remote registers the "remote" blobserver storage type, storing and fetching blobs from a remote Perkeep server over HTTPS. |
pkg/blobserver/replica | Package replica registers the "replica" blobserver storage type, providing synchronous replication to one more backends. |
pkg/blobserver/s3 | Package s3 registers the "s3" blobserver storage type, storing blobs in an Amazon Web Services' S3 storage bucket. |
pkg/blobserver/sftp | Package sftp registers the "sftp" blobserver storage type, storing blobs one-per-file in a forest of sharded directories to a remote SFTP server over an SSH connection. |
pkg/blobserver/shard | Package shard registers the "shard" blobserver storage type, predictably spraying out blobs out over the provided backends based on their blobref. |
pkg/blobserver/stats | Package stats contains an in-memory StatReceiver that only stores sizes of received blobs but not their contents. |
pkg/blobserver/storagetest | Package storagetest tests blobserver.Storage implementations |
pkg/blobserver/union | Package union registers the "union" read-only blobserver storage type to read from the given subsets, serving the first responding. |
pkg/buildinfo | Package buildinfo provides information about the current build. |
pkg/cacher | Package cacher provides various blobref fetching caching mechanisms. |
pkg/camerrors | Package camerrors define specific errors that are used to decide on how to deal with some failure cases. |
pkg/camlegal | Package camlegal registers the Perkeep License |
pkg/client | Package client implements a Perkeep client. |
pkg/client/android | Package android contains code specific to running the Perkeep client code as a child process on Android. |
pkg/cmdmain | Package cmdmain contains the shared implementation for pk-get, pk-put, pk, and other Perkeep command-line tools. |
pkg/constants | Package constants contains Perkeep constants. |
pkg/conv | Package conv contains utilities for parsing values delimited by spaces. |
pkg/deploy/gce | Package gce provides tools to deploy Perkeep on Google Compute Engine. |
pkg/env | Package env detects what sort of environment Perkeep is running in. |
pkg/fileembed | Package fileembed provides access to static data resources (images, HTML, css, etc) embedded into the binary with genfileembed. |
pkg/fileembed/genfileembed | The genfileembed command embeds resources into Go files, to eliminate run-time dependencies on files on the filesystem. |
pkg/fs | Package fs implements a FUSE filesystem for Perkeep and is used by the pk-mount binary. |
pkg/gc | Package gc defines a generic garbage collector. |
pkg/gpgchallenge | Package gpgchallenge provides a Client and a Server so that a Client can prove ownership of an IP address by solving a GPG challenge sent by the Server at the claimed IP. |
pkg/gpgchallenge/client | The client command is an example client of the gpgchallenge package. |
pkg/gpgchallenge/server | The server command is an example server of the gpgchallenge package. |
pkg/importer | Package importer imports content from third-party websites. |
pkg/importer/allimporters | Package allimporters registers all the importer implementations. |
pkg/importer/dummy | Package dummy is an example importer for development purposes. |
pkg/importer/feed | Package feed implements an importer for RSS, Atom, and RDF feeds. |
pkg/importer/feed/atom | Package atom defines XML data structures for an Atom feed. |
pkg/importer/feed/rdf | Package rdf defines XML data structures for an RDF feed. |
pkg/importer/feed/rss | Package rss defines XML data structures for an RSS feed. |
pkg/importer/flickr | Package flickr implements an importer for flickr.com accounts. |
pkg/importer/gphotos | Package gphotos implements a Google Photos importer, using the Google Drive API to access the Google Photos folder. |
pkg/importer/instapaper | Package instapaper implements a instapaper.com importer. |
pkg/importer/mastodon | Package mastodon provides an importer for servers using the Mastodon API. |
pkg/importer/picasa | Package picasa implements an importer for picasa.com accounts. |
pkg/importer/pinboard | Package pinboard imports pinboard.in posts. |
pkg/importer/plaid | Package plaid implements an importer for financial transactions from plaid.com |
pkg/importer/swarm | Package swarm implements an importer for Foursquare Swarm check-ins. |
pkg/importer/test | Package test provides common functionality for importer tests. |
pkg/importer/twitter | Package twitter implements a twitter.com importer. |
pkg/index | Package index provides a generic indexing system on top of the abstract sorted.KeyValue interface. |
pkg/index/indextest | Package indextest contains the unit tests for the indexer so they can be re-used for each specific implementation of the index Storage interface. |
pkg/index/sqlindex | Package sqlindex implements the sorted.KeyValue interface using an *sql.DB. |
pkg/index/sqlite | |
pkg/jsonsign | Package jsonsign implements Perkeep's cryptographic signing and verification of JSON blobs. |
pkg/jsonsign/signhandler | Package signhandler implements the HTTP interface to signing and verifying Perkeep JSON blobs. |
pkg/kvutil | Package kvutil contains helpers related to github.com/cznic/kv. |
pkg/publish | Package publish exposes the types and functions that can be used from a Go template, for publishing. |
pkg/schema | Package schema manipulates Camlistore schema blobs. |
pkg/schema/nodeattr | Package nodeattr contains constants for permanode attribute names. |
pkg/search | Package search describes and answers Perkeep search queries. |
pkg/server | Package server implements the server HTTP interface for the UI, publishing, setup, status, sync, thubnailing, etc. |
pkg/server/app | Package app helps with configuring and starting server applications from Perkeep. |
pkg/serverinit | Package serverinit is responsible for mapping from a Perkeep configuration file and instantiating HTTP Handlers for all the necessary endpoints. |
pkg/sorted | Package sorted provides a KeyValue interface and constructor registry. |
pkg/sorted/buffer | Package buffer provides a sorted.KeyValue implementation that buffers one KeyValue implementation in front of an another. |
pkg/sorted/kvfile | Package kvfile provides an implementation of sorted.KeyValue on top of a single mutable database file on disk using github.com/cznic/kv. |
pkg/sorted/kvtest | Package kvtest tests sorted.KeyValue implementations. |
pkg/sorted/leveldb | Package leveldb provides an implementation of sorted.KeyValue on top of a single mutable database file on disk using github.com/syndtr/goleveldb. |
pkg/sorted/mongo | Package mongo provides an implementation of sorted.KeyValue using MongoDB. |
pkg/sorted/mysql | Package mysql provides an implementation of sorted.KeyValue on top of MySQL. |
pkg/sorted/postgres | Package postgres provides an implementation of sorted.KeyValue on top of PostgreSQL. |
pkg/sorted/sqlite | Package sqlite provides an implementation of sorted.KeyValue using an SQLite database file. |
pkg/sorted/sqlkv | Package sqlkv implements the sorted.KeyValue interface using an *sql.DB. |
pkg/test | Package test provides common Perkeep test objects. |
pkg/test/asserts | Package asserts provides a bad implementation of test predicate helpers. |
pkg/test/dockertest | Package dockertest contains helper functions for setting up and tearing down docker containers to aid in testing. |
pkg/test/integration | |
pkg/types/camtypes | Package camtypes is like the types package, but higher-level and contains Perkeep-specific types. |
pkg/types/clientconfig | Package clientconfig provides types related to the client configuration file. |
pkg/types/serverconfig | Package serverconfig provides types related to the server configuration file. |
pkg/webserver | Package webserver implements a superset wrapper of http.Server. |
pkg/webserver/listen | |
server/camnetdns | The camnetdns server serves camlistore.net's DNS server and its DNS challenges |
server/perkeepd | The perkeepd binary is the Perkeep server. |
server/perkeepd/ui | Package ui contains the resources for the Camlistore web UI. |
server/perkeepd/ui/closure | |
server/perkeepd/ui/goui | The goui program inserts the javascript code generated by gopherjs for the web UI into the existing web UI javascript codebase. |
server/perkeepd/ui/goui/aboutdialog | Package aboutdialog provides a menu item element that is used in the header menu of the web UI, to display an "About" dialog. |
server/perkeepd/ui/goui/dirchildren | Package dirchildren provides a Query object suitable to send search queries to get the children of a directory, for use in the Directory aspect of the web UI. |
server/perkeepd/ui/goui/downloadbutton | Package downloadbutton provides a Button element that is used in the sidebar of the web UI, to download as a zip file all selected files. |
server/perkeepd/ui/goui/geo | Package geo provides utilities helping with geographic coordinates in the map aspect of the Perkeep web UI. |
server/perkeepd/ui/goui/importshare | Package importshare provides a method to import blobs shared from another Perkeep server. |
server/perkeepd/ui/goui/mapquery | Package mapquery provides a Query object suitable to send search queries from the map aspect of the web UI. |
server/perkeepd/ui/goui/selectallbutton | Package selectallbutton provides a Button element that is used in the sidebar of the web UI, to select all the items matching the current search in the web UI. |
server/perkeepd/ui/goui/sharebutton | Package sharebutton provides a Button element that is used in the sidebar of the web UI, to share the selected items with a share claim. |
Updated 2021-01-18. Refresh now. Tools for package owners.