SandID
Every grain of sand on Earth has its own ID.
Note that the algorithm used to generate the
sandid.SandID mainly come
from the UUID version 1. Some adjustments
were made to enhance the efficiency of database insertion (see
this).
Features
- Extremely easy to use
- Fixed length
- 16 bytes
- 22 characters
- 128-bit
- Huge capacity
- Up to 2e128
- URL safe
^[A-Za-z0-9-_]{22}$
- Encoding friendly
- Implemented
encoding.TextMarshalerandencoding.TextUnmarshaler - Implemented
encoding.BinaryMarshalerandencoding.BinaryUnmarshaler - Implemented
json.Marshalerandjson.Unmarshaler
- Implemented
- SQL friendly
sandid.NullSandIDsupport- Implemented
sql.Scanneranddriver.Valuer
Installation
Open your terminal and execute
$ go get github.com/aofei/sandiddone.
The only requirement is the Go, at least v1.13.
Community
If you want to discuss SandID, or ask questions about it, simply post questions or ideas here.
Contributing
If you want to help build SandID, simply follow this to send pull requests here.
License
This project is licensed under the MIT License.
License can be found here.

Formed in 2009, the Archive Team (not to be confused with the archive.org Archive-It Team) is a rogue archivist collective dedicated to saving copies of rapidly dying or deleted websites for the sake of history and digital heritage. The group is 100% composed of volunteers and interested parties, and has expanded into a large amount of related projects for saving online and digital history.
