An open API service indexing awesome lists of open source software.

https://github.com/danex-exe/databaze

The Python module provides classes for simplified file management and synchronization. The `DataFile` class allows you to create, read, write, rename, and delete files, as well as get their information. It supports working with files in JSON format and with the ability to keep logs.
https://github.com/danex-exe/databaze

database file-database json-database

Last synced: 9 months ago
JSON representation

The Python module provides classes for simplified file management and synchronization. The `DataFile` class allows you to create, read, write, rename, and delete files, as well as get their information. It supports working with files in JSON format and with the ability to keep logs.

Awesome Lists containing this project

README

          

# Usage

## DataFile(name, type, encode, path, logs, logger)

name - Название файла
type - Расширение файла (default - json)
encode - Кодировка файла (default - utf-8)
path - Путь до файла (default - .)
logs - Показывать/Скрывать логи (default - False)
logger - Логер (default - None)

.create() - создает файл и, при необходимости, создает папку
.read() - чтение файла (если файл - json, то автоматическое переобразование в словарь)
.write(data) - запись данных в файл (если файл - json, то автоматическое переобразование в строчку)
.delete() - удаление файла
.rename(new_name) - переименование файла
.info() - возвращает информацию о файле (родительская папка, путь, размер, название, дата последнего изменения)

## DataBaze(path, logs, logger)

path - путь до папки (default - .)
logs - Показывать/Скрывать логи (default - False)
logger - Логер (default - None)

.file(name, type, encode) - обьявляет файл
.delete() - удаляет все файлы в базе данных

# Application

```python
from DataBaze import DataBaze

DATABAZE = DataBaze()
CONFIG_FILE = DATABAZE.file('config')
CONFIG_FILE.create() # if not created

data = {
"users": ["User1", "User2"],
"admins": ["User1"]
}

data_file.write(data)
print(data_file.read()['admins']) # ["User1"]
```

```js
const { DataBaze } = require('./DataBaze');

async function main() {
const db = new DataBaze('my-data');
const file = db.file('config');

// Создание файла
await file.create({ version: 1.0 });

// Чтение файла
const data = await file.read();
console.log(data);

// Обновление данных
await file.write({ ...data, updated: new Date() });

// Получение информации о файле
const info = await file.info();
console.log(info);

// Удаление базы данных
await db.delete();
}

main();
```