Skip to content
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

Adding Salvo #21

Open
17 tasks
Wulf opened this issue Apr 1, 2022 · 1 comment
Open
17 tasks

Adding Salvo #21

Wulf opened this issue Apr 1, 2022 · 1 comment
Labels
backend-framework Anything related to backend frameworks

Comments

@Wulf
Copy link
Owner

Wulf commented Apr 1, 2022

Adding a backend framework

Base requirements for each framework:

  • Add new framework option to CLI, update BackendFramework enum
  • main.rs which starts the server in create-rust-app_cli/template/src/
    • sets up logging
    • adds the database pool and the mailer to app's data (every framework has a way of passing data onto all handlers)
    • sets up /api/todos endpoints (see todo.rs below)
    • (only in production: #[cfg(not(debug_assertions))]) serves files from ./frontend/build with the index.html as the default
    • listens on port 8080
    • returns 404 for all unhandled routes
  • todo.rs which serves the CRUD endpoints for the example 'todo' service in create-rust-app_cli/template/src/services
    • GET /: returns a JSON list of all TODO items
    • GET /id: return a single JSON TODO item
    • POST /: creates and returns a single JSON TODO item
    • PUT /:id: updates and returns a single JSON TODO item
    • DELETE /:id: deletes a single item, returns 200 status code

Optional requirements:

(we can get to these later)

  • Auth plugin suppot
    • Implement all /api/auth routes
    • Add an extractor/guard for auth
  • Storage plugin support
    • Add an example service which shows file uploads (files.rs)
@Wulf Wulf added the backend-framework Anything related to backend frameworks label Apr 1, 2022
@Wulf
Copy link
Owner Author

Wulf commented Apr 1, 2022

Outline for #20

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backend-framework Anything related to backend frameworks
Projects
None yet
Development

No branches or pull requests

1 participant