Portuguese documentation: README.pt-BR.md
tccbuilder-demo.mp4
tccBuilder is a local web application independently developed to automate and streamline the completion of the editable Undergraduate Thesis template provided by the FIT 499 course in the Agronomy program at the Universidade Federal de Viçosa.
After analyzing the standardized structure of the institutional document, I identified an opportunity to apply my software development knowledge to a real academic context. I created this tool with two main goals:
- Reduce the time and effort required from students during the initial completion and organization of the document.
- Strengthen practical software development experience by transforming an academic need into a functional portfolio project.
The application allows users to enter their academic information through a form in the browser and automatically generate a Microsoft Word document in .docx format. The generated file remains fully editable and is based on the institutional template.
Note: tccBuilder is being developed concurrently with the writing of my own Undergraduate Thesis. Although both projects are progressing during the same period, the academic research is independent of this application. tccBuilder was created on my own initiative as a practical solution and as a software development portfolio project.
- Frontend: React and Vite
- Backend: Node.js and Express
- Document generation: Docxtemplater and PizZip
- Template: Microsoft Word document containing dynamic placeholders
.
├── public/
│ └── logotcc.png
├── src/
│ ├── App.jsx
│ ├── index.css
│ └── main.jsx
├── index.html
├── server.js
├── template.docx
├── package.json
├── package-lock.json
├── vite.config.js
├── README.md
├── README.pt-BR.md
└── LICENSE
The template.docx file contains the placeholders used by the backend to insert the information submitted through the form.
Examples:
<<NOME_AUTOR>>
<<TITULO>>
<<ORIENTADOR>>
<<COORIENTADOR_A>>
<<COORIENTADOR_B>>
<<TEXTO_RESUMO>>
<<TEXTO_INTRODUCAO>>
- Node.js 20.19 or later
- npm
- Git
Clone the repository:
git clone https://github.com/arleujr/tccBuilder.git
cd tccBuilderInstall the dependencies:
npm ciIn one terminal, run:
node server.jsThe backend will be available at:
http://localhost:3000
In another terminal, run:
npm run devOpen the application at:
http://localhost:5173
To generate the frontend production build, run:
npm run buildThe generated files will be stored in the dist directory.
The frontend sends the completed form fields to the server running on the local machine.
The backend receives the data, opens the template.docx file, replaces the corresponding placeholders, and returns a new Microsoft Word document for download.
The generated document remains fully editable in Microsoft Word or any other editor compatible with the .docx format.
tccBuilder uses a template specifically designed for the FIT 499 course.
The application does not review the academic quality of the submitted text, automatically correct references, or provide complete validation against formatting standards.
Users should review the generated document before submitting the final version of their thesis.
-
Implement stricter formatting rules to ensure that each section is positioned correctly in the final document, without unintended page breaks or unnecessary spacing.
-
Integrate the RefEngine application through an API, enabling the automatic generation of bibliographic references from PDF, BibTeX, or RIS files and their insertion into the final thesis document.
-
Prepare a distributable version of the application with a simplified installation and startup process, allowing other students to use tccBuilder without configuring a development environment, cloning the repository, or running terminal commands.
-
Add automated tests and a continuous integration pipeline to improve project reliability.
The application runs locally.
The information entered by the user is exchanged only between the browser and the server running on the same computer. There is no database, cloud storage, or transfer of academic content to external services.
Developed by Arleu Júnior
This project is distributed under the MIT License. See the LICENSE file for more information.