35 lines
1 KiB
Markdown
35 lines
1 KiB
Markdown
# Anthracite
|
|
A simple web server written in C++. Supports HTTP 1.0 & 1.1.
|
|
|
|
## Developing
|
|
|
|
To build/develop Anthracite, you must have C++20, Make, and Python3 installed.
|
|
|
|
You can run Anthracite with: `make run`
|
|
|
|
## Todo
|
|
- [x] HTTP/1.0
|
|
- [x] Serve HTML Pages
|
|
- [x] Properly parse HTTP requests
|
|
- [x] Add module-based backend system for handling requests
|
|
- [x] Multithreading
|
|
- [x] HTTP/1.1
|
|
- [ ] Improve benchmarking infrastructure
|
|
- [ ] Faster parsing
|
|
- [ ] Fix glaring security issues
|
|
- [ ] Proper error handling
|
|
- [ ] User configuration
|
|
- [ ] Build out module-based backend system for handling requests
|
|
- [ ] HTTP/2
|
|
- [ ] Enhance logging
|
|
- [ ] Cleanup (this one will never truly be done)
|
|
|
|
## Screenshots
|
|
|
|
![A picture of the default index.html page used by Anthracite](https://github.com/nickorlow/anthracite/blob/main/.screenshots/default-page.png?raw=true)
|
|
![A picture of the Anthracite default 404 not found page](https://github.com/nickorlow/anthracite/blob/main/.screenshots/404-page.png?raw=true)
|
|
|
|
---
|
|
|
|
_"By industry, we thrive"_
|