| Crates.io | codemelted |
| lib.rs | codemelted |
| version | 25.3.0 |
| created_at | 2025-06-01 01:31:37.634183+00 |
| updated_at | 2025-11-16 22:53:49.504516+00 |
| description | The aim of this project is to deliver a swiss army knife module to aid software engineers for building full stack solutions for their applications. Utilizing the Rust programming language, the module serves as a backbone to engineer solutions for multiple build targets. |
| homepage | https://codemelted.com/developer/index.html?open=codemelted.rs |
| repository | https://github.com/codemelted/codemelted.rs |
| max_upload_size | |
| id | 1696823 |
| size | 5,492,018 |

LAST UPDATED: 2025-Nov-16
The aim of this project is to deliver a swiss army knife module to aid software engineers in building full stack solutions for their applications. Utilizing the Rust programming language, the module serves as a backbone to engineer solutions for multiple build targets.
The module serves as a consumable crate for software engineers to build their own custom backend / desktop services applications. Secondly built into the module is a Command Line Interface (CLI) to target script based solutions with a powerful CLI that will work the same regardless of the operating system. Lastly parts of the module along with the codemelted.js implementing the codemelted namespace will build a WASM / JS consumable modules to build powerful Single / Progressive Web Applications.
If you find this module useful, any support is greatly appreciated. Thank you! 🙇
Table of Contents

codemelted.rs is a single file implementing the Domain Use Cases domain specific use cases.uc_xxx functions reflecting the use case diagram above.codemelted.rs is organized by each implemented use case with data definitions first and function implementations after.You can access the use case functions via the codemelted::uc_xxx(). The following example demonstrates utilizing the codemelted module.
// Access the module objects of interest. In this case the logger module objects.
use codemelted::{CLogLevel, CLogRecord, CLoggedEventHandler};
// Setup a log handler for post logging.
fn log_handler(data: CLogRecord) {
// Do something, say post to the cloud about the event
}
codemelted::logger_set_log_handler(Some(log_handler));
// Set the log level
codemelted::logger_set_log_level(CLogLevel::Warning);
// Now later on in your code....
// This will be reported to the console and then to the CLoggedEventHandler.
codemelted::logger_log(CLogLevel::Error, "Oh Know!");
The above is a basic example. All modules are fully documented with examples as you use the codemelted crate.
codemelted crate does not utilize async / await / future syntax.codemelted module allowing the software engineer to choose an appropriate thread model.codemelted module, they are transformed into synchronous APIs via the tokio::Runtime.codemelted crate, they provide a synchronous API and implement the minimum threading necessary to achieve the module API goal.The following sub-sections cover various aspects the codemelted.rs module information. It is a single file implementation of the identified use cases.
The goal of the codemelted.rs is to limit 3rd party items. However, some CodeMelted DEV use cases, thanks to the hard work of the developers who maintain the crates below, would not have been possible.
json::JsonValue is typed alias as CObject to match other CodeMelted DEV module implementations.network_serve and network_upgrade_web_socket calls of the Network Domain Use Case forming the basis to upgrade a HTTP request wanting to upgrade to a bi-directional web socket. This will create a CWebSocketProtocol that represents a bi-directional server socket. FYI: The following warning occurs with this crate. Will keep an eye out on updates with this crate, see if an assist can be made to the owner, or look for a new crate to utilize with the completed codemelted.rs module design.
warning: the following packages contain code that will be rejected by a future version of Rust: buf_redux v0.8.4, multipart v0.18.0 note: to see what the problems were, use the option
--future-incompat-report, or runcargo report future-incompatibilities --id 1
codemelted.rs file to include mermaid models where appropriate to help describe each of the modules.codemelted crate synchronous design.The versioning of the codemelted crate will utilize a modified semantic versioning X.Y.Z with the following rules for the numbering scheme.
Y.Z values to 1.Z to 1.X.Y changes.MIT License
© 2025 Mark Shaffer
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
CProtocolHandler and CTaskResult for simpler implementation of the templated data. Added the --async-sleep action to the codemelted CLI.codemelted command adding the --help and --console- actions. Fixed issues discovered during the development.