How to Create Custom Features in Taiga when Self hosting with docker

Is there a way to implement custom features. Not sure how this would be done. I would like to implement my own code and not use 3rd parties like zapier.

This there a way to edit the code create a custom feature. I would like to be able to look at the task and have time entry area to enter date and hours worked. That would be saved in a new postgres table or possibly an orcl db.

I would also like to add a scrollable list to each task to show all time entries on a task.

If you know of how I would go about this please explain in some detail. An useful links would be appreciated.

It’s possible, there would be two steps:

  1. make the modifications in the taiga code
  2. Rebuild the docker images affected by the changes.

The first step would require making modifications to the Taiga backend and frontend. Either directly cloning the repositories and making the modifications in them or creating plugins with your modifications. The first option is probably easier for you purpose and offers you more possibilities for customization.

Then you only have to recompile the docker images.

For the backend

cd taiga-back/
docker build --no-cache -f docker/Dockerfile -t taigaio/taiga-back:latest .

And for the frontend

cd taiga-front/
docker build --no-cache -f docker/Dockerfile -t taigaio/taiga-front:latest .

And that would be all. Starting docker on the machine with the new images would apply your changes.

You can avoid building the docker images by installing directly from the source code repositories. And here is another installation guide designed to make the development process easier.

I hope this information will be useful.

3 Likes

Sorry for the late reply, This is the answer I was looking for Thank you.

Is there also a way to have the backend work for Oracle SQL instead of postgresql?

I wouldn’t think that making this change would be to complicated, but not sure exactly without trying it out.

Django supports multiple databases (oracle, mariadb, SQLite…), but Taiga uses features that only postgresql offers. You have to overwrite some features to make taiga compatible with oracle.

What am I doing wrong?
Taiga installation steps and fork.
My steps:

git clone https://github.com/kaleidos-ventures/taiga-docker
cd taiga-docker/
git clone https://github.com/kaleidos-ventures/taiga-back 
git clone https://github.com/kaleidos-ventures/taiga-front
cd taiga-back/
docker build --no-cache -f docker/Dockerfile -t taigaio/taiga-back:latest .
cd ..
cd taiga-front/
docker build --no-cache -f docker/Dockerfile -t taigaio/taiga-front:latest .
—---
cd ..
git checkout stable
./launch-taiga.sh
http://localhost:9000 

When I make changes within /docker-taiga/taiga-front/app/themes/taiga/
changing the colors for example -, I rebuild the front image again and there is no change.
Steps for rebuilding after customize:

cd taiga-front/
docker build --no-cache -f docker/Dockerfile -t taigaio/taiga-front:latest .
cd ..
git checkout stable
./launch-taiga.sh
http://localhost:9000 

@Uber_IA, taiga-front Docker image use a pre-compiled version (downloaded from taiga-front-dist) as you can see here taiga-front/docker/Dockerfile at main · kaleidos-ventures/taiga-front · GitHub So you have to modify the Docker file to use your local compiled code instead of the remote version.

1 Like

What modifications do we have to make to the docker file to use the local compiled code instead of the remote version?

Hi @sshantt

If you check the dockerfile, there is a line where the compiled source is downloaded.

You should remove that line and make the dockerfile get the source from the new place. If you’re compiling taiga-front locally, you may use the COPY instruction. Check the following lines in the dockerfile to adapt them to your usecase (I guess you are not zipping the compiled front for instance).

Cheers!