CWebStudio
An Modern Reactive C Web Server
Install / Use
/learn @OUIsolutions/CWebStudioREADME
CWebStudio
CWebStudio is a powerful and lightweight framework for building web applications in C/C++. Designed for efficiency and simplicity, it provides a single-file library to streamline common web development tasks. With CWebStudio, you can effortlessly handle HTTP requests, parse JSON, manage static files, and create dynamic front-end code using the innovative HyDration mechanic. Whether you're developing a simple API or a complex web application, CWebStudio equips you with the tools to build fast and reliable solutions.
🚀 Features
- Lightweight & Efficient: A minimal footprint with maximum performance.
- Single-File Library: Easy to integrate with your projects.
- HTTP Request Handling: Simplified management of routes, headers, and query parameters.
- JSON Parsing: Built-in support for handling JSON data with ease.
- Static File Management: Serve static files with smart caching.
- HyDration Mechanic: Generate dynamic front-end code directly from C.
- Cross-Platform: Compatible with multiple environments for C/C++ development.
📦 Releases
| Item | Description |
|------|-------------|
| CWebStudioOne.c | CWebStudio One file (All-in-one solution) |
| CWebStudio.h | Header File |
| CWebStudio.zip | Full Folder (Includes src/one.c) |
💻 Quick Start: Simple Example
Here's a minimal example to get you started with CWebStudio. This code sets up a basic server that responds with "Hello World".
#include "CWebStudioOne.c"
CwebHttpResponse *main_server(CwebHttpRequest *request) {
return cweb_send_text("Hello World", 200);
}
int main(int argc, char *argv[]) {
CwebServer server = newCwebSever(5000, main_server);
CwebServer_start(&server);
return 0;
}
📚 Documentation
Explore the comprehensive documentation to learn more about CWebStudio's capabilities:
| Topic | Description | |-------|-------------| | Build & Install | How to build and install CWebStudio | | Routing & URL Parameters | Working with URL parameters | | Query Parameters | Retrieving query parameters | | Iterating Query Params | Iterating through query parameters | | URL Encoding | Parsing URL-encoded parameters | | Headers | Retrieving request headers | | Iterating Headers | Iterating through headers | | Request Body | Reading body content from requests | | JSON Parsing | Parsing JSON data from requests | | Returning JSON | Returning JSON using cJSON | | Binary Content | Reading binary content from requests | | Plain Text Responses | Returning plain text responses | | Rendered HTML | Returning HTML using CTextStack | | HTML Responses | Returning raw HTML responses | | Serving Files | Returning files directly from the server | | Other Formats | Returning content in various formats | | Static Files | Handling static files with smart caching | | Debugging | Enabling debug mode with CWEB_DEBUG | | Server Control | Killing the server process | | Server Configuration | Configuring server parameters | | HyDration Intro | Introduction to HyDration for front-end code | | HyDration Steps | Explaining the three steps of HyDration | | HyDration Example | Full runnable HyDration example | | HyDration Search | Retrieving search results from the browser | | HyDration Requirements | Setting up search requirements for bridges | | HyDration Actions | Executing actions in the browser | | HyDration Shortcuts | Using shortcuts in HyDration | | HyDration Arguments | Passing arguments between bridges | | HyDration Numbers | Handling numbers in HyDration | | Dependencies | Required dependencies for CWebStudio |
🤝 Contributing
We welcome contributions to CWebStudio! If you'd like to contribute, please fork the repository, make your changes, and submit a pull request. For major changes, please open an issue first to discuss your ideas.
📜 License
CWebStudio is licensed under the MIT License. See the LICENSE file for more details.
🌟 Why CWebStudio?
CWebStudio brings the power of C/C++ to web development, combining performance with simplicity. Whether you're building embedded web servers or high-performance APIs, CWebStudio is the ideal choice for developers who value efficiency and control.
