{"id":17356675,"url":"https://github.com/gsquire/swell","last_synced_at":"2025-10-27T12:02:59.675Z","repository":{"id":25766335,"uuid":"29204520","full_name":"gsquire/swell","owner":"gsquire","description":"My senior project at Cal Poly.","archived":false,"fork":false,"pushed_at":"2015-06-27T04:37:20.000Z","size":280,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-01T18:45:58.742Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gsquire.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-01-13T18:33:53.000Z","updated_at":"2015-09-14T20:02:51.000Z","dependencies_parsed_at":"2022-08-24T14:14:09.420Z","dependency_job_id":null,"html_url":"https://github.com/gsquire/swell","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gsquire%2Fswell","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gsquire%2Fswell/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gsquire%2Fswell/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gsquire%2Fswell/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gsquire","download_url":"https://codeload.github.com/gsquire/swell/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245865769,"owners_count":20685293,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-15T18:57:59.519Z","updated_at":"2025-10-27T12:02:54.642Z","avatar_url":"https://github.com/gsquire.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"swell\n=====\n\nA web server in Rust.\n\nThis is my senior project at Cal Poly. It will be under constant construction\nuntil June when I graduate. I will do my best to keep up with the Rust releases.\nI am no expert and this is a huge learning experience for me and should not be\nused in production in any form.\n\nThe name is inspired from my love of the ocean and surfing.\n\nThe project compiles with each version of Rust stable and the latest libraries\nthat are listed in the Cargo file.\n\nYou can define dynamic routes by using the endpoints and it's associated port\nas seen in the example below. This is a way to add some REST functionality\nto the server. Is it ideal? Probably not. But you can use any other process\non the machine, open a port, and swell will send requests to it.\n\nThus, it is language agnostic. I hope that is attractive at least.\n\nTo run the server:\n```sh\ncargo build --release\n\ncargo run PATH (PATH is the file path to the configuration file used)\n```\n\nHere is an example configuration file:\n```toml\n[server]\n\ndocument_root = \"/Users/gsquire/poly/senior_project/html\"\nnum_threads = 16\nport = 42007\nendpoints = [\"/test\"]\nendpoint_port = 3000\n```\nThe file format is TOML and the specification for that format can be\nfound [here](https://github.com/toml-lang/toml).\n\nCurrent configuration options:\n* document_root is the root directory from which to serve files from\n* num_threads is the number of threads the server will use\n* port is the port on which it will serve files\n* endpoints is the set of dynamic routes you wish to serve on the specified\nport.\n* endpoint_port is the port to send requests to for the dynamic routes\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgsquire%2Fswell","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgsquire%2Fswell","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgsquire%2Fswell/lists"}