I’m looking for a solution to generate document (ideally docx but pdf is ok) from a database

Ex: I have a project entry (with client info, dates, information about the project, etc.) and I want to generate documents from a tender templates, containing selected entries from the database.

Here is what I tried until now :

  • Custom database (tinyDB) + custom webpage form + a docx template with jinja markups served by a homemade webpage hosted on pythonanywhere (lot of work and not reliable as I’m doing everything myself)
  • Nocodb form and database (no document generation yet) (self-hosted or on cloud)
  • Airtable (closed source and on cloud) for forms, database and document generation

Airtable is what I’m currently trying because it’s the only one that I found that have lot of support and adds on.

There are a few options on Airtable for document generation, lot of which cost around $30/month which is why I’m looking for a viable alternative. Ideally I would like to be able to upload my already made templates.

More point to the solution if it’s supports geodata

I’m considering keeping airtable and using the api to generate document with the python program I used on the first point, but I’d like to know if there is more options.

Edit: precision: I need to create a document that contains multiple items of the db. Ex: I need to create a resume with different experiences that are saved in the database

Here is an example of a template:

  • @megaman@discuss.tchncs.de
    link
    fedilink
    English
    210 months ago

    Ive got some stuff that i think is similar to what you are trying where i have an excel file template and use python to read from the database and populate cells in excel and then save a pdf.

    There are a couple different options for python libraries - openpyxl, xlwings, or pywin32.

    It is annoying and goofy, but works. Excel can be very flexible with getting everything sized just right for what your final output/pdf should look like.

    • @Biorix@lemmy.worldOP
      link
      fedilink
      English
      210 months ago

      Thank you !

      It’s pretty much the solution I already have: I generate a doc with DocxTemplate through a webpage made with Flask.

      What I’m looking for is a solution with a user-friendly pipeline that can be easily used by anyone once it’s set up

      Form > generate new entry in a db

      Entry > Select entry from tags > generate documents from template

      Airtable is already proposing something similar, which is why I’m currently trying it with zapier, Documint, and other automation solutions

      I’m looking for a self host solution but mostly a free and polished one

      • @florian@lemmy.world
        link
        fedilink
        English
        1
        edit-2
        10 months ago

        I seems a long time ago, I build the same thing as you. For templating I used https://github.com/christopher-ramirez/secretary and as “database” I used Google sheets. Still use it at work.

        It never was really user friendly so I am looking to replace it. That is also the main issue with your self build solution? Or are there other issues as well?

        I didn’t know about Documint. Looks interesting, will check it out, thanks 👍