I am currently working on a fairly old website service for the company’s internal needs. The stack is quite old - PHP 5.3. It so happened that company can’t abandon it right now.

… In short, I received a task to develop a REST API for this service. It is clear that I cannot use the current stack. What can I use as a standalone core for the new API? The main thing for me is the speed of development and ease of learning. For example, I would like Bearer authorization / some rights model out of box.

Something like Laravel, but separate instance of it just for the API seems a little overkill for me. What you can advise me? Any boilerplates / software recommendations are welcomed.

PS: My database is MSSQL 2016, so it could be a problem.

      • etchinghillside@reddthat.com
        link
        fedilink
        arrow-up
        2
        ·
        3 months ago

        Try and get the current stack running locally or in a dev environment. Add a “hello world” route - call it and see what happens - iterate.

        There are certainly times that you come into a situation that requires a new service. But it shouldn’t be your first inclination. A lot of software development is supporting legacy/other’s code.

        Do the new requirements require information from the current database/codebase?

        • Drun@lemmy.worldOP
          link
          fedilink
          arrow-up
          1
          ·
          3 months ago

          They certainly do (from database). Maybe you’re right - main reason I didn’t wanted to use current stack is because outdated PHP curl (TLSv1, eh), but I can probably achieve the same with “exec”.

          I’ll look into that.

  • lascapi@jlai.lu
    link
    fedilink
    arrow-up
    2
    ·
    3 months ago

    Why is it overkill?

    Like you already have PHP in your stack, why not keep it with a new version of course…

    • Drun@lemmy.worldOP
      link
      fedilink
      arrow-up
      1
      ·
      3 months ago

      It has so much. I think it may be a problem to maintain it just for the API. Perhaps, there’s something a little bit more compact?