Skip to content
Turan Furkan Topak edited this page Nov 21, 2025 · 4 revisions

Welcome to the FreeCAD-Documentation-Project wiki!

I'll just do the documentation here for fun.

First of all, the logic here is to break each process into parts and make experiments under control. While Phyton scripts prepare a base for operations, PHP scripts exist to ensure that the relevant base is constantly updated. Here, the system was created by treating wiki and github as web services.

Changes made here are now instantly reflected on the wiki. This is done instantly thanks to webhooks. If you want to try it, please create a PR.

With the current system, this repo is updated every 15 minutes and changes in the wiki are received. So, technically, it is an up-to-date copy of the wiki that can be stored as a file. The relevant PHP script added.

Being constantly updated: Done, completely. It is now fully synchronous. Data is sent and received instantly.

Media: Done. And now it works both ways. Carrying out the work on a shared server unfortunately causes some security measures to be blocked. The big change in the technical drawing is probably due to sending too much data and the bot protection cannot be passed by the server. The host was contacted and they whitelisted it, but since github uses variable IP, it was not fully fixed. Frankly, I expected these operations to be done on the cheapest server without requiring anything extra, but this is really sad.

Considering the slow pace of change of the wiki, this backup is actually quite sufficient. It seems that it is not necessary to update instantly. Because 15 minutes is a very long time for FreeCAD wiki. However, this may lead to some errors.

I added a system that checks the first 7 characters of the sha, but it has some problems, maybe I should use the date as some kind of id, not the sha.

Creation of a Github App: Currently, the classic personal token is being used. I think it is still easier and superior to this other ridiculous thing, but it seems necessary to create an app. Work will be done for this.

Clone this wiki locally