acm-udayton / acm-udayton/ACM-Meeting-Records

[FEATURE] Create RESTful /api/v1 endpoints for application

Open
#162 0 comments 0 reactions 0 assignees View on GitHub
backend enhancement
Dominant language
Python
Stars
7
Forks
2
Avg merge
4d 23h
Merged PRs (30d)
2

Description

## Feature Description

Create new blueprints for /api/v1 endpoints that mirror the existing endpoints in the existing non-API application.

Use pydantic for request and response schema and also be sure to use `app.register_api_blueprint()` to register these blueprints so that Swagger UI (#161) can document the API automatically.

All business logic should come from existing services or be placed in new services, as per #160.

## Why It's Worth Implementing

This is key to being able to decouple the frontend from the backend in `v2.0`.

---

## Acceptance Criteria & Solution Requirements
*To close this issue, the following must be met (can be finalized in the comments):*
- [ ] 1. Application runs as expected with the new feature integrated seamlessly.
- [ ] 2. Code quality metrics are maintained, and linting has been considered in development.
- [ ] 3. Testing metrics are maintained, and tests have been updated/added wherever relevant during development.
- [ ] 4. Documentation has been updated to reflect the changes made during development.
- [ ] 5. All application functionality can now be accessed from the new RESTful API.
- [ ] 6. Use services (#160) for all business logic.
- [ ] 7. JWT authentication has been implemented (#154)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.