Skip to content

Latest commit

 

History

History
71 lines (55 loc) · 1.25 KB

README.md

File metadata and controls

71 lines (55 loc) · 1.25 KB

🌎 JSON Database

🚀 A simple JSON database for Go. It uses a JSON file as a database. It is very easy to use.

📦 Installation

go get github.com/tunardev/jsondb

📝 Usage

package main

import (
    "fmt"

    "github.com/tunardev/jsondb"
)

func main() {
	// Create a new database
	db, err := jsondb.New("db.json")
	if err != nil {
		panic(err)
	}

	// Set a value
	db.Set("person.name", "Tunar")
	db.Set("person.age", 14)
	db.Set("person.friends", []interface{}{"John", "Doe"})

	// Get a value
	name, err := db.Get("person.name")
	if err != nil {
		panic(err)
	}
	fmt.Println(name) // Output: Tunar

	// Increment a value
	db.Add("person.age", 1)
	age, err := db.Get("person.age") // Output: 15
	if err != nil {
		panic(err)
	}
	fmt.Println(age)

	// Decrement a value
	db.Sub("person.age", 1)
	age, err = db.Get("person.age") // Output: 14
	if err != nil {
		panic(err)
	}
	fmt.Println(age)

	// Check if a value exists
	fmt.Println(db.Has("person.name")) // Output: true

	// Push a value
	db.Push("person.friends", "Jane")
	if friends, err := db.Get("person.friends"); err == nil {
		fmt.Println(friends) // Output: [John Doe Jane]
	}

	// Delete a value
	db.Delete("person")

	fmt.Println(db.Has("person.name")) // Output: false
}