Skip to content

Commit 685690e

Browse files
rafaelctzRafael Teodoro
andauthored
Add comprehensive multi-language VitePress documentation (#3)
Features: - Complete documentation in English, Spanish, and Portuguese - VitePress static site generator with modern UI - Comprehensive guides: - Installation and quick start - Feature documentation (Alias Extractor, Attribute Injector, OU Group Sync) - FAQ and troubleshooting guides - Automatic deployment via GitHub Actions - Responsive design with search functionality - Multi-language navigation and sidebar Documentation structure: - /docs/en/ - English documentation - /docs/es/ - Spanish documentation - /docs/pt/ - Portuguese documentation Deployment: - Auto-deploys to GitHub Pages on push to main - Accessible at https://rafaelctz.github.io/GWorkspace-toolbox/ Co-authored-by: Rafael Teodoro <rafael@example.com>
1 parent 840b8cf commit 685690e

33 files changed

+6886
-0
lines changed

.github/workflows/docs-deploy.yml

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
name: Deploy Documentation
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
paths:
8+
- 'docs/**'
9+
- '.github/workflows/docs-deploy.yml'
10+
workflow_dispatch:
11+
12+
permissions:
13+
contents: read
14+
pages: write
15+
id-token: write
16+
17+
concurrency:
18+
group: pages
19+
cancel-in-progress: false
20+
21+
jobs:
22+
build:
23+
runs-on: ubuntu-latest
24+
steps:
25+
- name: Checkout
26+
uses: actions/checkout@v4
27+
with:
28+
fetch-depth: 0
29+
30+
- name: Setup Node
31+
uses: actions/setup-node@v4
32+
with:
33+
node-version: 18
34+
cache: npm
35+
cache-dependency-path: docs/package-lock.json
36+
37+
- name: Setup Pages
38+
uses: actions/configure-pages@v4
39+
40+
- name: Install dependencies
41+
working-directory: docs
42+
run: npm ci
43+
44+
- name: Build with VitePress
45+
working-directory: docs
46+
run: npm run docs:build
47+
48+
- name: Upload artifact
49+
uses: actions/upload-pages-artifact@v3
50+
with:
51+
path: docs/.vitepress/dist
52+
53+
deploy:
54+
environment:
55+
name: github-pages
56+
url: ${{ steps.deployment.outputs.page_url }}
57+
needs: build
58+
runs-on: ubuntu-latest
59+
steps:
60+
- name: Deploy to GitHub Pages
61+
id: deployment
62+
uses: actions/deploy-pages@v4

docs/.gitignore

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
node_modules
2+
.vitepress/dist
3+
.vitepress/cache
4+
.DS_Store

docs/.vitepress/config.mjs

Lines changed: 149 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,149 @@
1+
import { defineConfig } from 'vitepress'
2+
3+
export default defineConfig({
4+
title: 'GWorkspace Toolbox',
5+
description: 'Tools for Google Workspace administrators',
6+
base: '/GWorkspace-toolbox/',
7+
8+
locales: {
9+
root: {
10+
label: 'English',
11+
lang: 'en',
12+
themeConfig: {
13+
nav: [
14+
{ text: 'Home', link: '/' },
15+
{ text: 'Installation', link: '/installation' },
16+
{ text: 'Features', link: '/features' },
17+
{ text: 'FAQ', link: '/faq' }
18+
],
19+
sidebar: [
20+
{
21+
text: 'Getting Started',
22+
items: [
23+
{ text: 'Introduction', link: '/' },
24+
{ text: 'Installation', link: '/installation' },
25+
{ text: 'Quick Start', link: '/quickstart' }
26+
]
27+
},
28+
{
29+
text: 'Features',
30+
items: [
31+
{ text: 'Overview', link: '/features' },
32+
{ text: 'Alias Extractor', link: '/features/alias-extractor' },
33+
{ text: 'Attribute Injector', link: '/features/attribute-injector' },
34+
{ text: 'OU Group Sync', link: '/features/ou-group-sync' }
35+
]
36+
},
37+
{
38+
text: 'Help',
39+
items: [
40+
{ text: 'FAQ', link: '/faq' },
41+
{ text: 'Troubleshooting', link: '/troubleshooting' }
42+
]
43+
}
44+
],
45+
footer: {
46+
message: 'Released under the MIT License.',
47+
copyright: 'Copyright © 2024 GWorkspace Toolbox Contributors'
48+
}
49+
}
50+
},
51+
es: {
52+
label: 'Español',
53+
lang: 'es',
54+
link: '/es/',
55+
themeConfig: {
56+
nav: [
57+
{ text: 'Inicio', link: '/es/' },
58+
{ text: 'Instalación', link: '/es/installation' },
59+
{ text: 'Características', link: '/es/features' },
60+
{ text: 'FAQ', link: '/es/faq' }
61+
],
62+
sidebar: [
63+
{
64+
text: 'Comenzar',
65+
items: [
66+
{ text: 'Introducción', link: '/es/' },
67+
{ text: 'Instalación', link: '/es/installation' },
68+
{ text: 'Inicio Rápido', link: '/es/quickstart' }
69+
]
70+
},
71+
{
72+
text: 'Características',
73+
items: [
74+
{ text: 'Resumen', link: '/es/features' },
75+
{ text: 'Extractor de Alias', link: '/es/features/alias-extractor' },
76+
{ text: 'Inyector de Atributos', link: '/es/features/attribute-injector' },
77+
{ text: 'Sincronización de Grupos OU', link: '/es/features/ou-group-sync' }
78+
]
79+
},
80+
{
81+
text: 'Ayuda',
82+
items: [
83+
{ text: 'FAQ', link: '/es/faq' },
84+
{ text: 'Solución de Problemas', link: '/es/troubleshooting' }
85+
]
86+
}
87+
],
88+
footer: {
89+
message: 'Publicado bajo la Licencia MIT.',
90+
copyright: 'Copyright © 2024 Colaboradores de GWorkspace Toolbox'
91+
}
92+
}
93+
},
94+
pt: {
95+
label: 'Português',
96+
lang: 'pt',
97+
link: '/pt/',
98+
themeConfig: {
99+
nav: [
100+
{ text: 'Início', link: '/pt/' },
101+
{ text: 'Instalação', link: '/pt/installation' },
102+
{ text: 'Recursos', link: '/pt/features' },
103+
{ text: 'FAQ', link: '/pt/faq' }
104+
],
105+
sidebar: [
106+
{
107+
text: 'Primeiros Passos',
108+
items: [
109+
{ text: 'Introdução', link: '/pt/' },
110+
{ text: 'Instalação', link: '/pt/installation' },
111+
{ text: 'Início Rápido', link: '/pt/quickstart' }
112+
]
113+
},
114+
{
115+
text: 'Recursos',
116+
items: [
117+
{ text: 'Visão Geral', link: '/pt/features' },
118+
{ text: 'Extrator de Alias', link: '/pt/features/alias-extractor' },
119+
{ text: 'Injetor de Atributos', link: '/pt/features/attribute-injector' },
120+
{ text: 'Sincronização de Grupos OU', link: '/pt/features/ou-group-sync' }
121+
]
122+
},
123+
{
124+
text: 'Ajuda',
125+
items: [
126+
{ text: 'FAQ', link: '/pt/faq' },
127+
{ text: 'Solução de Problemas', link: '/pt/troubleshooting' }
128+
]
129+
}
130+
],
131+
footer: {
132+
message: 'Lançado sob a Licença MIT.',
133+
copyright: 'Copyright © 2024 Colaboradores do GWorkspace Toolbox'
134+
}
135+
}
136+
}
137+
},
138+
139+
themeConfig: {
140+
logo: '/logo.svg',
141+
siteTitle: 'GWorkspace Toolbox',
142+
socialLinks: [
143+
{ icon: 'github', link: 'https://github.com/rafaelctz/GWorkspace-toolbox' }
144+
],
145+
search: {
146+
provider: 'local'
147+
}
148+
}
149+
})

docs/es/faq.md

Lines changed: 147 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,147 @@
1+
# Preguntas Frecuentes
2+
3+
Preguntas y respuestas comunes sobre GWorkspace Toolbox.
4+
5+
## General
6+
7+
### ¿Qué es GWorkspace Toolbox?
8+
9+
GWorkspace Toolbox es un conjunto gratuito y de código abierto de herramientas diseñado para ayudar a los administradores de Google Workspace a automatizar tareas administrativas comunes como gestionar alias de correo, atributos de usuario y membresías de grupos.
10+
11+
### ¿Es gratuito GWorkspace Toolbox?
12+
13+
Sí, GWorkspace Toolbox es completamente gratuito y de código abierto bajo la Licencia MIT. No hay características premium ni niveles pagos.
14+
15+
### ¿Qué edición de Google Workspace necesito?
16+
17+
GWorkspace Toolbox funciona con todas las ediciones de Google Workspace (Business Starter, Business Standard, Business Plus, Enterprise) siempre que tengas acceso de administrador.
18+
19+
### ¿Puedo usar esto con una cuenta de Gmail gratuita?
20+
21+
No, GWorkspace Toolbox requiere un dominio de Google Workspace (anteriormente G Suite) con acceso de administrador. Usa el Admin SDK API que no está disponible para cuentas personales de Gmail.
22+
23+
## Instalación y Configuración
24+
25+
### ¿Necesito habilidades técnicas para instalar GWorkspace Toolbox?
26+
27+
Familiaridad básica con Docker y línea de comandos es útil, pero la instalación es sencilla. Sigue la [Guía de Instalación](/es/installation) paso a paso.
28+
29+
### ¿Puedo ejecutar esto en Windows?
30+
31+
Sí, GWorkspace Toolbox se ejecuta en Windows, macOS y Linux usando Docker Desktop.
32+
33+
### ¿Necesito un servidor para ejecutar GWorkspace Toolbox?
34+
35+
No, puedes ejecutarlo en tu computadora local. Sin embargo, para que las sincronizaciones programadas funcionen continuamente, necesitarás una máquina que permanezca encendida (servidor local, VPS o instancia en la nube).
36+
37+
### ¿Qué puertos usa GWorkspace Toolbox?
38+
39+
Por defecto, usa el puerto 8000. Puedes cambiarlo en el archivo `docker-compose.yml` si es necesario.
40+
41+
### ¿Dónde se almacenan mis datos?
42+
43+
Todos los datos se almacenan localmente:
44+
- Tokens de autenticación: archivo `token.json`
45+
- Programaciones de sincronización: base de datos SQLite en directorio `./database`
46+
- Exportaciones CSV: directorio `./exports`
47+
48+
No se envían datos a servidores externos excepto las APIs de Google.
49+
50+
## Autenticación y Seguridad
51+
52+
### ¿Están seguros mis datos de Google Workspace?
53+
54+
Sí. GWorkspace Toolbox usa autenticación OAuth 2.0 y solo solicita los permisos mínimos requeridos. Tus credenciales se almacenan localmente y nunca se transmiten a terceros.
55+
56+
### ¿Qué permisos necesita GWorkspace Toolbox?
57+
58+
La herramienta solicita:
59+
- Acceso de lectura a usuarios del directorio (para Extractor de Alias, Sincronización de Grupos OU)
60+
- Acceso de escritura a usuarios del directorio (para Inyector de Atributos)
61+
- Gestionar grupos (para Sincronización de Grupos OU)
62+
63+
### ¿Puedo revocar el acceso?
64+
65+
Sí, puedes revocar el acceso en cualquier momento:
66+
1. Ve a [Permisos de Cuenta de Google](https://myaccount.google.com/permissions)
67+
2. Encuentra GWorkspace Toolbox
68+
3. Haz clic en "Eliminar Acceso"
69+
70+
### ¿Necesito ser superadministrador?
71+
72+
Sí, la mayoría de las características requieren privilegios de superadministrador. Algunas características pueden funcionar con roles de administrador delegado que tengan permisos apropiados.
73+
74+
## Características
75+
76+
### ¿Puede el Extractor de Alias exportar alias solo para OUs específicas?
77+
78+
Actualmente, el Extractor de Alias exporta alias para todos los usuarios en el dominio. Puedes filtrar el archivo CSV después por dirección de correo principal para obtener usuarios de OUs específicas.
79+
80+
### ¿Funciona el Inyector de Atributos con campos estándar de Google?
81+
82+
No, el Inyector de Atributos solo funciona con atributos de esquema personalizado. Los campos estándar como nombre, teléfono o título de trabajo deben gestionarse a través de Admin Console.
83+
84+
### ¿Puedo sincronizar múltiples OUs a un grupo?
85+
86+
Sí, puedes crear múltiples trabajos de sincronización que todos apunten al mismo grupo. Usa el modo de Sincronización Inteligente para asegurar que los usuarios de todas las OUs se agreguen sin eliminarse entre sí.
87+
88+
## Solución de Problemas
89+
90+
### La aplicación no inicia
91+
92+
Verifica:
93+
1. Docker está ejecutándose: `docker ps`
94+
2. El puerto 8000 no está en uso por otra aplicación
95+
3. El archivo Docker Compose está presente
96+
4. Ejecuta `docker-compose logs` para ver mensajes de error
97+
98+
### No puedo autenticarme
99+
100+
Asegúrate de que:
101+
1. El archivo credentials.json esté en el directorio del proyecto
102+
2. El URI de redirección del cliente OAuth incluye `http://localhost:8000/oauth2callback`
103+
3. Admin SDK API esté habilitado en Google Cloud Console
104+
4. Estés usando una cuenta de administrador
105+
106+
### Las sincronizaciones programadas no se están ejecutando
107+
108+
Verifica:
109+
1. El contenedor Docker está ejecutándose: `docker ps`
110+
2. La programación está habilitada en la UI
111+
3. El volumen de base de datos está persistido (verifica docker-compose.yml)
112+
4. Verifica los logs para errores: `docker-compose logs -f app`
113+
114+
## Actualizaciones y Mantenimiento
115+
116+
### ¿Cómo actualizo GWorkspace Toolbox?
117+
118+
Si usas Watchtower (incluido en docker-compose.yml), las actualizaciones son automáticas. Actualización manual:
119+
120+
```bash
121+
docker-compose pull
122+
docker-compose up -d
123+
```
124+
125+
### ¿Con qué frecuencia se actualiza GWorkspace Toolbox?
126+
127+
Las actualizaciones se lanzan según sea necesario para correcciones de errores, parches de seguridad y nuevas características. Consulta [GitHub Releases](https://github.com/rafaelctz/GWorkspace-toolbox/releases) para el registro de cambios.
128+
129+
## Contribución
130+
131+
### ¿Puedo contribuir a GWorkspace Toolbox?
132+
133+
¡Sí! GWorkspace Toolbox es de código abierto. Consulta la [Guía de Contribución](https://github.com/rafaelctz/GWorkspace-toolbox/blob/main/CONTRIBUTING.md) para detalles.
134+
135+
### Encontré un error, ¿cómo lo reporto?
136+
137+
Por favor abre un issue en [GitHub Issues](https://github.com/rafaelctz/GWorkspace-toolbox/issues) con:
138+
- Descripción del problema
139+
- Pasos para reproducir
140+
- Comportamiento esperado vs real
141+
- Salida de log si es aplicable
142+
143+
## ¿Todavía Tienes Preguntas?
144+
145+
- Consulta la [Guía de Solución de Problemas](/es/troubleshooting)
146+
- Busca en [GitHub Issues](https://github.com/rafaelctz/GWorkspace-toolbox/issues)
147+
- Abre un nuevo issue si tu pregunta no está respondida

0 commit comments

Comments
 (0)