Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
121 changes: 32 additions & 89 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,111 +1,54 @@
Team Toolbox Application
========================
Team Toolbox Next (Vue + Vuetify)
=================================

Requirements
------------
Cette branche introduit une nouvelle version frontale de Team Toolbox, orientée
collaboration manager/équipe, avec une expérience inspirée d’un fil de discussion
(type réseau social interne) et des espaces d’échanges plus formels.

* PHP 8.2 or higher;
* PDO-SQLite PHP extension enabled;
* and the [usual Symfony application requirements][2].
* NPM 19.9.0
* Composer 2.5.8
Fonctionnalités principales
---------------------------

Installation
------------
- Fil d’actualité d’équipe (messages quotidiens, formels, alertes) ;
- Publication rapide d’un message ;
- Réactions (likes) et commentaires ;
- Filtres par canal + recherche ;
- Espace “échanges formels” pour stocker des comptes-rendus, décisions et actions ;
- Persistance locale (localStorage) pour conserver le contexte d’équipe.

```bash
$ cd my_project/
$ composer install
$ npm install
$ npm run build
```

Usage
-----

There's no need to configure anything to run the application. If you have
[installed Symfony][4] binary, run this command:

```bash
$ cd my_project/
$ symfony serve
```

Then access the application in your browser at the given URL (<https://localhost:8000> by default).

If you don't have the Symfony binary installed, run `php -S localhost:8000 -t public/`
to use the built-in PHP web server or [configure a web server][3] like Nginx or
Apache to run the application.

Connect to application using admin account.
Login : admin
Password : admin

Tests
-----

Execute this command to run tests:

```bash
$ cd my_project/
$ ./bin/phpunit
```

Deploy with Docker Compose
--------------------------

A `docker-compose.yml` file is provided to simplify Docker deployment.

Start the application:

```bash
$ docker compose up -d --build
```
L’application est volontairement plus compacte que l’ancienne version, afin de
fournir un socle clair et moderne facilement extensible.

Stop the application:
Lancer en local (sans Docker)
-----------------------------

```bash
$ docker compose down
cd frontend-vue
npm install
npm run dev
```

The application is available at <http://localhost:8080> and the SQLite data
is persisted in the Docker volume `teamtoolbox_data` (pre-seeded from the image
on first start, which keeps the default `admin/admin` account available).
Application disponible sur <http://localhost:5173>.

Utilisation via Docker Compose
------------------------------

If needed, reset persisted data with:
Un `docker-compose.yml` minimal est fourni pour lancer uniquement le nouveau front.

```bash
$ docker compose down -v
docker compose up --build
```

Application disponible sur <http://localhost:5173>.

If you migrated from a previous Compose setup and still hit a login error, recreate
volumes so the writable database is re-initialized:
Arrêter:

```bash
$ docker compose down -v
$ docker compose up -d --build
docker compose down
```

View logs from inside the container
-----------------------------------
Structure
---------

To inspect application logs (e.g. to debug a 500 error), connect to the running
container and read the Symfony log files:
- `frontend-vue/`: nouvelle application Vue 3 + Vuetify (Vite)
- `docker-compose.yml`: exécution simple du front dans un conteneur Node

```bash
# Open a shell in the container
$ docker compose exec app bash

# Then inside the container, view the latest logs
$ tail -f /var/www/html/var/log/prod.log
# or for a one-shot view
$ cat /var/www/html/var/log/prod.log
```

To run a single command without entering the container:

```bash
$ docker compose exec app tail -100 /var/www/html/var/log/prod.log
```
18 changes: 7 additions & 11 deletions docker-compose.yml
Original file line number Diff line number Diff line change
@@ -1,15 +1,11 @@
services:
app:
build:
context: .
dockerfile: Dockerfile
image: teamtoolboxorganization/teamtoolbox:latest
container_name: teamtoolbox
frontend:
image: node:20-alpine
container_name: teamtoolbox_frontend_vue
working_dir: /app
command: sh -c "npm install && npm run dev"
ports:
- "8080:80"
- "5173:5173"
volumes:
- teamtoolbox_data:/var/www/html/data
- ./frontend-vue:/app
restart: unless-stopped

volumes:
teamtoolbox_data:
3 changes: 3 additions & 0 deletions frontend-vue/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
node_modules/
dist/
.vite/
12 changes: 12 additions & 0 deletions frontend-vue/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
<!doctype html>
<html lang="fr">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>TeamToolbox Vue</title>
</head>
<body>
<div id="app"></div>
<script type="module" src="/src/main.js"></script>
</body>
</html>
Loading