https://github.com/ethosa/akane
The Nim asynchronous web framework.
https://github.com/ethosa/akane
akane async async-web nim nim-lang server web web-framework
Last synced: 16 days ago
JSON representation
The Nim asynchronous web framework.
- Host: GitHub
- URL: https://github.com/ethosa/akane
- Owner: Ethosa
- License: mit
- Created: 2020-03-13T20:27:30.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2023-03-29T07:13:27.000Z (about 2 years ago)
- Last Synced: 2025-02-19T05:46:31.324Z (2 months ago)
- Topics: akane, async, async-web, nim, nim-lang, server, web, web-framework
- Language: Nim
- Size: 311 KB
- Stars: 55
- Watchers: 6
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Akane
The Nim asynchronous web framework.### Deprecated
Actual version - [HappyX](https://github.com/HapticX/happyx)[](https://wakatime.com/badge/github/Ethosa/akane)
[](https://github.com/ellerbrock/open-source-badges/)
[](https://github.com/Ethosa/yukiko/blob/master/nim-lang.svg)
[](https://github.com/Ethosa/akane/blob/master/LICENSE)
[](https://github.com/Ethosa/akane/actions)Latest version - 0.2.0
Stable version - 0.2.0
## Install
- git: `nimble install https://github.com/Ethosa/akane.git`
- nimble: `nimble install akane`## Features
- Pages with URL handling methods: `equals`, `startswith`, `endswith`, `regex`,`notfound`;
- `templates` folder;
- Only the standard library used;
- YML-like pages syntax;
- Debug mode;
- Password hashing;
- Working with cookies;
- Simple usage:
```nim
import akaneproc main = # for gcsafe
var server = newServer() # by default launches on http://localhost:5000server.pages:
equals("/"): # when url is "http://...localhost:5000/"
# You also can write "/" instead of equals("/")
# type of `request` is a Request.
await request.answer("Hello, world!") # utf-8 encoded message.equals("/getme", HttpGet):
await request.answer("You can see it only on GET method! :)")server.start()
main()
```## Debug mode
For enable debug mode, please, compile with `-d:debug` or `--define:debug`.## Tools
For enable other tools like password checking, please, compile with `-d:tools` or `--define:tools`.## FAQ
*Q*: Where can I learn this?
*A*: You can see [wiki page](https://github.com/Ethosa/akane/wiki/Getting-started)*Q*: Where can I find the docs?
*A*: You can see [docs page](https://ethosa.github.io/akane/akane.html)*Q*: How can I help to develop this project?
*A*: You can put a :star: :3
Copyright 2020-2021 Ethosa