Skip to content
master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Store

Build Status Coverage Status Go Report Card GoDoc

Simple, painless, zero-config configuration storage

Installation

go get -u github.com/atrox/store
# or with dep
dep ensure -add github.com/atrox/store

Example

package main

import (
	"fmt"

	"github.com/atrox/store"
)

type Config struct {
	Name string `yaml:"name"`
	Age  int    `yaml:"age"`
}

func main() {
	storage, err := store.New("testapp")
	if err != nil {
		panic(err)
	}

	config := &Config{
		Name: "Dr. Robert Ford",
		Age:  70,
	}
	err = storage.Save(config)
	if err != nil {
		panic(err)
	}
	fmt.Printf("config is now saved at %s\n", storage.Path(config))
	// ~/.config/testapp/config.yaml

	config = &Config{}
	err = storage.Get(config)
	if err != nil {
		panic(err)
	}
	fmt.Printf("Config retrieved:\n%+v\n", config)
	// &{Name:Dr. Robert Ford Age:70}
}

Contributing

Everyone is encouraged to help improve this project. Here are a few ways you can help:

About

Simple, painless, zero-config configuration storage

Topics

Resources

License

Packages

No packages published

Languages