Skip to content

Latest commit

Β 

History

History
457 lines (369 loc) Β· 18.1 KB

Features&Ideas.md

File metadata and controls

457 lines (369 loc) Β· 18.1 KB

List of Features / Ideas

You can find here all ideas or planned functions that will be implemented in the package. Feel free the discuss about them, or make request for non listed ones.

Color : Desc :
⚫ Is in backlog.
🟠 Is in work.
🟣 Is implemented but need validation.
🟒 Is implemented and verified.
πŸ”΄ Is broken.

Table of content :


1. Random Number Utilities

Status : Purpose :
🟣 Generate a random integer within a range.
🟣 Generate a random double within a range.
🟣 Generate a random boolean value.
🟣 Generate a random string value based on lenght.
🟣 Generate a random long value.
⚫ Select a random element from a list.
⚫ Generate a random alphanumeric string.
⚫ ...

2. Preset Lists

Status : Purpose :
🟣 A List of Months.
🟣 A List of Days.
🟣 A List of Hours.
🟣 A tuple <string, string, string, int> of ISO-3166 Country name.
🟣 A List of most used langages.
🟣 A List of Official langages.
🟣 A List<char, string> of a reversed alphabet.
🟣 A List<(string, int)> of order of magnitude from -30 to 30.
🟣 A List of the first 255 hexadeciaml chars.
🟣 A List of primal nubers of n length.
🟣 A List of fibonacci numbers of n length.
🟣 A List of Mersenne numbers of n length.
🟣 A List of triangular numbers of n length.
🟣 A List of Hexagonal numbers of n length.
🟣 A List<(string, string)> of common HTMl colors.
🟣 A List of common used password.
⚫ ...

3. String Manipulation

Status : Purpose :
⚫ Capitalize the first letter of each word in a string.
⚫ Convert a string to camelCase, snake_case, or kebab-case.
⚫ Remove whitespace from the beginning and end of a string.
⚫ Count the occurrences of a substring within a string.
⚫ Check if a string starts or ends with a specific substring.
⚫ Concatenate a list of strings with a separator.
⚫ Replace multiple spaces with a single space.
⚫ ...

(Back to top ☝️)


4. Date and Time Utilities

Status : Purpose :
⚫ Add or subtract days, months, or years from a date.
⚫ Calculate the difference in days, hours, or minutes between two dates.
⚫ Get the current date and time in UTC.
⚫ Convert a DateTime to a specific string format (e.g., ISO 8601).
⚫ Parse a date string into a DateTime object.
⚫ Check if a year is a leap year.
⚫ Get the number of days in a month for a given year.
⚫ Convert UNIX timestamp to DateTime and vice versa.
⚫ ...

(Back to top ☝️)


5. File and Directory Utilities

Status : Purpose :
⚫ List all files in a directory with a specific extension.
⚫ Delete a file or directory if it exists.
⚫ Copy a file to another directory.
⚫ Move a file to another directory.
⚫ Read a file line by line.
⚫ Append text to a file.
⚫ Get the size of a file in bytes.
⚫ ...

(Back to top ☝️)


6. Collection Utilities

Status : Purpose :
⚫ Find the minimum, maximum, and average value in a list.
⚫ Find the index of the first or last occurrence of an element in a list.
⚫ Check if a list contains any duplicates.
⚫ Flatten a nested list into a single list.
⚫ Merge two or more lists into one.
⚫ Remove null or empty elements from a list.
⚫ Split a list into chunks of a specified size.
⚫ Find the intersection, union, or difference of two lists.
⚫ Convert a list to a dictionary with a specified key selector.
⚫ ...

(Back to top ☝️)


7. Math Utilities

Status : Purpose :
🟣 Number is odd method.
🟣 Number is even method.
🟣 Sum to N numbers.
🟣 Substract to N numbers.
🟣 Factorial of N.
🟣 Negative factorial of N.
⚫ Calculate the square root, power, or logarithm of a number.
⚫ Generate a Fibonacci sequence.
⚫ Determine if a number is prime.
⚫ Find the greatest common divisor (GCD) of two numbers.
⚫ Calculate the least common multiple (LCM) of two numbers.
⚫ Convert degrees to radians and vice versa.
⚫ Round a number to the nearest integer, or to a specific number of decimal places.
⚫ ...

(Back to top ☝️)


8. Validation Utilities

Status : Purpose :
⚫ Validate if a string is a valid integer, float, or decimal.
⚫ Validate if a string is a valid IP address (IPv4 or IPv6).
⚫ Validate if a string is a valid credit card number.
⚫ Validate if a string matches a regular expression pattern.
⚫ Validate if a file path is valid and accessible.
⚫ ...

(Back to top ☝️)


9. Conversion Utilities

Status : Purpose :
🟣 Convert an integer to a binary.
🟣 Convert an integer to a hexadecimal.
🟣 Convert an integer to an octal.
🟣 Convert a binary to an integer
🟣 Convert a binary to a hexadecimal.
🟣 Convert a binary to a octal.
🟣 Convert a hexadecimal to an integer.
🟣 Convert a hexadecimal to a binary.
🟣 Convert a hexadecimal to an octal.
🟣 Convert an octal to an integer.
🟣 Convert an octal to a binary.
🟣 Convert an octal to a hexadecimal.
⚫ Convert a DateTime to a UNIX timestamp and vice versa.
⚫ Convert a collection to a comma-separated string.
⚫ Convert a string to a byte array and vice versa.
⚫ Convert a list to a dictionary using a custom key selector.
⚫ Convert a file to a base64 string and vice versa.
⚫ ...

(Back to top ☝️)


10. Reflection and Type Utilities

Status : Purpose :
⚫ Get all properties or fields of a class.
⚫ Check if a class has a specific attribute.
⚫ Dynamically invoke a method by name.
⚫ Clone an object using reflection.
⚫ Check if an object is of a specific type.
⚫ Get the assembly name of a class or method.
⚫ Create an instance of a class dynamically.
⚫ ...

(Back to top ☝️)


11. Threading and Asynchronous Utilities

Status : Purpose :
⚫ Run a task with a timeout.
⚫ Execute multiple tasks in parallel and wait for all to complete.
⚫ Execute tasks in sequence with delay.
⚫ Implement a simple thread-safe counter.
⚫ Create and manage a thread pool.
⚫ Implement a retry mechanism for failed tasks.
⚫ Use a semaphore to limit concurrent task execution.
⚫ Run a background task and report progress.
⚫ ...

(Back to top ☝️)


12. Network Utilities

Status : Purpose :
⚫ Send an HTTP GET or POST request.
⚫ Download a file from a URL.
⚫ Check internet connectivity by pinging a server.
⚫ Parse a URL into its components (protocol, host, path, query).
⚫ Encode and decode URL parameters.
⚫ Get the local machine's IP address.
⚫ Send an email with attachments.
⚫ Fetch DNS records for a domain.
⚫ ...

(Back to top ☝️)


13. Data Structure Utilities

Status : Purpose :
⚫ Implement a basic stack and queue.
⚫ Implement a priority queue.
⚫ Implement a binary search tree.
⚫ Implement a linked list (singly or doubly linked).
⚫ Implement a hash map or dictionary.
⚫ Implement a graph and common graph traversal algorithms (DFS, BFS).
⚫ Implement a set with basic operations (add, remove, contains).
⚫ Implement a trie (prefix tree) for efficient string searching.
⚫ ...

(Back to top ☝️)


14. Serialization and Deserialization

Status : Purpose :
⚫ Serialize an object to JSON, XML, or binary format.
⚫ Deserialize a JSON, XML, or binary string into an object.
⚫ Serialize and deserialize a collection of objects.
⚫ Pretty-print a JSON string.
⚫ Serialize an object to a file and deserialize it back.
⚫ ...

(Back to top ☝️)


15. Encryption

Status : Purpose :
🟣 Encode a string with code Casear.
🟣 Encode a string with AtBash.
⚫ Encode a string with Base64.
⚫ Encode a string with Scytale.
⚫ Encode a string with RailFencer.
⚫ Encode a string with Playfair.
⚫ Encrypt and decrypt a string using symmetric encryption (e.g., AES).
⚫ Encrypt and decrypt a file.
⚫ Sign and verify data using a digital signature.
⚫ ...

(Back to top ☝️)


16. Hashing

Status : Purpose :
🟣 Hash CRC8 method.
⚫ Hash CRC16 method.
⚫ Hash CRC32 method.
⚫ Hash CRC64 method.
⚫ Hash InternetCheckSum method.
⚫ Hash Fletcher8 method.
⚫ Hash Fletcher32 method.
⚫ Hash Adler32 method.
⚫ Hash Xor8 method.
⚫ Hash LunAlgorithm method.
⚫ Hash DamnAlgorithm method.
⚫ Hash RabinFingerprint method.
⚫ Hash TabulationHashing method.
⚫ Hash ZobristHashing method.
⚫ Implementation of PersonHash method.
⚫ Implementation of PJHash method.
⚫ Implementation of MurmurHash method.
⚫ Implementation of FarmHash method.
⚫ Implementation of XXHash3 method.
⚫ Implementation of DHash method.
⚫ Implementation of Blake3 method.
⚫ Implementation of HMAC method.
⚫ Implementation of SipHash method.
⚫ Implementation of HighwayHash method.
⚫ Implementation of Blake2s method.
⚫ Implementation of Blake2b method.
⚫ Implementation of Blake2x method.
🟣 Implementation of SHA256 method.
🟣 Implementation of SHA512 method.
⚫ Implementation of SHA3 method.
⚫ Implementation of SpectralHash method.
⚫ Implementation of SWIFFT method.
⚫ Implementation of Whirlpool method.
⚫ Generate a salt and hash a password.
⚫ ...

(Back to top ☝️)


17. Error Handling Utilities

Status : Purpose :
⚫ Log an exception to a file or external service.
⚫ Wrap a method with a try-catch block and log errors.
⚫ Implement a custom exception class.
⚫ Rethrow an exception with additional context.
⚫ Capture and log unhandled exceptions globally.
⚫ ...

(Back to top ☝️)


18. Configuration and Environment Utilities

Status : Purpose :
⚫ Read and write settings to a configuration file.
⚫ Get an environment variable value.
⚫ Set or update an environment variable.
⚫ Determine the operating system and architecture.
⚫ Get the current application directory.
⚫ Parse command-line arguments.
⚫ ...

(Back to top ☝️)


19. Localization and Internationalization

Status : Purpose :
⚫ Format a number as currency for a specific culture.
⚫ Format a date and time for a specific culture.
⚫ Translate strings based on a resource file.
⚫ Detect the user's current culture and language.
⚫ Convert a number to words (e.g., "123" to "one hundred twenty-three").
⚫ Implement a simple translation service.
⚫ ...

(Back to top ☝️)


20. GUI and User Interaction Utilities

Status : Purpose :
⚫ Display a simple message box or alert.
⚫ Prompt the user for input with a dialog box.
⚫ Open a file dialog to select a file or directory.
⚫ Update a progress bar during a long-running task.
⚫ Create a simple notification or toast message.
⚫ Capture a screenshot of the current window or screen.
⚫ ...

(Back to top ☝️)


21. Debugging and Diagnostics

Status : Purpose :
⚫ Log method entry and exit points.
⚫ Dump the contents of an object to a readable string.
⚫ Measure the memory usage of a block of code.
⚫ Attach a debugger to a running process.
⚫ Create a simple performance profiler.
⚫ Track the time taken by individual methods.
⚫ ...

(Back to top ☝️)


22. Miscellaneous Utilities

Status : Purpose :
⚫ Generate a universally unique identifier (UUID).
⚫ Implement a basic observer pattern.
⚫ Calculate the checksum of a file.
⚫ Implement a basic publish/subscribe mechanism.
⚫ Generate a QR code from a string.
⚫ Implement a simple finite state machine.
⚫ Detect changes in a file or directory using file system watchers.
⚫ Implement a rate limiter for controlling access to a resource.
⚫ ...

(Back to top ☝️)