-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Plans to improving salvo-cli #23
Comments
Probably worth trying out omniqueue-rs for queues. As of now it supports redis, gcp, in memory, rabbitmq and sqs. I just filed a feature request to support other database backends. svix/omniqueue-rs#62. |
Thanks for the advice, I will try |
I have started working on repo and experiment with how we can improve salvo-cli. I have tried to make the api minimal as possible. Feel free to have a look at https://github.com/prabirshrestha/salvo-template. cargo install cargo-generate
cargo generate prabirshrestha/salvo-template Right now beside the README.md it doesn't do any templating as I'm focusing on getting it working. Seems like cargo generate can also be used as a library so might be salvo cli and reuse it? |
Thanks for your suggestion, using cargo-generate is a great practice, but it seems that you need to get the code online when you use it, but in China, many users many users can't access github directly, so downloading the code online will be a problem, I don't see any way to solve it for the moment.That's why I previously opted for an offline approach to cli.Do you have any good advice? |
source of inspiration Improvements to the program will be outlined below
use cargo workspace
add support for SPA so client side apps can be written.
Add support for surrealdb. It can be embedded as well as run in clusters, supports vector embeddings
use yaml for config, as this allows other folks in the team not familiar with rust or toml.
generate README.md so we know what the next step is. for now it probably doesn't matter as it just cargo run. For
example I had to read the code to understand where the swagger ui is.
add support for background jobs. I think this is very important to enable rich responsive servers.
add support for cron jobs
instead of rand_utils.rs considering using specific files such as password.rs.
Considering using traits for Services. This would allow us to change the implementation via config.
consider consistent naming for routes such as get_user_page_router (for html), get_user_route (for apis), - [ ] delete_user_route and so on.
remove demo.rs
considering using sub folders for templates.
Add support for sending emails. Emails usually have html templates too.
Add support for 2fa auth.
Add support for App passwords.
Add support for updating/reseting passwords.
call it open api instead of swagger.
add support for login, logout and register in homepage.
Add generic pagination concept.
add CSRF
add localization
add systemic and watch support so saving .rs files would automatically build
add support for server errors. might be even show stack traces in debug mode?
socket.io with https://github.com/Totodore/socketioxide for real time communication
in memory as well as distributed caching
generic storage using https://opendal.apache.org/. Allowing to easily swap files from files system to cloud storages.
Group templates into folder. Such as as templates/admin/users/list_page.html instead of templates/user_list_page.html.
Implement 500 internal server error page.
Add support for CSS minification/compliation. Might be can use grass which includes support for compiling SASS files so we get benefits for variables and imports that can be merged to a single file.
Use layout pages instead of duplicating code.
Don't default cors to the following. could be security issue.
The text was updated successfully, but these errors were encountered: