nokaa / geomys Goto Github PK
View Code? Open in Web Editor NEWAn async gopher server written in Rust
License: GNU Affero General Public License v3.0
An async gopher server written in Rust
License: GNU Affero General Public License v3.0
If we wish to run Geomys as a service, similar to how nginx runs, we will want to read from a configuration file somewhere on the system. Since we only have two options, directory and address, this is pretty simple. We should probably have order of precedence something like this:
CLI args > ~/.config/geomys/config
> /etc/geomys/config
> Defaults
When a client attempts to download large files (larger than ~2MiB?), only ~2MiB is written to the client. I think that this is an issue with the clients, but I am unable to validate this.
Look at brson/basic-http-server
for how to do this. Seems straightforward.
It might be interesting to allow us to view the number of visitors when /visits
is accessed or something. We can easily store the number of visitors in the server Context
struct.
We want the server to be as stable as possible, so we need to get rid of the unwraps and fully implement the Machine
trait for Gopher
.
rustc_serialize seems to prevent this software
from compiling likely because it is outdated,
Serde is suggested on its GitHub page as the
replacement, so that is what I recommend.
It seems as though not all of the path data is received. Cgo works properly, but when attempting to use curl or lynx, the first two bytes of the path are not received. E.g. when we run curl gopher://0.0.0.0/notes
the server only receives otes
.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.