Skip to content

Conversation

@paigewilliams
Copy link
Contributor

@paigewilliams paigewilliams commented Dec 17, 2025

Status as of 01/05/2025:

  • Begin using Django REST Framework (DRF) in the TEKDB/explore routes. Adding a prefix of /api/ to the DRF routes to maintain functionality in the preexisting routes and try to move incrementally without breaking changes.
    • api/explore/<model>/<id> works.
    • api/explore/<model>/<id>/download does not work yet.
    • api/page/<name> works.
    • api/search works.
    • api/export/<model>/<id>/format does not work.
    • api/site-info works.
    • api/csrf works.
    • Tests are failing.
  • Use react in the frontend
    • Using react-router v7 in "framework" mode. I feel pretty good about this decision.
    • Can log in from the client.
    • Using react-bootstrap for styles and some components.
    • /explore page needs to be behind auth.
    • Need to decide on if we want a state management library, and if so which one.
    • Need to add auth middleware to check if user is authenticated.
    • Need to store users credentials or something to stay logged in.
    • Lots of style work, including fonts and organizing the css files a bit.
    • Executing a search from the form does not work.
    • Need to add dockerfile for client app.

Lots more to do if we want to move forward with this! I'm not 100% sold on this being the best use case for the frontend given all of the work to get credentials and make sure everything is secure. I am interested in trying Alpine.js and HTMX as a more lightweight alternative to React with the goal of phasing out Knockout and jQuery.

@paigewilliams paigewilliams changed the title Paige react fe testing Experiment: migrate to DRF + React Dec 17, 2025
@pollardld
Copy link
Member

❤️ it

@paigewilliams paigewilliams marked this pull request as draft December 17, 2025 00:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants