Skip to content

OUIsolutions/DoTheWorld

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🌍 DoTheWorld

Version License Platform Build Status

A single-file C/C++ library for robust file system operations and data management

InstallationDocumentationFeaturesExamplesContributing

📋 Overview

DoTheWorld is a powerful Windows/Linux cross-platform library designed for comprehensive file and data handling in C/C++. From basic I/O operations to complex transactional systems, it provides a complete toolkit for file manipulation, encryption, hashing, and database-like functionality - all from a single file include.

✨ Features

  • 📁 File and directory management
  • 🔄 Atomic transactions
  • 🔒 Thread-safe lockers
  • 🔍 File search and listing
  • ⏱️ Modification date tracking
  • 🔐 SHA256 hashing
  • 📊 Base64 encoding/decoding
  • 🗄️ Resource management system
  • 🌲 Tree data structures
  • 🔀 Path manipulation utilities
  • 📦 Non-relational database
  • 🔑 Schema validation
  • 🚀 High-performance operations
  • 🔄 Copy and move operations
  • 🔐 Encryption capabilities

📦 Releases

Package Description
doTheWorld.zip Full package with all components
doTheWorldOne.c Single-file amalgamated version
doTheWorld.h Header declarations
doTheWorld.c Source definitions

📦 Installation

Option 1: Single File Include (Recommended)

// Just download and include
#include "doTheWorldOne.c"

Option 2: Traditional Header/Source

// Include the header in your code
#include "doTheWorld.h"

// And link with doTheWorld.c during compilation

📚 Documentation

Category Documentation Link Description
🏗️ Setup Build & Install Getting started with DoTheWorld
📝 Core I/O Basic I/O Reading and writing files
🔄 Operations Copy & Move File and folder operations
🔍 Discovery Listage Listing files and directories
🔢 Encoding Base64 Base64 encoding and decoding
🔐 Security Hashers SHA256 and other hashing functions
⏱️ Tracking Unix Unix timestamp utilities
🔒 Concurrency Locker Thread-safe operations
🗄️ Resources Resource System Resource management framework
🌲 Structure Tree Tree data structure implementation
🎲 Random Randomizers Random generation utilities
Performance Transactions Atomic transaction system
🧩 Components Dependencies Library dependencies
🔐 Security Encryption Data encryption capabilities

🚀 Quick Examples

Reading and Writing Files

#include "doTheWorldOne.c"

int main() {
    // Write a string to file
    dtw_write_string_to_file("hello.txt", "Hello, World!");
    
    // Read file content
    char *content = dtw_load_string_file("hello.txt");
    printf("%s\n", content);
    free(content);
    
    return 0;
}

Using the Resource System

#include "doTheWorldOne.c"

int main() {
    // Create a resource
    DtwResource *resource = new_DtwResource("my_data");
    
    // Set values
    DtwResource *user = DtwResource_sub_resource(resource, "user");
    DtwResource_set_string_in_sub_resource(user, "name", "John");
    DtwResource_set_long_in_sub_resource(user, "age", 30);
    
    // Commit changes
    DtwResource_commit(resource);
    DtwResource_free(resource);
    
    return 0;
}

🛠️ Build Toolchain

💡 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

⭐ Support

If you find DoTheWorld useful, please consider giving it a star on GitHub!


Built with ❤️ by OUI Solutions